Está en la página 1de 1325

Cat. No.

W340-ES2-11

Variablen: Vor Druckbeginn bitte entfernen!!!

Autmatas programables
Serie SYSMAC CS
Serie SYSMAC CJ

MANUAL DE REFERENCIA DE INSTRUCCIONES

Informacin general
1 Introduccin
15 Resumen de instrucciones
141 Instrucciones
1219 Tiempos de ejecucin de
instruccin y nmero de pasos

Advanced Industrial Automation


SYSMAC serie CS
CS1G/H-CPU@@-EV1
CS1G/H-CPU@@H
CS1D-CPU@@H
CS1D-CPU@@S
SYSMAC serie CJ
CJ1G-CPU@@
CJ1G/H-CPU@@H
CJ1G-CPU@@P
CJ1M-CPU@@
Autmatas programables
Manual de referencia de instrucciones
Revisado en julio de 2004
Nota:
Los productos OMRON se fabrican para su uso conforme a procedimientos
adecuados, por un operador cualificado, y slo para el fin descrito en este
manual.
Las convenciones que aparecen a continuacin se utilizan para indicar y cla-
sificar las precauciones indicadas en el presente manual. Preste atencin
siempre a la informacin que aparece en ellas. Su incumplimiento podra con-
llevar lesiones fsicas o daos materiales.

! PELIGRO Indica una situacin de peligro inmediato que, de no evitarse, puede ocasionar la muerte
o lesiones graves.

! ADVERTENCIA Indica una situacin de peligro potencial que, de no evitarse, puede ocasionar la
muerte o lesiones graves.

! Precaucin Indica una situacin potencialmente peligrosa que, de no evitarse, puede ocasionar lesio-
nes fsicas o daos materiales menores o moderados.

Referencias de productos OMRON


Todos los productos OMRON aparecen en maysculas en este manual. La
palabra Unidad (en singular o en plural) tambin aparece en maysculas
cuando hace referencia a un producto OMRON, independientemente de si se
indica o no en el nombre especfico del producto.
La abreviatura Ch, que aparece en algunas pantallas y en algunos produc-
tos OMRON, significa normalmente palabra, que tambin se abrevia como
Wd en la documentacin.
La abreviatura PLC significa Controlador lgico programable. No obstante,
en las pantallas de algunos dispositivos de programacin se utiliza PC.

Ayudas visuales
En la columna izquierda del manual aparecen los siguientes encabezados
para ayudar en la localizacin de los diferentes tipos de informacin.
Nota Indica informacin de inters especial para un eficaz y adecuado funciona-
miento del producto.

1,2,3... 1. Ofrece listas de diferentes clases, como por ejemplo, procedimientos, lis-
tas de comprobacin, etc.

OMRON, 1999
Reservados todos los derechos. Se prohbe la reproduccin, almacenamiento en sistemas de recuperacin o transmisin total
o parcial, por cualquier forma o medio (mecnico, electrnico, fotocopiado, grabacin u otros) sin la previa autorizacin por
escrito de OMRON.
No se asume responsabilidad alguna con respecto al uso de la informacin contenida en el presente manual. Asimismo, dado
que OMRON mantiene una poltica de constante mejora de sus productos de alta calidad, la informacin contenida en el pre-
sente manual est sujeta a modificaciones sin previo aviso. En la preparacin de este manual se han adoptado todas las pre-
cauciones posibles. No obstante, OMRON no se hace responsable de ningn error u omisin. Tampoco se hace responsable de
los posibles daos resultantes del uso de la informacin contenida en esta publicacin.

v
Versiones de las CPUs de las series CS/CJ
Versiones de Se ha incluido una versin de unidad para gestionar las CPUs de las series
CS/CJ segn las diferencias de funcionalidad inherentes a las actualizacio-
unidad nes de las unidades. Esto ser aplicable a las CPUs CS1-H, CJ1-H, CJ1M y
CS1D.
Notacin de versiones de La versin de la unidad aparece a la derecha del nmero de lote, en la placa
unidad en los productos del nombre de los productos cuyos nmeros de unidad se gestionan, como
se indica a continuacin.
CPUs de las series CS/CJ Placa de nombre de producto

CS1H-CPU67H

CPU

N de lote Versin de unidad


Ejemplo para versin
de unidad 3.0

Lot No. 040715 0000 Ver. 3.0

OMRON Corporation MADE IN JAPAN

Las CPUs CS1-H, CJ1-H y CJ1M (con la excepcin de los modelos de


gama baja) fabricadas como ms tardar el 4 de noviembre de 2003 no
incluyen la versin de unidad en la CPU (es decir, la posicin en la que se
indica la versin de unidad, tal y como aparece en la imagen, est en
blanco).
La versin de unidad de las CPUs CS1-H, CJ1-H y CJ1M, as como de
las CPUs CS1D para sistemas de CPU individual, comienza a partir de la
2.0.
La versin de unidad de las CPUs CS1D para sistemas de CPU doble
comienza a partir de la 1.1.
Las CPUs cuya versin de unidad no se indica se denominan CPUs Pre-
Ver. @.@, como por ejemplo CPUs Pre-Ver. 2.0 y CPUs Pre-Ver. 1.1.
Confirmacin de las Se puede utilizar CX-Programmer versin 4.0 para confirmar la versin de la
versiones de unidad con unidad, utilizando cualquiera de los dos siguientes mtodos.
el software auxiliar
Mediante PLC Information (Informacin de PLC)
Mediante Unit Manufacturing Information (Informacin de fabrica-
cin de la unidad) (Este mtodo es aplicable asimismo a las unidades
de E/S especiales y a las unidades de bus de CPU.)
Nota No ser posible confirmar las versiones de unidad con CX-Programmer ver-
sin 3.3 o anterior.
Informacin del PLC
Si conoce el tipo de dispositivo y de CPU, seleccinelos en el cuadro de
dilogo Change PLC (Cambiar PLC), conctese y, a continuacin, selec-
cione PLC Edit (Edicin) Information (Informacin) en los mens.
Si desconoce el tipo de dispositivo y de CPU, pero est conectado a sta
a travs de una lnea serie, seleccione PLC - Auto Online (Auto en
lnea) para conectarse y, a continuacin, seleccione PLC - Edit (Edicin)
- Information (Informacin) en los mens.
En uno u otro caso, aparecer el siguiente cuadro de dilogo PLC Information
(Informacin del PLC).

vi
Versin de unidad

Confirme en la pantalla anterior la versin de la CPU.


Informacin de fabricacin de la unidad
En la ventana IO Table (Tabla de E/S), haga clic con el botn secundario del
ratn y seleccione Unit Manufacturing Information (Informacin de fabri-
cacin de la unidad) - CPU Unit (CPU).

De este modo se abrir el cuadro de dilogo Unit Manufacturing Information


(Informacin de fabricacin de la unidad), como el que puede verse a conti-
nuacin.

vii
Versin de unidad

Confirme en la pantalla anterior la versin de la CPU conectada en lnea.


Uso de las etiquetas de La CPU incluye las siguientes etiquetas de versin de unidad.
versin de unidad

Ver. 3.0 Ver.

Ver. 3.0 Ver.

These Labels can be used


to manage differencies in
the available functions
among the Units.
Place the appropriate label
on the front of the Unit to
show what Unit version is
actually being used.

Estas etiquetas pueden pegarse en la parte delantera de las antiguas CPU


para diferenciar las unidades de distintas versiones.

viii
Notacin de la En el presente manual, la versin de unidad de una CPU se indica tal y como
versin de unidad puede verse en la siguiente tabla.
Placa de nombre de CPUs en las que no se indica la versin Unidades en las que se indica la versin
producto de unidad (Ver. @.@)

N de lote: XXXXXX XXXX N de lote: XXXXXX XXXX Ver. @ .@

OMRON Corporation MADE IN JAPAN

Significado
Indica CPUs individuales CPUs CJ1M Pre-Ver. 2.0 CPU CS1H-CPU67H Ver. @.@
(por ejemplo, CS1H-
CPU67H)
Indica grupos de CPUs Anteriores a Ver. 2.0 CPUs CS1-H CPU CS1-H s Ver. @.@
(por ejemplo, CPUs
CS1-H)
Indica una serie ntegra CPUs serie CS Pre-Ver. 2.0 CPUs serie CS Ver. @.@
de CPUs (por ejemplo,
las CPUs de la serie CS)

ix
Versiones de unidad y nmeros de lote
Serie Modelo Fecha de fabricacin
Antes Sept. 2003 Oct. 2003 Nov. 2003 Dic. 2003 Jun. 2004 Despus
Serie CPUs CS1 CS1@-
CS CPU@@
No indica versin de
unidad

CPUs CS1-V1 CS1@-


CPU@@-V1
No indica versin de
unidad

CPUs CS1-H CS1@-


CPU@@H
CPUs Ver.
CPUs Ver. 2.0 3.0 (N de lote:
CPUs anteriores a Ver. 2.0 (N de lote: 031105 en adelante) 040622 en
adelante)

CS1D CPUs CS1D-


CPUs para sis- CPU@@H
temas de CPUs Ver. 1.1
CPUs anteriores a Ver. 1.1
CPU (N de lote: 031120 en adelante)
doble
CPUs CS1D-
para sis- CPU@@S
temas de CPUs Ver. 2.0
CPU (N de lote: 031215 en adelante)
individual
Serie CPUs CJ1 CJ1G-
CJ CPU@@
CPUs anteriores a
Ver. 2.0

CPUs CJ1-H CJ1@-


CPU@@H
CPUs Ver. 2.0 CPUs Ver. 3.0
(N de lote: 031105 en adelante) (N de lote:
CPUs anteriores a Ver. 2.0
040623 en
adelante)

CPUs CJ1M CJ1M-


(excepto los mode- CPU@@
los de gama baja) CPUs Ver. 3.0
CPUs Ver. 2.0 (N de lote:
CPUs anteriores a Ver. 2.0
(N de lote: 031105 en adelante) 040624 en
adelante)

CPUs CJ1M , CJ1M-


modelos de gama CPU11/21
baja CPUs Ver. 3.0
CPUs Ver. 2.0 (N de lote:
(N de lote: 031002 en adelante) 040629 en
adelante)

Soft- CX-Programmer WS02-


ware CXPC1-
de pro- EV@ Ver. 3.2 Ver. 3.3 Ver. 4.0 Ver. 5.0
grama-
cin

x
Funciones compatibles por versin de unidad
CPUs CS1-H (CS1@-CPU@@H)
Funcin Versin de unidad
CPUs anteriores a CPUs Ver. 2.0
Ver. 2.0
Carga y descarga de tareas individuales --- Aceptar
Mejora de la proteccin de lectura mediante contraseas --- Aceptar
Proteccin contra escritura de comandos FINS enviados a las CPUs --- Aceptar
a travs de redes
Conexiones de red online sin necesidad de tablas de E/S --- Aceptar
Comunicaciones a travs de un mximo de 8 niveles de red --- Aceptar
Conexin online a PLC a travs de PT serie NS S, desde el n de lote Aceptar
030201 en adelante
Configuracin de los primeros canales de ranura S, para un mximo de S, para un mximo de
8 grupos 64 grupos
Transferencias automticas al conectar la alimentacin sin un archivo --- Aceptar
de parmetros
Deteccin automtica del mtodo de asignacin de E/S para la trans- --- ---
ferencia automtica al conectar la alimentacin
Nmero de operaciones de inicio/fin de funcionamiento --- Aceptar
Nuevas MILH, MILR, MILC --- Aceptar
instrucciones de =DT, <>DT, <DT, <=DT, >DT, >=DT --- Aceptar
aplicacin
BCMP2 --- Aceptar
GRY S, desde el n de lote Aceptar
030201 en adelante
TPO --- Aceptar
DSW, TKY, HKY, MTR, 7SEG --- Aceptar
EXPLT, EGATR, ESATR, ECHRD, ECHWR --- Aceptar
Lectura/escritura de unidades de bus de CPU con S, desde el n de lote Aceptar
instrucciones IORD/IOWR 030418 en adelante
PRV2 --- ---

xi
CPUs CS1D
Funcin CPUs CS1D para sistemas de CPU doble CPUs CS1D para
(CS1D-CPU@@H) sistemas de CPU
individual
(CS1D-CPU@@S)
CPUs anteriores a CPU Ver. 1.1 CPU Ver. 2.0
Ver. 1.1
Funciones CPUs dobles Aceptar Aceptar ---
exclusivas de Sustitucin de unidad en lnea Aceptar Aceptar Aceptar
las CPUs
CS1D Unidades de fuente de alimenta- Aceptar Aceptar Aceptar
cin doble
Unidades Controller Link dobles Aceptar Aceptar Aceptar
Unidades Ethernet dobles --- Aceptar Aceptar
Carga y descarga de tareas individuales --- --- Aceptar
Mejora de la proteccin de lectura mediante con- --- --- Aceptar
traseas
Proteccin contra escritura de comandos FINS --- --- Aceptar
enviados a las CPUs a travs de redes
Conexiones de red online sin necesidad de tablas --- --- Aceptar
de E/S
Comunicaciones a travs de un mximo de 8 --- --- Aceptar
niveles de red
Conexin online a PLC a travs de PT serie NS --- --- Aceptar
Configuracin de los primeros canales de ranura --- --- S, para un mximo de
64 grupos
Transferencias automticas al conectar la alimen- --- --- Aceptar
tacin sin un archivo de parmetros
Deteccin automtica del mtodo de asignacin --- --- ---
de E/S para la transferencia automtica al
conectar la alimentacin
Nmero de operaciones de inicio/fin de --- Aceptar Aceptar
funcionamiento
Nuevas MILH, MILR, MILC --- --- Aceptar
instrucciones =DT, <>DT, <DT, <=DT, >DT, --- --- Aceptar
de aplicacin >=DT
BCMP2 --- --- Aceptar
GRY --- --- Aceptar
TPO --- --- Aceptar
DSW, TKY, HKY, MTR, 7SEG --- --- Aceptar
EXPLT, EGATR, ESATR, --- --- Aceptar
ECHRD, ECHWR
Lectura/escritura de unidades de --- --- Aceptar
bus de CPU con instrucciones
IORD/IOWR
PRV2 --- --- ---

xii
CPUs CJ1-H/CJ1M
Funcin CPUs CJ1-H CPUs CJ1M, excepto los mode- CPUs CJ1M,
(CJ1@-CPU@@H) los de gama baja modelos de
(CJ1M-CPU@@) gama baja
(CJ1M-
CPU11/21)
CPUs anterio- CPUs Ver. 2.0 CPUs anterio- CPUs Ver. 2.0 CPUs Ver. 2.0
res a Ver. 2.0 res a Ver. 2.0
Carga y descarga de tareas --- Aceptar --- Aceptar Aceptar
individuales
Mejora de la proteccin de --- Aceptar --- Aceptar Aceptar
lectura mediante contraseas
Proteccin contra escritura de --- Aceptar --- Aceptar Aceptar
comandos FINS enviados a las
CPUs a travs de redes
Conexiones de red online sin S, pero slo si Aceptar S, pero slo si Aceptar Aceptar
necesidad de tablas de E/S se asignan las se asignan las
tablas de E/S al tablas de E/S al
conectar la conectar la
alimentacin alimentacin
Comunicaciones a travs de un S, para un S, para un S, para un S, para un S, para un
mximo de 8 niveles de red mximo de mximo de mximo de mximo de mximo de
8 grupos 64 grupos 8 grupos 64 grupos 64 grupos
Conexin online a PLC a travs S, desde el n Aceptar S, desde el n Aceptar Aceptar
de PT serie NS de lote 030201 de lote 030201
en adelante en adelante
Configuracin de los primeros --- Aceptar --- Aceptar Aceptar
canales de ranura
Transferencias automticas al --- Aceptar --- Aceptar Aceptar
conectar la alimentacin sin un
archivo de parmetros
Deteccin automtica del --- Aceptar --- Aceptar Aceptar
mtodo de asignacin de E/S
para la transferencia autom-
tica al conectar la alimentacin
Nmero de operaciones de ini- --- Aceptar --- Aceptar Aceptar
cio/fin de funcionamiento
Nuevas MILH, MILR, MILC --- Aceptar --- Aceptar Aceptar
instruccio- =DT, <>DT, <DT, --- Aceptar --- Aceptar Aceptar
nes de <=DT, >DT, >=DT
aplicacin
BCMP2 --- Aceptar Aceptar Aceptar Aceptar
GRY S, desde el n Aceptar S, desde el n Aceptar Aceptar
de lote 030201 de lote 030201
en adelante en adelante
TPO --- Aceptar --- Aceptar Aceptar
DSW, TKY, HKY, --- Aceptar --- Aceptar Aceptar
MTR, 7SEG
EXPLT, EGATR, --- Aceptar --- Aceptar Aceptar
ESATR, ECHRD,
ECHWR
Lectura/escritura --- Aceptar --- Aceptar Aceptar
de unidades de bus
de CPU con
instrucciones
IORD/IOWR
PRV2 --- --- --- S, aunque slo S, aunque slo
en modelos con en modelos con
E/S incorporada E/S incorporada

xiii
Funciones admitidas por las versiones de unidad 3.0 o superior
CPUs CS1-H (CS1@-CPU@@H)
Funcin Versin de unidad
Anteriores a Ver. 2.0, Ver. 3.0
Ver. 2.0
Bloques de funciones (compatibles con CX-Programmer Ver. 5.0 o --- Aceptar
posterior)
Gateway serie (convierte los comandos FINS en comandos --- Aceptar
CompoWay/F en el puerto serie incorporado)
Memoria de comentarios (en la memoria flash interna) --- Aceptar
Datos ampliados de copias de seguridad sencillas --- Aceptar
Nuevas TXDU(256), RXDU(255) (admite comunicaciones --- Aceptar
instrucciones de sin protocolo con las unidades de comunicaciones
aplicacin serie ver. 1.2 o superior)
Instrucciones de conversin de modelo: --- Aceptar
XFERC(565), DISTC(566), COLLC(567),
MOVBC(568), BCNTC(621)
Instrucciones especiales de bloque de funciones: --- Aceptar
GETID(286)
Funciones de Instrucciones TXD(235) y RXD(236) (admite comu- --- Aceptar
instrucciones nicaciones sin protocolo con las tarjetas de comuni-
adicionales caciones serie de las versiones 1.2 o superior)

CPUs CS1D La versin de unidad 3.0 es incompatible.


CPUs CJ1-H/CJ1M (CJ1@-CPU@@H, CJ1G-CPU@@P, CJ1M-CPU@@)
Funcin Versin de unidad
Anteriores a Ver. 2.0, Ver. 3.0
Ver. 2.0
Bloques de funciones (compatibles con CX-Programmer Ver. 5.0 o --- Aceptar
posterior)
Gateway serie (convierte los comandos FINS en comandos --- Aceptar
CompoWay/F en el puerto serie incorporado)
Memoria de comentarios (en la memoria flash interna) --- Aceptar
Datos ampliados de copias de seguridad sencillas --- Aceptar
Nuevas TXDU(256), RXDU(255) (admite comunicaciones --- Aceptar
instrucciones de sin protocolo con las unidades de comunicaciones
aplicacin serie ver. 1.2 o superior)
Instrucciones de conversin de modelo: --- Aceptar
XFERC(565), DISTC(566), COLLC(567),
MOVBC(568), BCNTC(621)
Instrucciones especiales de bloque de funciones: --- Aceptar
GETID(286)
Funciones de Instrucciones PRV(881) y PRV2(883): adicin de --- Aceptar
instrucciones mtodos de clculo de alta frecuencia para el cl-
adicionales culo de frecuencia de impulsos: (slo CPUs CJ1M)

xiv
Versiones de unidad y dispositivos de programacin
Para activar las funciones incorporadas en las CPUs Ver. 2.0, se requiere CX-
Programmer versin 4.0 o superior.
Para activar los bloques de funciones aadidos a las CPUs Ver. 3.0, se
requiere CX-Programmer versin 5.0 o superior.
Las siguientes tablas muestran la relacin entre las versiones de unidad y las
versiones de CX-Programmer.
Versiones de unidad y dispositivos de programacin
CPU Functions (Funciones) CX-Programmer Consola
Ver. 3.2 o Ver. 3.3 Ver. 4.0 Ver. 5.0 o de progra-
anterior superior macin
CPUs CJ1M, Funciones Utiliza las nuevas --- --- Aceptar Aceptar Sin restric-
modelos de gama agregadas a la funciones ciones
baja, versin de versin de No utiliza las nuevas --- Aceptar Aceptar Aceptar
unidad 2.0 unidad 2.0 funciones
CPUs CS1-H, Funciones Utiliza las nuevas --- --- Aceptar Aceptar
CJ1-H y CJ1M agregadas a la funciones
excepto modelos versin de No utiliza las nuevas Aceptar Aceptar Aceptar Aceptar
de gama baja, unidad 2.0 funciones
versin de unidad
2.0
CPUs CS1D para Funciones Utiliza las nuevas --- --- Aceptar Aceptar
sistemas de CPU agregadas a la funciones
individual, versin versin de No utiliza las nuevas Aceptar
de unidad 2.0 unidad 2.0 funciones
CPUs CS1D para Funciones Utiliza las nuevas --- --- Aceptar Aceptar
sistemas de CPU agregadas a la funciones
doble, versin de versin de No utiliza las nuevas Aceptar Aceptar Aceptar Aceptar
unidad 1. unidad 1.1 funciones
CPUs series Adicin de Utiliza bloques de --- --- --- Aceptar
CS/CJ, Ver. 3.0 funciones de funciones
bloques de No utiliza bloques de Aceptar Aceptar Aceptar Aceptar
funciones a la funciones
versin de
unidad 3.0

Nota Como puede apreciarse, no es necesario actualizar CX-Programmer a la ver-


sin 4.0, siempre y cuando no se utilicen las funciones aadidas para las ver-
siones de unidad 2.0 1.1.
Configuracin de tipo de La versin de unidad no afecta a la configuracin de tipo de dispositivo reali-
dispositivo zada en CX-Programmer. Seleccione el tipo de dispositivo tal y como se
indica en la siguiente tabla, independientemente de la versin de la CPU.
Serie Grupo de CPUs Modelo de CPU Configuracin de tipo de dispositivo
en
CX-Programmer Ver. 4.0 o superior
Serie CS CPUs CS1-H CS1G-CPU@@H CS1G-H
CS1H-CPU@@H CS1H-H
CPUs CS1D para sistemas de CPU doble CS1D-CPU@@H CS1D-H (o CS1H-H)
CPUs CS1D para sistemas de CPU individual CS1D-CPU@@S CS1D-S
Serie CJ CPUs CJ1-H CJ1G-CPU@@H CJ1G-H
CJ1H-CPU@@H CJ1H-H
CPUs CJ1M CJ1M-CPU@@ CJ1M

xv
Solucin de problemas de versiones de unidad en CX-Programmer
Problema Causa Solucin
Se ha intentado utilizar CX-Pro- Verifique el programa, o bien
grammer versin 4.0 o superior sustituya la CPU que intenta
para descargar en CPUs Pre-Ver. descargar por una CPU Ver.
2.0 un programa que contiene 2.0 o posterior.
instrucciones slo compatibles
con CPUs Ver. 2.0.
Tras aparecer el mensaje anterior, se mostrar un
mensaje de error de compilacin en la ficha Compile
(Compilar) de la ventana Output (Salida).
Se ha intentado utilizar CX-Pro- Verifique los parmetros de
grammer versin 4.0 o superior configuracin del PLC, o bien
para descargar en CPUs Pre-Ver. sustituya la CPU que intenta
2.0 una configuracin de PLC descargar por una CPU Ver.
que contiene configuraciones 2.0 o posterior.
slo compatibles con CPUs Ver.
2.0. (es decir, no configuradas en
sus valores predeterminados).
???? aparece en un programa que se est transfi- Se ha utilizado CX-Programmer Las nuevas instrucciones no
riendo desde el PLC a CX-Programmer. versin 3.3 o anterior para cargar se pueden cargar con CX-Pro-
desde una CPU Ver. 2.0 o poste- grammer versin 3.3 o ante-
rior un programa que contiene rior. Utilice CX-Programmer
instrucciones compatibles slo versin 4.0 o posterior.
con CPUs Ver. 2.0 posterior.

xvi
TABLA DE CONTENIDO
PRECAUCIONES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiii
1 Perfil de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv
2 Precauciones Generales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv
3 Precauciones de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv
4 Precauciones en el entorno de trabajo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvi
5 Precauciones de aplicacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvi
6 Compatibilidad con las Directivas CE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxx

SECCIN 1
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1-1 Caractersticas generales de las instrucciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1-2 Comprobaciones de ejecucin de instruccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

SECCIN 2
Resumen de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2-1 Clasificacin de instrucciones por funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2-2 Funciones de las instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2-3 Lista alfabtica de instrucciones por nemnico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
2-4 Lista de instrucciones por cdigo de funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

SECCIN 3
Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
3-1 Notacin y presentacin de las descripciones de las instrucciones . . . . . . . . . . . . . . . . . . . 148
3-2 Actualizacin de instrucciones y Nuevas instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
3-3 Instrucciones de la entrada de secuencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
3-4 Instrucciones de la salida de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
3-5 Instrucciones del control de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
3-6 Instrucciones de temporizador y contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
3-7 Instrucciones de comparacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
3-8 Instrucciones de transferencia de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
3-9 Instrucciones de desplazamiento de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
3-10 Instrucciones de aumento/disminucin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
3-11 Instrucciones matemticas de smbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
3-12 Instrucciones de conversin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
3-13 Instrucciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
3-14 Instrucciones matemticas especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
3-15 Instrucciones matemticas de coma flotante. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
3-16 Instrucciones de coma flotante de doble precisin
(slo en CS1-H, CJ1-H, CJ1M o CS1D) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
3-17 Instrucciones de proceso de datos de tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 660
3-18 Instrucciones de control de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720
3-19 Subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 773
3-20 Instrucciones de control de interrupcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798

xvii
TABLA DE CONTENIDO
3-21 Instrucciones de salida de impulsos/contador de alta velocidad . . . . . . . . . . . . . . . . . . . . . . 823
3-22 Instrucciones de paso. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 867
3-23 Instrucciones de Unidades de E/S bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
3-24 Instrucciones de comunicaciones serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926
3-25 Instrucciones de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973
3-26 Instrucciones de memoria de archivos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1042
3-27 Instrucciones de visualizacin: DISPLAY MESSAGE: MSG(046) . . . . . . . . . . . . . . . . . . . 1058
3-28 Instrucciones de reloj. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1061
3-29 Instrucciones de depuracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075
3-30 Instrucciones de diagnstico de fallo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1079
3-31 Otras instrucciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104
3-32 Instrucciones de programacin de bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1124
3-33 Instrucciones de procesamiento de cadenas de texto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158
3-34 Instrucciones de control de tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192
3-35 Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) . . . . . . . . . . . . . . . . 1199

SECCIN 4
Tiempos de ejecucin de instruccin y nmero de pasos . . 1219
4-1 Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS. . . . . . . . . . . . . . . . 1221
4-2 Tiempos de ejecucin de instruccin y nmero de pasos de la serie CJ . . . . . . . . . . . . . . . . 1250

Appendices
A Tabla de cdigos ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1285

ndice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1287
Histrico de revisiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1295

xviii
Acerca de este manual:
Este manual describe las instrucciones de programacin de diagrama de rels de las unidades CPU
para los autmatas programables (PLC) de la serie CS/CJ. Las series CS y CJ se subdividen tal y
como se indica en la siguiente tabla.
Unidad Serie CS Serie CJ
CPUs CPUs de CS1-H: CS1H-CPU@@H CPUs de CJ1-H: CJ1H-CPU@@H
CS1G-CPU@@H CJ1G-CPU@@H
CJ1G-CPU@@P
CPUs de CS1: CS1H-CPU@@-EV1 CPUs de CJ1: CJ1G-CPU@@-EV1
CS1G-CPU@@-EV1 CPU de CJ1M: CJ1M-CPU@@
CPUs de CS1D:
CPUs de CS1D para sistemas de CPU
doble: CS1D-CPU@@H
CPUs de CS1D para sistemas de CPU
individual: CS1D-CPU@@S
CPUs de procesamiento para CS1D:
CS1D-CPU@@P
Unidades de E/S Unidades de E/S bsicas de la serie CS Unidades de E/S bsicas de la serie CJ
bsicas
Unidades de E/S Unidades de E/S especiales de la serie CS Unidades de E/S especiales de la serie CJ
especiales
Unidades de bus de Unidades de bus de CPU de la serie CS Unidades de bus de CPU de la serie CJ
CPU
Unidades de fuente Unidades de fuente de alimentacin de la Unidades de fuente de alimentacin de la
de alimentacin serie CS serie CJ

Antes de intentar programar o utilizar las CPUs de la Serie CS/CJ en un sistema de PLC, se reco-
mienda leer detenidamente el presente manual, as como toda la documentacin afn relacionada en
la tabla de la siguiente pgina, con el objeto de familiarizarse perfectamente con la informacin facili-
tada.
Seccin 1 presenta los PLC de la serie CS/CJ en funcin del juego de instrucciones que soportan.
Seccin 2 proporciona varias listas de instrucciones que pueden utilizarse como referencia.
Seccin 3 describe individualmente las instrucciones del juego de instrucciones de la serie CS/CJ.
Seccin 4 proporciona los tiempos de ejecucin de las instrucciones y el nmero de pasos para cada
instruccin de la serie

xix
Acerca de este manual, continuacin
Nombre Cat. No. Contenido
SYSMAC serie CS/CJ W340 Describe las instrucciones de programacin de
CS1G/H-CPU@@-EV1, CS1G/H-CPU@@H, CS1D- diagrama de rels compatibles con los PLC de la
CPU@@H, CS1D-CPU@@S, CJ1G-CPU@@, CJ1M- serie CS/CJ. (El presente manual)
CPU@@, CJ1G-CPU@@P, CJ1G/H-CPU@@H
Manual de referencia de instrucciones de autmatas
programables
SYSMAC serie CS/CJ W394 Este manual describe la programacin y dems
CS1G/H-CPU@@-EV1, CS1G/H-CPU@@H, CS1D- mtodos de uso de las funciones de los PLC de
CPU@@H, CS1D-CPU@@S, CJ1G-CPU@@, CJ1M- la serie CS/CJ.
CPU@@, CJ1G-CPU@@P, CJ1G/H-CPU@@H
Manual de programacin de autmatas programables
SYSMAC serie CS W339 Presenta una descripcin e instrucciones sobre el
CS1G/H-CPU@@-EV1, CS1G/H-CPU@@H diseo, instalacin, mantenimiento y dems ope-
Manual de operacin de autmatas programables raciones bsicas de los PLC de la serie CS.
SYSMAC serie CJ W393 Presenta una descripcin e instrucciones sobre el
CJ1G-CPU@@, CJ1M-CPU@@, CJ1G-CPU@@P, diseo, instalacin, mantenimiento y dems ope-
CJ1G/H-CPU@@H raciones bsicas de los PLC de la serie CJ.
Manual de operacin de autmatas programables
SYSMAC serie CJ W395 Describe las funciones de las E/S incorporadas
CJ1M-CPU21/22/23 de las CPUs CJ1M.
Manual de operacin de funciones de E/S incorporadas
SYSMAC serie CS W405 Presenta una visin general y describe el diseo,
CPUs de CS1D-CPU@@H instalacin, mantenimiento y otras operaciones
CPUs de CS1D-CPU@@S bsicas de un sistema dplex basado en CPUs
Unidad dplex CS1D-DPL1 de CS1D.
Unidad de fuente de alimentacin CS1D-PA207R
Manual de operacin de sistemas dplex
SYSMAC serie CS/CJ W341 Presenta informacin sobre la manera de progra-
CQM1H-PRO01-E, C200H-PRO27-E, CQM1-PRO01-E mar y utilizar los PLC de la serie CS/CJ mediante
Manual de operacin de consolas programables una consola de programacin.
SYSMAC serie CS/CJ W342 Describe los comandos de comunicaciones de la
CS1G/H-CPU@@-EV1, CS1G/H-CPU@@H, CS1D- serie C (Host Link) y FINS utilizados en los PLC
CPU@@H, CS1D-CPU@@S, CJ1M-CPU@@, CJ1G- de la serie CS/CJ.
CPU@@, CJ1G-CPU@@P, CJ1G/H-CPU@@H,
CS1W-SCB21-V1/41-V1, CS1W-SCU21-V1,
CJ1W-SCU21-V1/41-V1
Manual de referencia de comandos de comunicaciones
SYSMAC WS02-CXP@@-E W414 Presenta informacin sobre cmo utilizar
Manual de operacin de CX-Programmer Versin 3.@ CX-Programmer, un dispositivo de programacin
SYSMAC WS02-CXP@@-E W425 compatible con los PLC de la serie CS/CJ, y con
Manual de operacin de CX-Programmer Versin 4.@ el CX-Net incluido en CX-Programmer.
SYSMAC WS02-CXP@@-E W437
Manual de operacin de CX-Programmer Versin 5.@
SYSMAC WS02-CXP@@-E W438 Describe las especificaciones y mtodos operati-
Manual de operacin de bloques de funcin de vos relacionados con los bloques de funciones.
CX-Programmer Esta informacin solamente es necesaria cuando
se utilizan bloques de funcin en combinacin
con CX-Programmer Ver. 5.0 y CPUs CS1-H/
CJ1-H/CJ1M Ver. 3.0. Consulte informacin deta-
llada sobre otras operaciones de CX-Programmer
Ver. 5.0 en el Manual de funcionamiento de
CX-Programmer Versin 5 @ (W437).

xx
Nombre Cat. No. Contenido
SYSMAC serie CS/CJ W336 Explica cmo utilizar las unidades y tarjetas de
CS1W-SCB21-V1/41-V1, CS1W-SCU21-V1, comunicaciones serie para establecer comunica-
CJ1W-SCU21-V1/41-V1 ciones serie con dispositivos externos, incluido el
Manual de operacin de unidades/tarjetas de uso de protocolos de sistema estndar para los
comunicaciones serie productos OMRON.
SYSMAC WS02-PSTC1-E W344 Describe el uso del protocolo CX para crear
Manual de operacin de CX-Protocol macros de protocolo como secuencias de
comunicaciones, con el objeto de establecer
comunicaciones con dispositivos externos.

!ADVERTENCIA Asegrese de leer y comprender la informacin incluida en este manual; en caso


contrario, pueden producirse daos personales o incluso la muerte, daos en el pro-
ducto o fallos del mismo. Antes de iniciar cualquiera de los procedimientos y las ope-
raciones indicadas, lea cada seccin en su totalidad y asegrese de comprender
toda la informacin incluida en ella y en las secciones relacionadas.

xxi
PRECAUCIONES
Esta seccin incluye precauciones generales para el uso de los controladores lgicos programables (PLC) de la serie CS/CJ,
as como de los dispositivos relacionados con los mismos.
La informacin incluida en esta seccin es importante para el uso seguro y fiable de los PLC. Antes de intentar
configurar o utilizar un sistema PLC, lea detenidamente esta seccin y asegrese de comprender la informacin
incluida en la misma.

1 Perfil de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv


2 Precauciones Generales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv
3 Precauciones de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv
4 Precauciones en el entorno de trabajo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvi
5 Precauciones de aplicacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvi
6 Compatibilidad con las Directivas CE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxx
6-1 Directivas aplicables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxx
6-2 Conceptos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxx
6-3 Compatibilidad con las Directivas CE . . . . . . . . . . . . . . . . . . . . . . . xxxi
6-4 Mtodos de reduccin del ruido de salida de rels . . . . . . . . . . . . . . xxxi

xxiii
Perfil de usuario 1

1 Perfil de usuario
Este manual est dirigido al siguiente personal que, adems, debe tener
conocimientos de sistemas elctricos (ingeniero elctrico o equivalente).
Personal encargado de la instalacin de sistemas totalmente automatiza-
dos (FA).
Personal encargado del diseo de sistemas FA.
Personal encargado de la administracin de sistemas e instalaciones FA.

2 Precauciones Generales
El usuario debe utilizar el producto con arreglo a las especificaciones de ren-
dimiento descritas en los manuales de funcionamiento.
Consulte a su representante de OMRON antes de utilizar el producto en
alguna situacin no contemplada en este manual o de emplearlo en sistemas
de control nuclear, sistemas ferroviarios, sistemas de aviacin, vehculos, sis-
temas de combustin, equipos mdicos, mquinas recreativas, equipos de
seguridad y otros sistemas, mquinas o equipos que puedan tener una reper-
cusin grave en vidas o propiedades en caso de uso incorrecto.
Asegrese de que la potencia y las caractersticas de rendimiento del pro-
ducto son suficientes para los sistemas, las mquinas y el equipo en cues-
tin, as como de incorporar a los sistemas, las mquinas y el equipo
mecanismos de seguridad dobles.
Este manual contiene informacin relativa a la programacin y funciona-
miento de la Unidad. Asegrese de leerlo antes de intentar utilizar la Unidad y
tngalo siempre a mano para consultarlo durante su funcionamiento.
!ADVERTENCIA Es de vital importancia que tanto el PLC como todas las Unidades PLC se uti-
licen con los fines para los que han sido diseados y en las condiciones
especificadas, en especial en aquellas aplicaciones que puedan poner en
peligro, directa o indirectamente, vidas humanas. Antes de utilizar un sistema
PLC en las aplicaciones previamente mencionadas, debe consultar al repre-
sentante de OMRON.

3 Precauciones de seguridad
!ADVERTENCIA La CPU refresca las E/S incluso cuando el programa se detiene (es decir,
incluso en el modo PROGRAM). Antes de realizar un cambio de estado de
cualquier parte de la memoria asignada a las unidades de E/S, unidades
especiales o unidades de bus de CPU, compruebe de forma exhaustiva las
condiciones de seguridad. Todo cambio realizado en los datos asignados a
una unidad puede conllevar un funcionamiento imprevisto de las cargas
conectadas a la misma. Cualquiera de las siguientes operaciones puede pro-
vocar cambios en el estado de la memoria.
Transferir datos de la memoria de E/S a la CPU desde un dispositivo de
programacin.
Cambiar los valores actuales de la memoria desde un dispositivo de pro-
gramacin.
Forzar la configuracin o reconfiguracin de los bits desde un dispositivo
de programacin.
Transferir los archivos de la memoria de E/S desde una tarjeta de memo-
ria o desde una memoria de archivos de memoria extendida (EM) a la
CPU.
Transferir la memoria de E/S desde un host u otro autmata programable
en una red.

!ADVERTENCIA No intente desarmar una Unidad mientras est conectada a una fuente de ali-
mentacin. En caso contrario podran producirse descargas elctricas.

xxiv
Precauciones de seguridad 3

!ADVERTENCIA No toque ningn terminal o bloque de terminales mientras estn conectados


a una fuente de alimentacin. En caso contrario podran producirse descar-
gas elctricas.

!ADVERTENCIA No intente desarmar, reparar o modificar ninguna Unidad. Cualquier intento


de hacerlo puede provocar desperfectos, descargas elctricas e incluso
incendios.

!ADVERTENCIA Con el objeto de garantizar la seguridad del sistema en caso de producirse


una anomala como consecuencia de un funcionamiento incorrecto del PLC o
de cualquier otro factor externo que afecte a ste, incorpore a los circuitos
externos (es decir, no al PLC) medidas de seguridad, entre las que podran
incluirse las que a continuacin se relacionan. En caso de no hacerlo pueden
producirse graves accidentes.

Los circuitos de control externos deben protegerse mediante circuitos de


parada de emergencia, circuitos de bloqueo, circuitos de limitacin y
medidas de seguridad similares.
El PLC desconectar (OFF) todas las salidas si su funcin de autodiag-
nstico detecta cualquier error o en caso de ejecutarse una instruccin
de alarma de fallo grave (FALS). Para proteger al sistema frente a dichos
errores, deben incorporarse medidas de prevencin externas que garanti-
cen la seguridad.
Las salidas del PLC pueden bloquearse en la posicin de encendido
(ON) o apagado (OFF) debido a la acumulacin de sedimentos o a la
combustin de los rels de salida o a la destruccin de los transistores de
salida. Para evitar dichos problemas, deben incorporarse al sistema
medidas de prevencin externas que garanticen la seguridad.
En caso de sobrecarga o de cortocircuito de la salida de 24 Vc.c. (fuente
de alimentacin del PLC), puede producirse una cada de tensin que
provoque la desconexin (OFF) de las salidas. Para evitar dichos proble-
mas, deben incorporarse al sistema medidas de prevencin externas que
garanticen la seguridad.

!Precaucin Compruebe las condiciones de seguridad antes de transferir archivos de


datos almacenados en la memoria de archivos (tarjeta de memoria o memo-
ria de archivos de EM) al rea de E/S (CIO) de la CPU utilizando una herra-
mienta perifrica. De lo contrario, pueden producirse desperfectos en los
dispositivos conectados a la unidad de salida, independientemente del modo
de operacin de la CPU.

!Precaucin El usuario debe tomar medidas de proteccin a prueba de fallos para garanti-
zar la seguridad en caso de que no se reciban seales o que stas sean inco-
rrectas o anmalas debido a cortes momentneos de corriente u otras
causas. Si no se adoptan las medidas adecuadas, un funcionamiento an-
malo puede provocar graves accidentes.

!Precaucin Ejecute la edicin online slo despus de haber confirmado que la ampliacin
del tiempo de ciclo no tendr efectos perjudiciales. De lo contrario, quizs no
se puedan leer las seales de entrada.

!Precaucin Las CPUs CS1-H, CJ1-H, CJ1M y CS1D hacen una copia de seguridad auto-
mtica del programa de usuario y de los datos de parmetro en la memoria
flash cuando se escriben en la CPU. La memoria de E/S (incluyendo las
reas DM, EM y HR), no obstante, no se escribe en la memoria flash. Las
reas DM, EM y HR pueden mantenerse con una batera durante una inte-
rrupcin del suministro elctrico. Si se produce un error en la batera, el con-
tenido de estas reas puede no ser correcto despus de una interrupcin de
suministro elctrico. Si el contenido de las reas DM, EM y HR se utiliza para
controlar resultados externos, evite que se realicen salidas incorrectas
cuando el indicador de error de batera (A40204) se encuentre en ON.

xxv
Precauciones en el entorno de trabajo 4

!Precaucin Compruebe las condiciones de seguridad del nodo de destino antes de trans-
ferir un programa a otro nodo o de modificar el contenido del rea de memo-
ria de E/S. La realizacin de cualquiera de estos procesos sin confirmar las
condiciones de seguridad puede provocar lesiones.
!Precaucin Apriete los tornillos del bloque de terminales de la Unidad de fuente de ali-
mentacin de CA hasta el par de apriete especificado en el manual de funcio-
namiento. Los tornillos flojos pueden provocar incendios o un funcionamiento
incorrecto.
!Precaucin No toque la Unidad de fuente de alimentacin mientras est conectada a la
red elctrica ni inmediatamente despus de haberla desconectado de la
misma. La Unidad de fuente de alimentacin estar caliente, y puede cau-
sarle quemaduras.
!Precaucin Tenga cuidado al conectar ordenadores personales u otros dispositivos peri-
fricos a un PLC montado en una unidad no aislada (CS1W-CLK12/52(-V1) o
bien CS1W-ETN01) conectada a una fuente de alimentacin externa. Se
crear un cortocircuito si el lado de 24 V de la fuente de alimentacin externa
se pone a tierra y el lado de 0 V del dispositivo perifrico se pone a tierra.
Cuando conecte un dispositivo perifrico a este tipo de PLC, ponga a tierra el
lado de 0 V de la fuente de alimentacin externa o no ponga la fuente de ali-
mentacin externa a tierra en absoluto.

4 Precauciones en el entorno de trabajo


!Precaucin Evite hacer funcionar el sistema de control en las siguientes posiciones:
Lugares sometidos a la luz directa del sol.
Posiciones expuestas a temperaturas o condiciones de humedad inferio-
res o superiores a las indicadas en las especificaciones.
Lugares expuestos a condensacin como resultado de cambios drsticos
de temperatura.
Lugares expuestos a gases corrosivos o inflamables.
Lugares con altas cantidades de polvo (especialmente polvo de hierro) o sal.
Lugares expuestos al contacto con agua, aceite o productos qumicos.
Lugares sometidos a golpes o vibraciones.
!Precaucin Si los sistemas van a instalarse en los siguientes lugares, adopte las medidas
de prevencin adecuadas y suficientes:
Posiciones expuestas a electricidad esttica u otras formas de ruido.
Lugares expuestos a fuertes campos electromagnticos.
Posiciones con posibilidad de quedar expuestas a radioactividad.
Lugares prximos a fuentes de alimentacin elctrica.
!Precaucin El entorno de funcionamiento del sistema PLC puede tener un efecto muy
importante en la vida til y en la fiabilidad del sistema. Los entornos de fun-
cionamiento inadecuados pueden provocar un funcionamiento incorrecto,
averas y otros problemas imprevistos en el sistema PLC. Asegrese de que
el entorno de funcionamiento cumple las condiciones especificadas, tanto
durante la instalacin como durante toda la vida del sistema.
5 Precauciones de aplicacin
Observe las siguientes precauciones durante la utilizacin del sistema PLC.
En caso de que fuese necesario programar ms de una tarea, debe utili-
zar CX-Programmer (software de programacin que se ejecuta en Win-
dows). Puede utilizar una consola de programacin para programar
nicamente una tarea cclica con tareas de interrupcin. No obstante, la

xxvi
Precauciones de aplicacin 5

consola de programacin se puede utilizar para editar los programas mul-


titarea creados originalmente con CX-Programmer.
!ADVERTENCIA Tenga siempre en cuenta estas precauciones. De lo contrario, podran produ-
cirse lesiones graves, incluso mortales.
Al instalar las Unidades, conctelas siempre a una toma de tierra de 100
o menos. En caso de no realizar dicha conexin de 100 o menos, pue-
den producirse descargas elctricas.
Para puentear los terminales GR y LG de la Unidad de fuente de alimen-
tacin, debe estar instalada una toma de tierra de 100 o menos.
Desconecte siempre la fuente de alimentacin del PLC antes de proceder
a realizar cualquiera de las siguientes tareas. De lo contrario, puede pro-
ducirse un funcionamiento incorrecto o descargas elctricas.
Montaje o desmontaje de Unidades de fuente de alimentacin, Unida-
des de E/S, CPUs, tarjetas internas u otras Unidades.
Ensamblado de las Unidades.
Configuracin de los interruptores DIP o de los interruptores rotativos.
Conexin de cables o cableado del sistema.
Conexin o desconexin de los conectores.
!Precaucin El incumplimiento de las siguientes precauciones puede provocar un funcio-
namiento incorrecto del PLC o el sistema o bien daar las Unidades del PLC
o este mismo. Tenga en cuenta estas precauciones en todo momento.
En la memoria flash incorporada se realiza una copia de seguridad del
programa del usuario y de los datos del rea de parmetros de las CPUs
CS1-H, CS1D, CJ1-H y CJ1M. Mientras el procedimiento de copia de
seguridad est en curso, en la parte delantera de la CPU se encender el
indicador BKUP. No desconecte la alimentacin de la CPU mientras este
indicador permanezca encendido. De lo contrario, la copia de seguridad
de los datos no podr realizarse.
Cuando utilice una CPU CS1 de la serie CS por primera vez, instale la
batera CS1W-BAT1 suministrada con la Unidad y borre todas las reas
de memoria del dispositivo de programacin antes de comenzar a progra-
mar. Cuando utilice el reloj interno, conecte la alimentacin una vez insta-
lada la batera y configure el reloj desde un dispositivo de programacin o
utilizando la instruccin DATE(735). El reloj no se pondr en marcha
hasta que no se haya configurado la hora.
La CPU se entrega de fbrica con la configuracin del PLC definida de tal
manera que la CPU se iniciar en el modo de funcionamiento establecido
en el interruptor de modo de la consola de programacin. Si la consola de
programacin no est conectada, una CPU CS1 de la serie CS se iniciar
en el modo PROGRAM, pero las CPUs CS1-H, CS1D, CJ1, CJ1-H o
CJ1M se iniciarn en el modo RUN y empezarn a funcionar inmediata-
mente. No permita en ningn caso que la operacin se inicie sin confir-
mar que es segura.
Al crear un archivo AUTOEXEC.IOM desde un dispositivo de programacin
(una consola de programacin o CX-Programmer) para transferir datos
automticamente durante el inicio, establezca D20000 como primera direc-
cin de escritura y asegrese de que el tamao de los datos escritos no
supera el tamao del rea DM. Cuando el archivo de datos se lee desde la
tarjeta de memoria durante el inicio, los datos se escribirn en la CPU que
se inicia en D20000 aunque se haya establecido otra direccin en el
momento de creacin del archivo AUTOEXEC.IOM. Adems, si se supera
la capacidad del rea DM (lo que puede suceder si se utiliza CX-Program-
mer), los datos restantes se sobrescribirn en el rea EM.
Encienda siempre el PLC antes de conectar la alimentacin del sistema
de control. En caso contrario, pueden producirse errores temporales en
las seales del sistema de control, dado que los terminales de salida de
las Unidades de salida de CC y otras Unidades se encendern moment-
neamente al encender el PLC.
xxvii
Precauciones de aplicacin 5

El usuario debe tomar medidas de proteccin a prueba de errores para


garantizar la seguridad en caso de que las salidas de las Unidades de
salida permanezcan encendidas (ON) como resultado de fallos del cir-
cuito interno, que puedan producirse en rels, transistores y dems ele-
mentos.
El usuario debe tomar medidas de proteccin a prueba de fallos para
garantizar la seguridad en caso de que no se reciban seales o que stas
sean incorrectas o anmalas debido a cortes momentneos de corriente
u otras causas.
El usuario deber instalar por su cuenta circuitos de bloqueo y de limita-
cin, as como otras medidas de seguridad similares, en los circuitos
externos (es decir, no en el PLC).
No desconecte el PLC de la fuente de alimentacin durante la transferen-
cia de datos. Concretamente, no desconecte la alimentacin durante la
lectura/escritura de una tarjeta de memoria. Tampoco extraiga dicha tar-
jeta si el indicador BUSY (ocupado) est encendido. Antes extraer una
tarjeta de memoria, en primer lugar debe pulsar el interruptor de alimen-
tacin de dicha tarjeta y, a continuacin, esperar a que se apague el indi-
cador BUSY.
Si el bit de retencin de E/S se activa (ON), las salidas del PLC no se
apagarn (OFF) y conservarn su estado anterior cuando el PLC pase
del modo RUN o MONITOR al modo PROGRAM. Asegrese de que las
cargas externas no puedan provocar situaciones peligrosas cuando esto
ocurra (cuando el funcionamiento se interrumpe debido a un error fatal,
incluidos los generados con la instruccin FALS(007), todas las salidas
de la Unidad de salida se ponen en OFF y slo se mantiene el estado de
salida interno).
El contenido de las reas DM, EM y HR de la CPU est salvaguardado
por una batera. Si la batera se descarga, estos datos podran perderse.
Aplique medidas de prevencin mediante el indicador de error de batera
(A40204) para reinicializar los datos o bien adopte otras medidas en caso
de descarga de la batera.
Al conectar la alimentacin a 200 a 240 V c.a. con un PLC de la serie CS,
retire siempre el puente de metal del selector de voltaje de la Unidad de
fuente de alimentacin (excepto para las Unidades de fuente de alimen-
tacin con especificaciones de largo alcance). El producto sufrir daos
si se suministran de 200 a 240 Vc.a. mientras est conectado el puente
de metal.
Utilice siempre la tensin de alimentacin especificada en los manuales
de funcionamiento. Una tensin incorrecta puede dar lugar a un funciona-
miento incorrecto o causar un incendio.
Adopte las medidas adecuadas para garantizar que la tensin y frecuencia
nominal de la alimentacin sean las especificadas. Tenga especial cuidado
en lugares en los que la alimentacin elctrica sea inestable. Una alimenta-
cin inapropiada puede dar lugar a un funcionamiento incorrecto.
Instale disyuntores externos y tome otras medidas de proteccin contra
cortocircuitos en cableados externos. En caso de no adoptarse medidas
de seguridad suficientes para prevenir cortocircuitos, puede producirse
un incendio.
No aplique a las Unidades de entrada una tensin superior a la tensin
nominal de entrada. Un exceso de tensin puede provocar un incendio.
No aplique tensiones ni conecte cargas a las Unidades de salida que
superen la capacidad de conmutacin mxima. Los excesos de tensin o
de carga pueden provocar incendios.
Antes de realizar pruebas de tensin no disruptiva o de resistencia de
aislamiento, separe el terminal de puesta a tierra de la lnea (LG) del ter-
minal de puesta a tierra funcional (GR) de la unidad de alimentacin elc-
trica. De lo contrario, podra provocarse un incendio.
Instale correctamente las Unidades, siguiendo al pie de la letra las espe-
cificaciones de los manuales de funcionamiento. Una instalacin inco-
rrecta puede provocar desperfectos.
xxviii
Precauciones de aplicacin 5

Con los PLC de la serie CS, asegrese de que todos los tornillos de mon-
taje de la Unidad y de la tarjeta base estn ajustados con los pares de
apriete especificados en los manuales correspondientes. La aplicacin de
un par de apriete incorrecto puede provocar un funcionamiento incorrecto.
Asegrese de que todos los tornillos de los terminales y de los conecto-
res de cables estn ajustados con los pares de apriete especificados en
los manuales pertinentes. La aplicacin de un par de apriete incorrecto
puede provocar un funcionamiento incorrecto.
Durante el cableado, deje pegada la etiqueta a la Unidad. De lo contrario
pueden producirse desperfectos como consecuencia de la entrada de
partculas extraas al interior de la Unidad.
Una vez concluido el cableado, retire la etiqueta para permitir una ade-
cuada disipacin trmica. Dejar la etiqueta pegada puede provocar des-
perfectos.
Utilice terminales a presin para el cableado. No conecte cables trenza-
dos pelados directamente a los terminales. La conexin de cables trenza-
dos pelados puede provocar un incendio.
Efecte correctamente el cableado de todas las conexiones.
Antes de conectar la alimentacin elctrica, vuelva a comprobar la confi-
guracin de todos los interruptores y del cableado. Un cableado inco-
rrecto puede provocar un incendio.
Monte las Unidades slo despus de haber comprobado exhaustiva-
mente los bloques de terminales y los conectores.
Asegrese de que los bloques de terminales, las Unidades de memoria,
los cables de expansin y dems elementos con dispositivos de bloqueo
estn situados adecuadamente. De lo contrario, podra producirse un fun-
cionamiento incorrecto.
Antes de poner los equipos en funcionamiento, compruebe la configura-
cin de interruptores, el contenido del rea DM y dems preparativos. En
caso de poner en servicio los equipos sin la configuracin o los datos
adecuados, pueden producirse un funcionamiento imprevisto.
Consulte que el programa del usuario puede ejecutarse correctamente
antes de ejecutarlo en la Unidad. De lo contrario puede producirse un
funcionamiento imprevisto.
Confirme que no se producir ningn efecto adverso en el sistema antes
de intentar llevar a cabo cualquiera de las siguientes acciones. De lo con-
trario, puede producirse un funcionamiento imprevisto.
Cambiar el modo operativo del PLC (incluyendo la configuracin del
modo operativo al inicio).
Forzar la configuracin o la reconfiguracin de cualquiera de los bits
de la memoria.
Cambiar el valor actual de cualquier canal o valor establecido de la
memoria.
No tire de los cables ni los doble ms all de sus lmites naturales. De lo
contrario, podran romperse.
No apoye objetos sobre los cables u otros conductos de cableado. Los
cables podran romperse.
No utilice los cables RS-232C para ordenador personal que se venden en
las tiendas de informtica. Utilice siempre los cables especiales especifi-
cados en este manual o bien prepare los cables atenindose a dichas
especificaciones. El uso de cables comerciales puede daar los dispositi-
vos externos y la CPU.
No conecte nunca el pin 6 (fuente de alimentacin de 5V) del puerto RS-
232C de la CPU a un dispositivo que no sea un adaptador NT-AL001 o
CJ1W-CIF11. El dispositivo externo o la CPU pueden resultar daados.
Cuando sustituya alguna pieza, asegrese de comprobar que la tensin
de la nueva pieza sea la correcta. De lo contrario podran producirse des-
perfectos o un incendio.

xxix
Compatibilidad con las Directivas CE 6

Antes de tocar una Unidad, toque antes un objeto metlico conectado a


tierra para descargarse de la electricidad esttica que pudiera haber acu-
mulado. De lo contrario, podra producirse un funcionamiento incorrecto o
el equipo podra resultar daado.
Al transportar o guardar placas de circuitos, cbralas con material anties-
ttico para protegerlas de la electricidad esttica y mantener la tempera-
tura de almacenamiento adecuada.
Evite tocar las placas de circuitos y los componentes montados en las
mismas con las manos desnudas. Los flancos afilados y otras partes de
las placas pueden provocar lesiones en caso de ser manipuladas inco-
rrectamente.
No cortocircuite los terminales de la batera, ni cargue, desmonte,
caliente o queme la batera. No exponga la batera a golpes fuertes. De lo
contrario podran producirse fugas o roturas, o la batera podra generar
calor o incendiarse. Abstngase de utilizar cualquier batera que haya
cado al suelo o que haya sufrido un golpe fuerte. Las bateras expuestas
a golpes pueden presentar fugas en caso de utilizarlas.
Las normas UL requieren que las bateras sean sustituidas nicamente
por tcnicos debidamente cualificados. Impida su manipulacin por per-
sonal no cualificado.
En los PLC de la serie CJ, las regletas de las partes superior e inferior de
la Unidad de fuente de alimentacin, CPU, Unidades de E/S, Unidades
de E/S especiales y Unidades de bus CPU deben estar completamente
cerradas (hasta que se coloquen en su lugar). En caso contrario, la Uni-
dad no funcionar correctamente.
En los PLC de la serie CJ, conecte siempre el tope final a la Unidad de la
derecha del PLC. Sin el tope final, el PLC no funcionar correctamente.
Pueden producirse efectos imprevistos si se configuran incorrectamente
los parmetros o las tablas de data link. Incluso si ha configurado correc-
tamente las tablas de data link y los parmetros, confirme que el sistema
controlado no se vea adversamente afectado antes de iniciar o interrum-
pir data links.
Despus de realizar una transferencia de tablas de rutas desde un dispo-
sitivo de programacin a una CPU, sta debe ser reiniciada. Esto es
necesario para que las Unidades lean y habiliten las nuevas tablas de
rutas. Confirme que el sistema no vaya a verse adversamente afectado
antes de permitir el reinicio de las Unidades de bus de CPU.

6 Compatibilidad con las Directivas CE


6-1 Directivas aplicables
Directivas sobre CEM
Directivas sobre baja tensin
6-2 Conceptos
Directivas sobre CEM
Los dispositivos OMRON compatibles con las Directivas CE tambin son
compatibles con las normas sobre Compatibilidad Electromagntica (CEM)
afines, lo que permite integrarlos con mayor facilidad en otros dispositivos o
equipos industriales. Se ha comprobado que los equipos cumplen con las
normas sobre CEM (vea la nota siguiente). No obstante, es responsabilidad
del cliente comprobar que los productos cumplen las normas en los sistemas
que utilice.
El cumplimiento de las disposiciones relativas a la CEM de los dispositivos
OMRON compatibles con las Directivas CE puede variar en funcin de la con-
figuracin, el cableado y dems condiciones del equipo o panel de control en
el que se instalen los dispositivos OMRON. Por lo tanto, el cliente deber rea-
lizar una comprobacin final para confirmar que los dispositivos y el equipo
industrial son compatibles con las normas de CEM.
xxx
Compatibilidad con las Directivas CE 6

Nota Las normas de CEM (Compatibilidad electromagntica) aplicables son:


SEM (Susceptibilidad electromagntica): EN61131-2 (Serie CS)/
EN61000-6-2 (Serie CJ)
EMI (Interferencias electromagnticas): EN61000-6-4
(Radiacin de emisiones: normas para cables de hasta 10 m)
Directivas sobre baja tensin
Debe asegurarse siempre de que los dispositivos que funcionen con tensio-
nes entre 50 y 1.000 Vc.a., y entre 75 y 1.500 Vc.a., cumplen las normas de
seguridad de equipos PLC (EN61131-2).

6-3 Compatibilidad con las Directivas CE


Los PLC de la serie CS/CJ cumplen las Directivas CE. Para garantizar que la
mquina o el dispositivo en el que se utiliza el PLC de la serie CS/CJ cumple
las Directivas CE, el PLC debe estar instalado del siguiente modo:
1,2,3... 1. Los PLC de la serie CS/CJ deben instalarse dentro de un panel de control.
2. Las fuentes de alimentacin de CC utilizadas para la alimentacin elctri-
ca de las comunicaciones y las E/S deben protegerse con un aislamiento
reforzado o doble.
3. Los PLC de la serie CJ compatibles con las Directivas CE son igualmente
compatibles con la Norma de emisiones comunes (EN61000-6-4). Las ca-
ractersticas de las emisiones radiadas (normas para cables de hasta
10 m) pueden variar en funcin de la configuracin del panel de control uti-
lizado, de los dems dispositivos conectados al panel de control, del ca-
bleado y de diversas condiciones. Por lo tanto, debe confirmar que el
equipo o la maquinaria industrial son compatibles con las Directivas CE.

6-4 Mtodos de reduccin del ruido de salida de rels


Los PLC de la serie CS/CJ cumplen las Normas de emisiones comunes
(EN61000-6-4) de las Directivas sobre CEM. Sin embargo, es posible que el
ruido generado por la conmutacin de salida de rels no cumpla dichas nor-
mas. En tal caso debe conectarse un filtro de ruidos del lado de la carga o
bien adoptar cualquier otra medida de prevencin externa (con respecto al
PLC) adecuada.
Las medidas de prevencin adoptadas con el objeto de cumplir las normas
pueden variar en funcin de los dispositivos del lado de la carga, del cableado,
de la configuracin de las mquinas, etc. A continuacin se exponen algunos
ejemplos de estas medidas tendentes a reducir los ruidos generados.

Medidas de prevencin
(Consulte informacin ms detallada en EN61000-6-4.)
Estas medidas no sern necesarias si la frecuencia de conmutacin de la
carga de todo el sistema, con el PLC incluido, es inferior a 5 veces por
minuto.
Estas medidas sern necesarias si la frecuencia de conmutacin de carga de
todo el sistema, con el PLC incluido, es superior a 5 veces por minuto.

xxxi
Compatibilidad con las Directivas CE 6

Ejemplos de medidas de prevencin


En caso de conmutacin de cargas inductivas, conecte un protector contra
sobretensiones, diodos, etc., en paralelo con la carga o con el contacto, tal y
como se indica a continuacin.
Circuito Corriente Caractersticas Elemento requerido
CA CC
Mtodo CR S S Si la carga es un rel o solenoide, se La capacitancia del condensador debe
producir un retardo entre el momento ser de 1 a 0,5 F por cada corriente de
en que se abre el circuito y el momento contacto de 1 A; el valor de la resisten-
en que se restablece la carga. cia debe ser de 0,5 a 1 por cada ten-
inductiva

Si la tensin de alimentacin es 24 sin de contacto de 1 V. Sin embargo,


Carga

48 V, inserte el protector contra sobre- estos valores pueden variar en funcin


Fuente de
tensiones en paralelo con la carga. Si de la carga y de las caractersticas del
alimentacin
la tensin de alimentacin es de 100 a rel. Determine estos valores empri-
200V, inserte el protector de sobreten- camente, teniendo presente que la
sin entre los contactos. capacitancia suprime la descarga dis-
ruptiva cuando los contactos se sepa-
ran y que la resistencia limita la
corriente que pasa a la carga cuando
el circuito vuelve a cerrarse.
La rigidez dielctrica del condensador
debe ser de 200 a 300 V. Si se trata de
un circuito de CA, utilice un condensa-
dor sin polaridad.
Mtodo diodo No S El diodo conectado en paralelo con la El valor de rigidez dielctrica inversa
carga transforma en corriente la ener- del diodo debe ser como mnimo 10
ga acumulada por la bobina, corriente veces mayor que el valor de tensin del
que al entrar en la bobina es transfor- circuito. La corriente directa del diodo
inductiva

mada en calor por la resistencia de la debe ser igual o mayor que la corriente
Carga

Fuente de
carga inductiva. de carga.
alimentacin
Este mtodo provoca un retardo (entre El valor de rigidez dielctrica inversa
el momento en que se abre el circuito y del diodo puede ser dos o tres veces
el momento en que se restablece la mayor que la tensin de alimentacin si
carga) que es ms prolongado que el el protector contra sobretensiones se
que produce el mtodo CR. aplica a circuitos electrnicos con ten-
siones de circuito bajas.
Mtodo varistor S S El mtodo de varistor evita la imposi- ---
cin de alta tensin entre los contactos
utilizando las caractersticas de tensin
constante del varistor. Se producir un
inductiva

retardo entre el momento en que se


Carga

abre el circuito y el momento en que se


Fuente de
alimentacin
restablece la carga.
Si la tensin de alimentacin es de 24
48 V, inserte el varistor en paralelo
con la carga. Si la tensin de alimenta-
cin es de 100 a 200 V, inserte el varis-
tor entre los contactos.

Al conmutar una carga con una corriente de irrupcin alta (por ejemplo, una
lmpara incandescente), suprima la corriente de irrupcin tal y como se
indica a continuacin.
Medida 1 Medida 2

R
SALIDA SALIDA
R
COM COM
Proporcionar una corriente Proporcionando un
residual de aproximadamente un resistor limitador
tercio del valor nominal a travs
de una lmpara incandescente

xxxii
SECCIN 1
Introduccin

Esta seccin proporciona informacin sobre las caractersticas generales de las instrucciones, as como los errores que
pueden producirse durante la ejecucin de las instrucciones.

1-1 Caractersticas generales de las instrucciones. . . . . . . . . . . . . . . . . . . . . . . . . 2


1-1-1 Capacidad de programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1-1-2 Instrucciones de diferencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1-1-3 Variaciones de instrucciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1-1-4 Posicin de instruccin y condiciones de ejecucin. . . . . . . . . . . . . 5
1-1-5 Introduccin de datos en operandos . . . . . . . . . . . . . . . . . . . . . . . . . 5
1-1-6 Formatos de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1-2 Comprobaciones de ejecucin de instruccin . . . . . . . . . . . . . . . . . . . . . . . . . 13
1-2-1 Errores que se producen en la ejecucin de instruccin . . . . . . . . . . 13
1-2-2 Errores fatales (errores de programa) . . . . . . . . . . . . . . . . . . . . . . . . 13

1
Caractersticas generales de las instrucciones Seccin 1-1

1-1 Caractersticas generales de las instrucciones


1-1-1 Capacidad de programa
La capacidad de programa es el tamao del rea de programa del usuario en
la CPU y se expresa como el nmero de pasos de programa. El nmero de
pasos necesarios en el rea de programa de usuario para cada una de las
instrucciones de la serie CS/CJ vara entre 1 y 7 pasos, en funcin de la ins-
truccin y de los operandos utilizados con la misma.
Serie CS
Las siguientes tablas muestran el nmero mximo de pasos que pueden pro-
gramarse en cada CPU de la serie CS.
CPUs CS1-H
Modelo Capacidad de programa Puntos de E/S
CS1H-CPU67H 250K pasos 5.120
CS1H-CPU66H 120K pasos
CS1H-CPU65H 60K pasos
CS1H-CPU64H 30K pasos
CS1H-CPU63H 20K pasos
CS1G-CPU45H 60K pasos
CS1G-CPU44H 30K pasos 1.280
CS1G-CPU43H 20K pasos 960
CS1G-CPU42H 10K pasos

CPUs CS1
Modelo Capacidad de programa Puntos de E/S
CS1H-CPU67-E 250K pasos 5.120
CS1H-CPU66-E 120K pasos
CS1H-CPU65-E 60K pasos
CS1H-CPU64-E 30K pasos
CS1H-CPU63-E 20K pasos
CS1G-CPU45-E 60K pasos
CS1G-CPU44-E 30K pasos 1.280
CS1G-CPU43-E 20K pasos 960
CS1G-CPU42-E 10K pasos

CPUs de CS1D para sistemas de CPU individual:s


Modelo Capacidad de programa Puntos de E/S
CS1D-CPU67H 250K pasos 5.120
CS1D-CPU65H 60K pasos

CPUs de CS1D para sistemas de CPU doble:


Modelo Capacidad de programa Puntos de E/S
CS1D-CPU42S 10K pasos 960
CS1D-CPU44S 30K pasos 1.280
CS1D-CPU65S 60K pasos 5.120
CS1D-CPU67S 250K pasos

2
Caractersticas generales de las instrucciones Seccin 1-1

Serie CJ
Las siguientes tablas muestran el nmero mximo de pasos que pueden pro-
gramarse en cada CPU de la serie CJ.
CPUs CJ1-H
Modelo Capacidad de programa Puntos de E/S
CJ1H-CPU67H 250K pasos 2.560
CJ1H-CPU66H 120K pasos
CJ1H-CPU65H 60K pasos
CJ1G-CPU45H 60K pasos 1.280
CJ1G-CPU44H 30K pasos
CJ1G-CPU43H 20K pasos 960
CJ1G-CPU42H 10K pasos

CPUs CJ1
Modelo Capacidad de programa Puntos de E/S
CJ1G-CPU45 60K pasos 1.280
CJ1G-CPU44 30K pasos

CPUs CJ1M
Modelo Capacidad de programa Puntos de E/S
CJ1M-CPU23 20K pasos 640
CJ1M-CPU22 10K pasos 320
CJ1M-CPU21 5K pasos 160
CJ1M-CPU13 20K pasos 640
CJ1M-CPU12 10K pasos 320
CJ1M-CPU11 5K pasos 160

Nota La capacidad de programa de los PLC de la serie CS/CJ se mide en pasos,


en tanto que la capacidad de los PLC OMRON anteriores (series C y CV, por
ejemplo), se meda en palabras. Bsicamente, 1 paso equivale a 1 palabra.
No obstante, la cantidad de memoria necesaria para cada instruccin es dife-
rente en el caso de algunas de las instrucciones de la serie CS/CJ. Por ello,
se producirn imprecisiones en caso de realizarse una conversin de capaci-
dad de un programa de usuario de otro PLC a la de un PLC de la serie CS/
CJ, basndose en el supuesto de que 1 palabra equivale a 1 paso. Consulte
en la informacin que aparece al final de SECCIN 4 Tiempos de ejecucin
de instruccin y nmero de pasos las directrices de conversin de capacida-
des de programa de los antiguos PLC de OMRON.
El nmero de pasos de un programa no es igual al nmero de instrucciones.
Por ejemplo, LD y OUT necesitan 1 paso cada una, pero MOV(021) requiere
3 pasos. Otras instrucciones requieren hasta 7 pasos. El nmero de pasos
requeridos por una instruccin tambin aumenta en un paso para cada ope-
rando de doble longitud utilizado en ella. Por ejemplo, MOVL(498) requiere
normalmente 3 pasos, pero sern necesarios 4 pasos si se especifica una
constante para el operando del canal fuente, S. Consulte en la SECCIN 4
Tiempos de ejecucin de instruccin y nmero de pasos el nmero de pasos
requeridos para cada instruccin.

1-1-2 Instrucciones de diferencial


La mayora de las instrucciones de los PLC de la serie CS/CJ se proporcio-
nan con variaciones sin diferencial y con diferencial ascendente, y algunas
tambin con una variacin con diferencial descendente.

3
Caractersticas generales de las instrucciones Seccin 1-1

Una instruccin sin diferencial se ejecuta cada vez que es escaneada.


Una instruccin con diferencial ascendente se ejecuta solamente una vez
que su condicin de ejecucin va de OFF a ON.
Una instruccin con diferencial descendente se ejecuta solamente una
vez que su condicin de ejecucin va de ON a OFF.
Variacin Tipo de instruccin Operacin Formato Ejemplo
Sin Instrucciones de salida La instruccin se ejecuta Instruccin de salida
diferencial (instrucciones que cada ciclo mientras la ejecutada cada ciclo MOV

requieren una condicin condicin de ejecucin sea


de ejecucin) verdadera (ON).
Instrucciones de entrada El procesamiento de bits Instruccin de entrada
(instrucciones utilizadas (como lectura, compara- ejecutada cada ciclo
como condiciones de cin, o test) se realiza cada
ejecucin) ciclo. La condicin de eje-
cucin es vlida mientras el
resultado est en ON.
Diferencial Instrucciones de salida La instruccin se ejecuta Instruccin ejecutada
ascendente cuando la condicin de eje- una vez para dife- @ MOV
rencial ascendente
(con prefijo cucin va de OFF a ON. MOV(021) ejecutada una
@) vez para cada transicin
OFF a ON en CIO 000102.

Instrucciones de entrada El procesamiento de bits Instruccin de entrada de


(instrucciones utilizadas (como lectura, compara- diferencial ascendente
Condicin de ejecucin ON creada
como condiciones de cin, o test) se realiza cada slo para un ciclo para cada tran-
ejecucin) ciclo. La condicin de eje- sicin OFF a ON en CIO 000103.
cucin es verdadera para
un ciclo cuando el resultado
va de OFF a ON.
Diferencial Instrucciones de salida La instruccin se ejecuta Instruccin % 0001
descendente cuando la condicin de eje- ejecutada una vez 02 %SET
para diferencial SET ejecutada una vez
(con prefijo %) cucin va de ON a OFF. descendente para cada transicin ON a
OFF en CIO 000102.

Instrucciones de entrada El procesamiento de bits Instruccin de entrada de 0001


(instrucciones utilizadas (como lectura, compara- diferencial descendente 03

como condiciones de cin, o test) se realiza cada


ejecucin) ciclo. La condicin de eje- Condicin de ejecucin ON
cucin es verdadera para creada slo para un ciclo para
cada transicin ON a OFF en
un ciclo cuando el resultado CIO 000103.
va de ON a OFF.

Nota La opcin de diferencial descendente (%) est disponible solamente para las
instrucciones LD, AND, OR, y RSET. Para crear variaciones con diferencial
descendente para otras instrucciones, controle la ejecucin de la instruccin
con bits de trabajo controlados con DIFD(014) o DOWN(522).

1-1-3 Variaciones de instrucciones


Los prefijos de variacin (@, %, y !) pueden aadirse a una instruccin para
crear una instruccin con diferencial o proporcionar refresco inmediato.
Variacin Prefijo Operacin
Diferencial Diferencial @ Crea una instruccin con diferencial
ascendente ascendente.
Diferencial % Crea una instruccin con diferencial
descendente descendente.
Refresco inmediato ! Los datos de operando de la instruccin del
rea de E/S se refrescan cuando se ejecuta
la instruccin.

4
Caractersticas generales de las instrucciones Seccin 1-1

! @ MOV
Instruccin nemnica
Variacin de diferencial ascendente
Variacin de refresco inmediato

1-1-4 Posicin de instruccin y condiciones de ejecucin


La siguiente tabla muestra las posiciones en las que pueden programarse
instrucciones. La tabla tambin muestra cundo una instruccin requiere una
condicin de ejecucin y cundo no Consulte la SECCIN 2 Resumen de
instrucciones para obtener detalles sobre las instrucciones especficas.
Tipo de instruccin Posicin Condicin de Formato Ejemplos
ejecucin
En- Instrucciones En el bus izquierdo o No requerida Instrucciones LD, LD TST y
trada que inician al comienzo de un blo- comparacin de entrada
condiciones que de instrucciones. como LD >
lgicas
Instrucciones Entre una instruccin Requerida Instrucciones de compara-
de conexin de inicio y una instruc- cin de entrada AND, OR,
cin de salida AND TST como AND >, UP,
DOWN, NOT
Salida En el bus derecho Requerida La mayora de las instruccio-
nes (como OUT y MOV)

No requerida Instrucciones como END,


JME, FOR, e ILC

Adems de con estas instrucciones, los PLC de la serie CS/CJ estn equipa-
dos con instrucciones de programacin de bloque. Consulte la descripcin de
las instrucciones de programacin de bloque para obtener informacin ms
detallada sobre el particular.
Nota Si una instruccin que requiere condicin de ejecucin no va precedida de
una se producir un error de programa cuando el programa sea comprobado
desde un dispositivo perifrico.
1-1-5 Introduccin de datos en operandos
Los operandos son parmetros que se configuran por adelantado con las
constantes o direcciones de la memoria de E/S para ser utilizados cuando se
ejecuta una instruccin. Hay bsicamente tres clases de operandos: Operan-
dos fuente, operandos destino y nmeros.

MOV JMP
#0000 S (Fuente) &3 N (Nmero)
D00000 D (Destino)

Operando Cdigo Contenido


usual
Origen La direccin que S Operando Datos fuente que no sean
contiene los datos o fuente datos de control
los datos mismos. C Datos de Datos de control con un bit
control o bits controlando la
ejecucin de instrucciones
Destino Direccin en la que D ---
se almacenan los
datos.
Nmero Contiene un nmero N ---
como un nmero de
salto o un nmero de
subrutina.

5
Caractersticas generales de las instrucciones Seccin 1-1

Nota Tambin puede referirse a los operandos de una instruccin por su posicin
en la instruccin (primer operando, segundo operando,...) Los cdigos utiliza-
dos para el operando varan la funcin especfica del operando.

MOV
#0000 Primer operando
D00000 Segundo operando

Especificacin de direcciones de bit


Descripcin Ejemplo Ejemplo de instruccin
Para especificar una direccin de bit 0001 02 0001
especifique la direccin de canal y la direccin 02
de bit directamente. Bit 02
@@@@ @@ Canal CIO 0001
Nmero de bit
Direccin de canal
Nota El formato de direccin de canal + nmero
de bit no se utiliza para indicadores de
finalizacin de Temporizador/Contador ni
para indicadores de tarea.

Especificacin de direcciones de canal


Descripcin Ejemplo Ejemplo de instruccin
Para especificar una direccin de canal MOV 0003 D00200
0003
especifique la direccin de canal
directamente. Canal CIO 0003
@@@@ D00200
Direccin de canal Canal D00200

Especificacin de direcciones indirectas DM/EM en modo binario


Descripcin Ejemplo Ejemplo de instruccin
Cuando se introduce el prefijo @ antes de una --- ---
direccin DM o EM, los contenidos de ese canal
especifican otro canal que se utiliza como el
operando. Los contenidos pueden ser 0000 a
7FFF (0 a 32.767), correspondindose con las
direcciones de canal deseadas del rea DM EM.

@D@@@@@

Contenido 00000 a 32767


(0000 a 7FFF)

Cuando el contenido de @D@@@@@ est entre @D00300 MOV #0001


0000 y 7FFF (00000 a 32.767), se especifica el @D00300
canal correspondiente entre D00000 y D32767. 0 1 0 0
Decimal: 256

Especifica D00256.

Aada el prefijo @.

6
Caractersticas generales de las instrucciones Seccin 1-1

Descripcin Ejemplo Ejemplo de instruccin


Cuando el contenido de @D@@@@@ est entre @D00300 ---
8000 y FFFF (32.768 a 65.535) se especifica el
canal correspondiente entre E0_00000 y 8 0 0 1
E0_32767 en el banco de EM 0.
Decimal: 32:769

Specifica E0_00001.

Cuando el contenido de @En@_@@@@@ est @E1 MOV #0001


entre 0000 y 7FFF (00000 a 32.767) se especifica @E1_00200
el canal correspondiente entre En@_00000 y 00200 0 1 0 1
En@_32767.
Decimal: 257

Especifica E1_00257.

Cuando el contenido de @En@_@@@@@ est @E1


entre 8000 y FFFF (32.768 a 65.535) se especi-
fica el canal correspondiente entre E (@+1) 00200
8 0 0 2
_00000 y E (@+1) _32767 (en el siguiente banco
de EM). Decimal: 32770

Especifica E2_00002.

Nota Cuando se selecciona el modo binario en la configuracin del PLC, la direc-


cin de rea DM y las direcciones actuales de banco de EM (banco 0 a C) se
tratan como direcciones de memoria consecutivas. Se especificar un canal
del banco 0 de EM si un canal de DM indirectamente direccionado contiene
un valor superior a 32.767. Por ejemplo, se especificar E00000 en el banco
0 cuando el canal de DM indirectamente direccionado contenga un valor
hexadecimal de 8000 (32.768).
Se especificar un canal en el siguiente banco de EM si un canal de EM indi-
rectamente direccionado contiene un valor superior a 32.767. Por ejemplo, se
especificar E3_00000 cuando el canal de EM indirectamente direccionado
del banco 2 contenga un valor hexadecimal de 8000 (32.768).
Especificacin de direcciones indirectas DM/EM en modo BCD
Mtodo Descripcin Ejemplo Ejemplo de instruccin
Direccionamiento
Cuando se introduce el prefijo * antes de *D00200 MOV #0001 *D00200
indirecto de
DM/EM una direccin DM o EM, los contenidos
BCD de ese canal especifican otro canal 0 1 0 0
(Modo BCD)
que se utiliza como el operando. Los
contenidos pueden ser 0000 a 9999,
correspondindose con las direcciones de Especifica D00100.
canal deseadas del rea DM EM.
Aada el prefijo *.
*D@@@@@

Contenido
0000 a 9999
(BCD)

7
Caractersticas generales de las instrucciones Seccin 1-1

Direccionamiento de registros de ndice


Mtodo Descripcin Ejemplo Ejemplo de instruccin
Direccionamien MOVR(560) mueve la direccin de un canal o bit de IR0 MOVR 0010 IR0
to directo de la memoria del PLC a un registro de ndice (IR0 a IR2 Almacena la direccin de memoria
registros de IR15). del PLC de CIO 0010 en IR0.
ndice (MOVRW(561) mueve la direccin de memoria en el MOVR 000102 IR2
PLC del valor actual (PV) de temporizador o Almacena la direccin de memoria
contador a un registro de ndice). del PLC de CIO 000102 en IR2.
Direcciona- Operacin El canal o bit de la direccin de ,IR0 LD ,IR0
miento indi- bsica (sin memoria de E/S contenida en IR@ ,IR1 Carga el estado del bit de la
recto con offset) se utiliza como operando. direccin de la memoria de E/S
registros de Introduzca una coma antes del contenida en IR0.
ndice registro de ndice para indicar un MOV #0001, IR1
direccionamiento indirecto. Mueve #0001 al canal de la
(La designacin del bit/canal puede direccin de la memoria de E/S
determinarse mediante la contenida en IR1.
instruccin o el operando).
Offset El valor de offset (2.048 a +2.047) +5 ,IR0 LD +5 ,IR0
constante se aade a la direccin de la +31 ,IR1 Aade 5 a la direccin de la
memoria de E/S contenida en IR@ y memoria de E/S contenida en IR0 y
la direccin resultante se utiliza carga el estado del bit de esa
como el operando. direccin.
(El offset se convierte a datos MOV #0001 +31 ,IR1
binarios cuando se ejecuta la Aade 31 a la direccin de al
instruccin). memoria de E/S contenida en IR1 y
mueve #0001 al canal de esa
direccin.
Offset de DR El contenido binario con signo del DR0 ,IR0 LD DR0 ,IR0
registro de datos se aade a la DR0 ,IR1 Aade el contenido de DR0 a la
direccin de la memoria de E/S direccin de al memoria de E/S
contenida en IR@ y la direccin contenida en IR0 y carga el estado
resultante se utiliza como el del bit de esa direccin.
operando. MOV #0001 DR0 ,IR1
Aade el contenido de DR0 a la
direccin de al memoria de E/S
contenida en IR1 y mueve #0001 al
canal de esa direccin.
Aumento Despus de que la memoria de E/S ,IR0 + + LD , IR0++
automtico sea leda desde IR@, el contenido ,IR1 + Carga el estado del bit de la
del registro de ndice aumenta en direccin de la memoria de E/S
uno o en dos. contenida en IR0, y a continuacin
Aumento en 1: ,R@+ aumenta el registro en dos.
Aumento en 2: ,IR@++ MOV #0001 ,IR1 +
Nota Los registros de ndice aumen- Mueve #0001 al canal de la
tarn cuando la instruccin se direccin de la memoria de E/S
ejecute, incluso si se produce contenida en IR1, y a continuacin
un error y el indicador de error aumenta el registro en uno.
se pone en ON.
Disminucin El contenido de IR@ es disminuido , IR0 LD , IR0
automtica en uno o dos y la direccin de la , IR1 Disminuye el contenido de IR0 en
memoria de E/S del registro se dos y, a continuacin carga el
utiliza como el operando. estado del bit en esa direccin de
Disminucin en 1:, IR@ memoria de E/S.
Disminucin en 2:, IR@ MOV #0001 , IR1
Nota Los registros de ndice se dis- Disminuye el contenido de IR0 en
minuirn cuando la instruccin uno y, a continuacin mueve #0001
se ejecute, incluso si se al canal de la direccin de esa
produce un error y el indicador memoria de E/S.
de error se pone en ON.

Nota Asegrese de que los contenidos de los registros de ndice indican direccio-
nes vlidas de la memoria de E/S.

8
Caractersticas generales de las instrucciones Seccin 1-1

Especificacin de constantes
Mtodo Operandos Formato de Cdigo Rango Ejemplo
aplicables datos
Constante Todos los datos Binario sin # #0000 a #FFFF ---
(Datos de binarios y datos signo
16 bits) binarios dentro de Decimal 32.768 a +32.767 ---
un rango con signo
Decimal sin & &0 a &66.535 ---
signo
Todos los datos BCD # #0000 a #9999 ---
BCD y datos BCD
dentro de un rango
Constante Todos los datos Binario sin # #0000 0000 a ---
(Datos de binarios y datos signo #FFFF FFFF
32 bits) binarios dentro de Decimal + 2.147.483.648 a ---
un rango con signo +2.147.483.647
Decimal sin & &0 a &4.294.967.295 ---
signo
Todos los datos BCD # #0000 0000 a ---
BCD y datos BCD #9999 9999
dentro de un rango

Especificacin de cadenas de texto


Mtodo Descripcin Cdigo Ejemplos Ejemplo de instruccin
Cadenas de El texto se almacena en ASCII "ABCDE" MOV$ D00100 D00200
texto (1 byte/carcter excluyendo
"A" "B" D00100 41 42
caracteres especiales) empe-
zando por el byte ms bajo del "C" "D" D00101 43 44
canal ms bajo del rango. "E" NUL D00102 45 00
Si hay un nmero impar de
caracteres, se almacena 00 41 42
(NULL - CERO) en el byte ms 43 44 D00200 41 42
alto del ltimo canal del rango. 45 00 D00201 43 44
Si hay un nmero par de D00202 45 00
caracteres, se almacena 0000 "ABCD"
(dos NULLs - CEROs) en el "A" "B"
canal despus del ltimo del "C" "D"
rango. NUL NUL

41 42
43 44
00 00

9
Caractersticas generales de las instrucciones Seccin 1-1

El siguiente diagrama muestra los caracteres que pueden expresarse en


ASCII.

Bit de la izquierda

SP

Bit de la derecha

Nota Las siguientes instrucciones se ejecutan incluso cuando las condiciones de


entrada estn en OFF. Por lo tanto, cuando se especifican direcciones de
memoria indirectas mediante aumento automtico o disminucin automtica
(,IR+ o ,IR-) en un operando de alguna de estas instrucciones, el valor del
registro de ndice (IR) se refresca cada ciclo sin tener en cuenta la condicin
de entrada (aumenta o disminuye uno cada ciclo). Esto debe tenerse en
cuenta al escribir un programa.
Clasificacin Instrucciones
Instrucciones de LD, LD NOT, AND, AND NOT, OR, OR NOT, LD TST(350),
entrada de secuencia LD TSTN(351), AND TST(350), AND TSTN(351), OR
TST(350), OR TSTN(351)
Instrucciones de salida OUT, OUT NOT, DIFU(013), DIFD(014)
de secuencia
Instrucciones de JMP(004), FOR(512)
control de secuencia
Instrucciones de TIM/TIMX(550), TIMH(015)/TIMHX(551), TMHH(540)/
temporizador y TMHHX(552), TTIM(087)/TTIMX(555), TIML(542)/
contador TIMLX(553), MTIM(533)/MTIMX(554), CNT/CNTX(546),
CNTR(012)/CNTRX(548)
Instrucciones de Instrucciones de comparacin de smbolos (LD, AND, OR =,
comparacin etc.(cdigos de funcin: 300, 305, 310, 320, y 325))
Instrucciones matem- Comparacin de datos de coma flotante de precisin simple
ticas de coma flotante (LD, AND, OR = F, etc.(cdigos de funcin: 329 a 334))
de precisin simple
Instrucciones matem- Comparacin de datos de coma flotante de doble precisin
ticas de coma flotante (LD, AND, OR = D, etc.(cdigos de funcin: 335 a 340))
de doble precisin
Instrucciones de BPPS(811), BPRS(812), EXIT(806), EXIT(806) NOT,
programacin de IF(802), IF(802) NOT, WAIT(805), WAIT(805) NOT,
bloques TIMW(813)/TIMWX(816), CNTW(814)/CNTWX(818),
TMHW(815)/TMHWX(817), LEND(810), LEND(810) NOT
Instrucciones de Comparacin de cadenas de texto (LD, AND, OR = $,
procesamiento de etc.(cdigos de funcin: 670 a 675))
cadenas de texto

10
Caractersticas generales de las instrucciones Seccin 1-1

Los siguientes ejemplos de programacin de diagrama de rels muestran


cmo se tratan los registros de ndice.
Ejemplo 1
Programa de diagrama de rels:
LD P_Off
OUT, IR0+
Operacin: Cuando la direccin de memoria del PLC 000013 se almacena en
IR0.
La condicin de entrada es OFF (P_Off es siempre el indicador de OFF), as
que la instruccin OUT configura 000013, que est direccionada indirecta-
mente por IR0, en OFF. La instruccin OUT se ejecuta, as que IR0 aumenta.
Como resultado, la direccin de la memoria del PLC 000014, que ha sido
aumentada en +1 en el IR0, se almacena. Por lo tanto en el siguiente ciclo la
instruccin OUT pone en OFF 000014.
Ejemplo 2
Programa de diagrama de rels:
LD P_Off
SET, IR0+
Operacin: Cuando la direccin de memoria del PLC 000013 se almacena en
IR0.
La condicin de entrada es OFF (P_Off es siempre el indicador de OFF), as
que la instruccin SET no se ejecuta. Por lo tanto, IR0 no aumenta y el valor
almacenado en IR0 sigue siendo la direccin de la memoria del PLC 000013.

1-1-6 Formatos de datos


La siguiente tabla muestra los formatos de datos que pueden utilizarse en los
PLC de la serie CS/CJ.
Nombre Formato Rango Rango
decimal hexadecimal
Datos 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0a 0000 a FFFF
binarios 65.535
sin signo
Binario 215 214 213 212 211 210 29 28 27 26 25 24 23 22 21 20
Decimal 32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1
Hexa-
decimal 23 22 21 20 23 22 21 20 23 22 21 20 23 22 21 20

Datos 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 32.768 a 8000 a 7FFF


binarios +32.767
con signo
Binario 215 214 213 212 211 210 29 28 27 26 25 24 23 22 21 20
Decimal -32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1
Hexa-
decimal 23 22 21 20 23 22 21 20 23 22 21 20 23 22 21 20
Bit con signo
0: Positivo
1: Negativo

Datos 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 a 9.999 0000 a 9999


BCD

BCD 23 22 21 20 23 22 21 20 23 22 21 20 23 22 21 20

Decimal 0a9 0a9 0a9 0a9

11
Caractersticas generales de las instrucciones Seccin 1-1

Nombre Formato Rango Rango


decimal hexadecimal
Decimal 31 30 29 23 22 21 20 19 18 17 3 2 1 0 --- ---
de coma
flotante

Signo de Exponente Mantisa


Binario
mantisa

Valor = (1)Signo x 1.[Mantisa] x 2Exponente


Signo (bit 31) 1: negativo o 0: positivo
Mantisa La mantisa incluye 23 bits desde el bit 00 al bit 22
e indica esta fraccin que sigue a la coma en
1.@@@..... en binario.
Exponente El exponente incluye 8 bits desde el bit 23 al bit 30
e indica n ms 127 en 2n en binario.

Nota Este formato cumple los estndares IEEE754 para datos de coma flotante de
precisin simple y slo se utiliza con instrucciones que convierten o calculan datos
de coma flotante. Se puede utilizar para seleccionar o supervisar desde la pantalla
de edicin y supervisin de la memoria de E/S de CX Programmer (no compatible
con las consolas de programacin). No es necesario que los usuarios conozcan
este formato, aunque deben saber que el formato ocupa dos canales.

Decimal 63 62 61 52 51 50 49 48 47 46 3 2 1 0 --- ---


con coma
flotante de
doble
precisin Signo de Exponente Mantisa
mantisa Binario

Valor = (1)Signo x 1.[Mantisa] x 2Exponente


Signo (bit 63) 1: negativo o 0: positivo
Mantisa Los 52 bits desde el bit 00 al bit 51 contienen la
mantisa, es decir, la fraccin decimal que sigue a la
coma en 1.@@@....., en binario..
Exponente Los 11 bits desde el bit 52 al bit 62 contienen el
exponente. El exponente se expresa en binario como
1023 ms n en 2n..
Nota Este formato cumple los estndares IEEE754 para datos de coma flotante de
precisin doble y slo se utiliza con instrucciones que convierten o calculan datos
de coma flotante. Se puede utilizar para seleccionar o supervisar desde la pantalla
de edicin y supervisin de la memoria de E/S de CX Programmer (no compatible
con las consolas de programacin). No es necesario que los usuarios conozcan
este formato, aunque deben saber que el formato ocupa cuatro canales.

Nmeros binarios con Los nmeros binarios con signo negativo se expresan como el complemento
signo a 2 del valor hexadecimal absoluto. Para un valor decimal de 12.345, el valor
absoluto es equivalente a 3039 hexadecimal. El complemento a 2 es 10000
3039 (ambos hexadecimales) o CFC7.
Para convertir un nmero binario con signo negativo (CFC7) a decimal, tome
el complemento a 2 de ese nmero (10000 CFC7 = 3039), convirtalo
a decimal (3039 hexadecimal = 12.345 decimal), y aada un signo negativo
(12.345).

12
Comprobaciones de ejecucin de instruccin Seccin 1-2

1-2 Comprobaciones de ejecucin de instruccin


1-2-1 Errores que se producen en la ejecucin de instruccin
Los operandos y posicin de una instruccin se comprueban cuando una ins-
truccin se introduce desde un dispositivo perifrico o se lleva a cabo una com-
probacin de programa desde un dispositivo perifrico (que no sea una consola
de programacin), pero estas no son comprobaciones finales. Pueden produ-
cirse los siguientes cuatro errores cuando se ejecuta una instruccin.
Error de procesamiento de instruccin (Indicador ER en ON)
Normalmente, los errores de procesamiento de instruccin no son errores
fatales, pero puede configurarse el PLC para tratar los errores de procesa-
miento de instruccin como fatales. Si se lleva a cabo esta configuracin, el
indicador de error de procesamiento de instruccin (A29508) se pondr en
ON y se detendr la ejecucin del programa cuando tenga lugar un error de
procesamiento de instruccin.
Error de acceso (indicador AER en ON)
Normalmente, los errores de acceso no son errores fatales, pero puede confi-
gurarse el PLC para tratar los errores de acceso como fatales. Si se lleva a
cabo esta configuracin, el indicador de error de acceso no valido (A29510) y
el indicador de un error BCD de DM/EM indirecto (A29509) se ponen en ON y
se detiene la ejecucin del programa cuando se produce un error de acceso.
Error de instruccin no vlida
El indicador de error de instruccin no vlida (A29514) se pone en ON y la
ejecucin del programa se detiene cuando se produce este error.
Error de desbordamiento de UM (memoria de programa de usuario)
El indicador de error de desbordamiento de UM (A29514) se pone en ON y la
ejecucin del programa se detiene cuando se produce este error.

1-2-2 Errores fatales (errores de programa)


Se detendr la ejecucin del programa cuando se produzca alguno de los
siguientes errores de programa. Cuando se ha producido un error de pro-
grama, el nmero de tarea de la tarea que estaba siendo ejecutada cuando
se detuvo la ejecucin del programa se escribe en A294 y la direccin del
programa se escribe en A298 y A299.
Utilice los contenidos de estos canales para localizar el error de programa y
corregirlo segn sea necesario.
Direccin Descripcin
A294 El nmero de tarea de la tarea actual se escribe en este canal cuando
la ejecucin del programa se detiene a causa de un error de programa.
Las tareas cclicas tienen los nmeros de tarea 0000 a 001F (tareas
cclicas 0 a 31). Las tareas de interrupcin tienen los nmeros de
tarea 8000 a 80FF (tareas de interrupcin 0 a 255).
A298 y A299 La direccin de programa actual se escribe en estos canales cuando la
ejecucin del programa se detiene a causa de un error de programa.
A299 contiene los dgitos situados ms a la izquierda de la direccin
del programa y A298 contiene los dgitos situados ms a la derecha
de la direccin del programa.

Todos los errores para los que el indicador de error o el indicador de error de
acceso se pone en ON se tratan como errores de programa. La siguiente lista

13
Comprobaciones de ejecucin de instruccin Seccin 1-2

contiene los errores de programa. El PLC puede configurarse para detener la


ejecucin del programa cuando se produce alguno de estos errores.
Tipo de error Descripcin Indicadores relacionados
No hay instruccin END No hay instruccin END(001) en el programa. No hay indicador de error
END (A29511)
Error de tarea Hay tres posibles causas de error de tarea: Indicador de error de tarea
1) No existe una tarea cclica ejecutable. (A29512)
2) No hay ningn programa asignado a la tarea.
3) Se ha generado una interrupcin pero no existe la tarea de
interrupcin correspondiente.
Error de procesamiento La CPU ha intentado ejecutar una instruccin, pero los datos Indicador de error (ER),
de instrucciones* contenidos en el operando de la instruccin eran incorrectos. Indicador de error de
*Si el PLC se ha configurado para tratar los errores de procesamiento de
instruccin como errores fatales (errores de programa), el instruccin (A29508)
indicador de error de procesamiento de instruccin (A29508)
se pondr en ON y se detendr la ejecucin del programa.
Error de acceso* Hay cinco posibles causas de error de acceso: Indicador de error de
1) Lectura/escritura en el rea de parmetros. acceso (AER),
2) Escritura en una memoria no instalada. Indicador de error de
3) Lectura/escritura en un banco de EM que es memoria de acceso no vlido (A29510)
archivos de EM.
4) Escritura en un rea de slo lectura.
5) Los contenidos de un canal DM/EM no eran BCD aunque el
PLC est configurado para direccionamiento BCD indirecto.
*Si el PLC se ha configurado para tratar los errores de
instruccin como errores fatales (errores de programa), el
indicador de error de acceso no vlido (A29510) se pondr
en ON y se detendr la ejecucin del programa.
Error BCD indirecto de Los contenidos de un canal DM/EM no eran BCD aunque el Indicador de error de
DM/EM* PLC est configurado para direccionamiento BCD indirecto. acceso (AER),
*Si el PLC se ha configurado para tratar los errores de Indicador de error BCD
instruccin como errores fatales (errores de programa), indirecto de DM/
el indicador de error de BCD indirecto de DM/EM(A29509) se EM(A29509)
pondr en ON y se detendr la ejecucin del programa.
Error de las instrucciones de diferencial fueron repetidamente Indicador de error de
desbordamiento de insertadas y borradas durante la edicin online (ms de desbordamiento de
diferencial 31.072 veces). diferencial (A29513)
Error de Se ha sobrepasado la ltima direccin de UM (memoria de Indicador de error desbor-
desbordamiento de UM programa del usuario). damiento de UM (A29515)
Error de instruccin no El programa contiene una instruccin que no puede Indicador de error de
vlida ejecutarse. instruccin no vlida
(A29514)

14
SECCIN 2
Resumen de instrucciones

Esta seccin contiene un resumen de las instrucciones utilizadas por los PLC de la serie CS/CJ.

2-1 Clasificacin de instrucciones por funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16


2-2 Funciones de las instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2-2-1 Instrucciones de la entrada de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2-2-2 Instrucciones de la salida de secuencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2-2-3 Instrucciones del control de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2-2-4 Instrucciones de temporizador y contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2-2-5 Instrucciones de comparacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2-2-6 Instrucciones de transferencia de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2-2-7 Instrucciones de desplazamiento de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2-2-8 Instrucciones de aumento/disminucin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2-2-9 Instrucciones matemticas de smbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2-2-10 Instrucciones de conversin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2-2-11 Instrucciones lgicas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2-2-12 Instrucciones matemticas especiales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2-2-13 Instrucciones matemticas de coma flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2-2-14 Instrucciones de coma flotante de doble precisin . . . . . . . . . . . . . . . . . . . . . . . . . 67
2-2-15 Instrucciones de proceso de datos de tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2-2-16 Instrucciones de control de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
2-2-17 Instrucciones de subrutina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2-2-18 Instrucciones de control de interrupcin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2-2-19 Instrucciones de salida de pulsos, contador de alta velocidad
(slo CJ1M-CPU21/22/23). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
2-2-20 Instrucciones de paso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
2-2-21 Instrucciones de Unidades de E/S bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
2-2-22 Instrucciones de comunicaciones serie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
2-2-23 Instrucciones de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2-2-24 Instrucciones de memoria de archivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
2-2-25 Instrucciones de visualizacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
2-2-26 Instrucciones de reloj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
2-2-27 Instrucciones de depuracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
2-2-28 Instrucciones de diagnstico de fallo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
2-2-29 Otras instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
2-2-30 Instrucciones de programacin de bloques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
2-2-31 Instrucciones de procesamiento de cadenas de texto . . . . . . . . . . . . . . . . . . . . . . . 102
2-2-32 Instrucciones de control de tareas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
2-2-33 Instrucciones de conversin de modelo (CPUs Ver. 3.0 posterior solamente) . . 106
2-2-34 Instrucciones especiales de bloque de funciones . . . . . . . . . . . . . . . . . . . . . . . . . . 107
2-3 Lista alfabtica de instrucciones por nemnico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
2-4 Lista de instrucciones por cdigo de funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

15
Clasificacin de instrucciones por funcin Seccin 2-1

2-1 Clasificacin de instrucciones por funcin


La siguiente tabla contiene la lista de las instrucciones de la serie CS/CJ cla-
sificadas por funcin. (Las instrucciones aparecen por orden de funcin en la
Seccin 3 Instrucciones.)
*Las instrucciones o grupos de instrucciones marcados con un asterisco son
solamente compatibles con las CPUs CS1-H, CJ1-H, CJ1M, y CS1D.
**Las instrucciones o grupos de instrucciones marcados con dos asteriscos
son solamente compatibles con las CPUs CJ1M.
***Las instrucciones o grupos de instrucciones marcados con tres asteriscos
no son compatibles con las CPUs CS1D para sistemas de CPU doble.

Nota 1. CPUs de la serie CS/CJ Ver. 2.0 posterior solamente


2. CPUs CJ1M-CPU21/22/23 Ver. 2.0 posterior solamente
3. CPUs de la serie CS/CJ Ver. 2.0 posterior solamente
CPU CJ1M Pre-Ver. 2.0 Ver. 2.0 posterior)
Clasifica- Subclase Nemnico Instruccin Nemnico Instruccin Nemnico Instruccin
cin
Instruccio- Entrada LD LOAD LD NOT LOAD NOT AND AND
nes AND NOT AND NOT OR OR OR NOT OR NOT
bsicas
AND LD AND LOAD OR LD OR LOAD --- ---
Salida OUT OUTPUT OUT NOT OUTPUT NOT --- ---
Instruccio- --- NOT NOT UP CONDITION DOWN CONDITION
nes de ON OFF
entrada de Test de Bit LD TST LD BIT TEST LD TSTN LD BIT TEST AND TST AND BIT
secuencia NOT TEST NOT
AND TSTN AND BIT TEST OR TST OR BIT TEST OR TSTN OR BIT TEST
NOT NOT
Instruccio- --- KEEP KEEP DIFU DIFFEREN- DIFD DIFFEREN-
nes de TIATE UP TIATE DOWN
salida de OUTB* SINGLE BIT --- --- --- ---
secuencia OUTPUT
Configuracin/ SET SET RSET RESET SETA MULTIPLE
Reset BIT SET
RSTA MULTIPLE BIT SETB* SINGLE BIT RSTB* SINGLE BIT
RESET SET RESET
Instruccio- --- END END NOP NO OPERA- --- ---
nes de con- TION
trol de Bloqueo IL INTERLOCK ILC INTERLOCK MILH MULTI-
secuencia CLEAR INTERLOCK
DIFFEREN-
TIATION
HOLD
MILR MULTI-INTER- MILC MULTI-INTER- --- ---
(Vase la LOCK DIFFE- (Vase la LOCK CLEAR
nota 1). RENTIATION nota 1).
RELEASE
Salto JMP JUMP JME JUMP END CJP CONDITIO-
NAL JUMP
CJPN CONDITIO- JMP0 MULTIPLE JME0 MULTIPLE
NAL JUMP JUMP JUMP END
Repetir FOR FOR-NEXT BREAK BREAK LOOP NEXT FOR-NEXT
LOOPS LOOPS

16
Clasificacin de instrucciones por funcin Seccin 2-1

Clasifica- Subclase Nemnico Instruccin Nemnico Instruccin Nemnico Instruccin


cin
Instruccio- BCD Tempori- TIM TIMER TIMH HIGH-SPEED TMHH ONE-MS
nes de tem- zador TIMER TIMER
porizador y (con TTIM ACCUMULA- --- --- --- ---
contador nmeros TIVE TIMER
de tempo-
rizador)
Tempori- TIML LONG TIMER MTIM MULTI- --- ---
zador OUTPUT
(sin TIMER
nmeros
de tempo-
rizador)
Contador CNT COUNTER CNTR REVERSIBLE CNR RESET
(con TIMER TIMER/
nmeros COUNTER
de conta-
dor)
Bina- Tempori- TIMX TIMER TIMHX HIGH-SPEED TMHHX ONE-MS
ria* zador TIMER TIMER
(con TTIMX ACCUMULA- --- --- --- ---
nmeros TIVE TIMER
de tempo-
rizador)
Tempori- TIMLX LONG TIMER MTIMX MULTI- --- ---
zador OUTPUT
(sin TIMER
nmeros
de tempo-
rizador)
Contador CNTX COUNTER CNTRX REVERSIBLE CNRX RESET
(con TIMER TIMER/
nmeros COUNTER
de conta-
dor)
Instruccio- Comparacin LD, AND, OR Comparacin LD, AND, OR Comparacin LD, AND, OR Comparacin
nes de com- de smbolos + de smbolos + de smbolos + de smbolos
paracin =, <>, <, <=, >, (sin signo) =, <>, <, <=, >, (dos canales, =, <>, <, <=, >, (con signo)
>= >= + L sin signo) >= +S
LD, AND, OR Comparacin LD, AND, OR Comparacin --- ---
+ de smbolos + de tiempo
=, <>, <, <=, >, (dos canales, = DT, <> DT, <
>= + SL con signo) DT, <= DT, >
DT, >= DT
(Vase la
nota 1).
Comparacin CMP UNSIGNED CMPL DOUBLE CPS SIGNED
de datos COMPARE UNSIGNED BINARY
(Indicadores de COMPARE COMPARE
condicin) CPSL DOUBLE SIG- ZCP* AREA RANGE ZCPL* DOUBLE
NED BINARY COMPARE AREA
COMPARE RANGE
COMPARE
Comparacin MCMP MULTIPLE TCMP TABLE COM- BCMP UNSIGNED
de tabla COMPARE PARE BLOCK
COMPARE
BCMP2 EXPANDED --- --- --- ---
(Vase la BLOCK COM-
nota 3). PARE
Instruccio- Uno/ MOV MOVE MOVL DOUBLE MVN MOVE NOT
nes dos canales MOVE
de transfe- MVNL DOUBLE --- --- --- ---
rencia de MOVE NOT
datos
Bit/dgito MOVB MOVE BIT MOVD MOVE DIGIT --- ---
Cambio XCHG DATA XCGL DOUBLE --- ---
EXCHANGE DATA
EXCHANGE
Transferencia de XFRB MULTIPLE BIT XFER BLOCK BSET BLOCK SET
bloque/bit TRANSFER TRANSFER
Distribucin/ DIST SINGLE COLL DATA --- ---
recogida WORD DIS- COLLECT
TRIBUTE
Registro de ndice MOVR MOVE TO MOVRW MOVE TIMER/ --- ---
REGISTER COUNTER PV
TO
REGISTER

17
Clasificacin de instrucciones por funcin Seccin 2-1

Clasifica- Subclase Nemnico Instruccin Nemnico Instruccin Nemnico Instruccin


cin
Instruccio- Desplazamiento de SFT SHIFT REGIS- SFTR REVERSIBLE ASLL DOUBLE
nes de des- 1 bit TER SHIFT SHIFT LEFT
plazamiento REGISTER
de datos ASL ARITHMETIC ASR ARITHMETIC ASRL DOUBLE
SHIFT LEFT SHIFT RIGHT SHIFT RIGHT
0000 hex ASFT ASYNCHRO- --- --- --- ---
asincrnico NOUS SHIFT
REGISTER
Desplazamiento de WSFT WORD SHIFT --- --- --- ---
Canal
Rotacin de 1 bit ROL ROTATE LEFT ROLL DOUBLE RLNC ROTATE
ROTATE LEFT LEFT
WITHOUT
CARRY
RLNL DOUBLE ROR ROTATE RORL DOUBLE
ROTATE LEFT RIGHT ROTATE
WITHOUT RIGHT
CARRY
RRNC ROTATE RRNL DOUBLE --- ---
RIGHT ROTATE
WITHOUT RIGHT
CARRY WITHOUT
CARRY
Desplazamiento de SLD ONE DIGIT SRD ONE DIGIT --- ---
1 dgito SHIFT LEFT SHIFT RIGHT
Desplazamiento de NSFL SHIFT N-BIT NSFR SHIFT N-BIT --- ---
datos de n bits DATA LEFT DATA RIGHT
Desplazamiento de NASL SHIFT N-BITS NSLL DOUBLE NASR SHIFT N-BITS
n bits LEFT SHIFT N-BITS RIGHT
LEFT
NSRL DOUBLE --- --- --- ---
SHIFT N-BITS
RIGHT
Instruccio- BCD ++B INCREMENT ++BL DOUBLE B DECRE-
nes de BCD INCREMENT MENT BCD
Incremento/ BCD
Decremento BL DOUBLE --- --- --- ---
DECREMENT
BCD
Binario ++ INCREMENT ++L DOUBLE DECRE-
BINARY INCREMENT MENT
BINARY BINARY
L DOUBLE --- --- --- ---
DECREMENT
BINARY

18
Clasificacin de instrucciones por funcin Seccin 2-1

Clasifica- Subclase Nemnico Instruccin Nemnico Instruccin Nemnico Instruccin


cin
Instruccio- Suma binaria + SIGNED +L DOUBLE SIG- +C SIGNED
nes matem- BINARY ADD NED BINARY BINARY ADD
ticas de WITHOUT ADD WITH CARRY
smbolos CARRY WITHOUT
CARRY
+CL DOUBLE SIG- --- --- --- ---
NED BINARY
ADD WITH
CARRY
Suma BCD +B BCD ADD +BL DOUBLE BCD +BC BCD ADD
WITHOUT ADD WITH CARRY
CARRY WITHOUT
CARRY
+BCL DOUBLE BCD --- --- --- ---
ADD WITH
CARRY
Resta binaria SIGNED L DOUBLE SIG- C SIGNED
BINARY NED BINARY BINARY
SUBTRACT SUBTRACT SUBTRACT
WITHOUT WITHOUT WITH CARRY
CARRY CARRY
CL DOUBLE SIG- --- --- --- ---
NED BINARY
WITH CARRY
Resta BCD B BCD BL DOUBLE BCD BC BCD
SUBTRACT SUBTRACT SUBTRACT
WITHOUT WITHOUT WITH CARRY
CARRY CARRY
BCL DOUBLE BCD --- --- --- ---
SUBTRACT
WITH CARRY
Multiplicacin * SIGNED *L DOUBLE SIG- *U UNSIGNED
binaria BINARY NED BINARY BINARY
MULTIPLY MULTIPLY MULTIPLY
*UL DOUBLE --- --- --- ---
UNSIGNED
BINARY
MULTIPLY
Multiplicacin BCD *B BCD *BL DOUBLE BCD --- ---
MULTIPLY MULTIPLY
Divisin binaria / SIGNED /L DOUBLE SIG- /U UNSIGNED
BINARY NED BINARY BINARY
DIVIDE DIVIDE DIVIDE
/UL DOUBLE --- --- --- ---
UNSIGNED
BINARY
DIVIDE
Divisin BDC /B BCD DIVIDE /BL DOUBLE BCD --- ---
DIVIDE
Instruccio- Conversin BCD/ BIN BCD-TO- BINL DOUBLE BCD BINARY-TO-
nes de Binario BINARY BCD-TO- BCD
conversin DOUBLE
BINARY
BCDL DOUBLE NEG 2S COMPLE- NEGL DOUBLE 2'S
BINARY-TO- MENT COMPLE-
DOUBLE BCD MENT
SIGN 16-BIT TO --- --- --- ---
32-BIT SIG-
NED BINARY
Decoder/ encoder MLPX DATA DMPX DATA ENCO- --- ---
DECODER DER
Conersin ASCII/ ASC ASCII HEX ASCII TO HEX --- ---
HEX CONVERT
Conversin lnea/ LINE COLUMN TO COLM LINE TO --- ---
columna LINE COLUMN
Conversin binario BINS SIGNED BCD- BISL DOUBLE SIG- BCDS SIGNED
con signo/BCD TO-BINARY NED BCD-TO- BINARY-TO-
BINARY BCD
BDSL DOUBLE SIG- GRY GRAY CODE --- ---
NED BINARY- (Vase la CONVER-
TO-BCD nota 1). SION

19
Clasificacin de instrucciones por funcin Seccin 2-1

Clasifica- Subclase Nemnico Instruccin Nemnico Instruccin Nemnico Instruccin


cin
Instruccio- AND/OR lgicos ANDW LOGICAL AND ANDL DOUBLE ORW LOGICAL OR
nes lgicas LOGICAL
AND
ORWL DOUBLE XORW EXCLUSIVE XORL DOUBLE
LOGICAL OR OR EXCLUSIVE
OR
XNRW EXCLUSIVE XNRL DOUBLE --- ---
NOR EXCLUSIVE
NOR
Complemento COM COMPLE- COML DOUBLE --- ---
MENT COMPLE-
MENT
Instruccio- --- ROTB BINARY ROOT ROOT BCD SQUARE APR ARITHMETIC
nes matem- ROOT PROCESS
ticas FDIV FLOATING BCNT BIT --- ---
especiales POINT DIVIDE COUNTER
Instruccio- Conversin coma FIX FLOATING TO FIX FLOATING TO FLT 16-BIT TO
nes matem- flotante/binario 16-BIT 32-BIT FLOATING
ticas de FLTL 32-BIT TO --- --- --- ---
coma flo- FLOATING
tante
Matemticas +F FLOATING- F FLOATING- /F FLOATING-
bsicas de coma POINT ADD POINT POINT
flotante SUBTRACT DIVIDE
*F FLOATING- --- --- --- ---
POINT
MULTIPLY
Coma flotante RAD DEGREES TO DEG RADIANS TO SIN SINE
trigonomtrica RADIANS DEGREES
COS COSINE TAN TANGENT ASIN ARC SINE
ACOS ARC COSINE ATAN ARC --- ---
TANGENT
Matemticas de SQRT SQUARE EXP EXPONENT LOG LOGARITHM
coma flotante ROOT
PWR EXPONEN- --- --- --- ---
TIAL POWER
Comparacin y LD, AND, OR Comparacin FSTR* FLOATING- FVAL* ASCII TO
conversin de + de smbolos POINT TO FLOATING-
smbolos* =, <>, <, <=, >, (coma flotante ASCII POINT
>= + F de precisin
simple)
Instruccio- Conversin coma FIXD DOUBLE FIXLD DOUBLE DBL 16-BIT TO
nes de coma flotante/binario FLOATING TO FLOATING TO DOUBLE
flotante de 16-BIT 32-BIT FLOATING
doble preci- DBLL 32-BIT TO --- --- --- ---
sin* DOUBLE
FLOATING
Matemticas bsi- +D DOUBLE D DOUBLE /D DOUBLE
cas de coma flo- FLOATING- FLOATING- FLOATING-
tante POINT ADD POINT POINT
SUBTRACT DIVIDE
*D DOUBLE --- --- --- ---
FLOATING-
POINT
MULTIPLY
Coma flotante RADD DOUBLE DEGD DOUBLE SIND DOUBLE
trigonomtrica DEGREES TO RADIANS TO SINE
RADIANS DEGREES
COSD DOUBLE TAND DOUBLE ASIND DOUBLE
COSINE TANGENT ARC SINE
ACOSD DOUBLE ARC ATAND DOUBLE ARC --- ---
COSINE TANGENT
Matemticas de SQRTD DOUBLE EXPD DOUBLE LOGD DOUBLE
coma flotante SQUARE EXPONENT LOGARITHM
ROOT
PWRD DOUBLE --- --- --- ---
EXPONEN-
TIAL POWER
Comparacin de LD, AND, OR Comparacin --- --- --- ---
smbolos + de smbolos
=, <>, <, <=, >, (coma flotante
>= + D de doble preci-
sin)

20
Clasificacin de instrucciones por funcin Seccin 2-1

Clasifica- Subclase Nemnico Instruccin Nemnico Instruccin Nemnico Instruccin


cin
Instruccio- Procesamiento SSET SET STACK PUSH PUSH ONTO LIFO LAST IN
nes de pro- de pila STACK FIRST OUT
cesamiento FIFO FIRST IN SNUM* STACK SIZE SREAD* STACK DATA
de datos de FIRST OUT READ READ
tabla
SWRIT* STACK DATA SINS* STACK DATA SDEL* STACK DATA
OVERWRITE INSERT DELETE
Procesamiento de DIM DIMENSION SETR SET RECORD GETR GET
1 registro/ RECORD LOCATION RECORD
varios canales TABLE NUMBER
Procesamiento de SRCH DATA SEARCH MX FIND MIN FIND
registro MAXIMUM MINIMUM
a canal SUM SUM FCS FRAME --- ---
CHECKSUM
Procesamiento de SWAP SWAP BYTES --- --- --- ---
Bytes
Instruccio- --- PID PID CONTROL PIDAT* PID CON- LMT LIMIT
nes de con- TROL WITH CONTROL
trol de datos AUTOTUNING
BAND DEAD BAND ZONE DEAD ZONE TPO TIME-PRO-
CONTROL CONTROL (Vase la PORTIONAL
nota 1). OUTPUT
SCL SCALING SCL2 SCALING 2 SCL3 SCALING 3
AVG AVERAGE --- --- --- ---
Instruccio- --- SBS SUBROUTINE MCRO MACRO SBN SUBROUTIN
nes de CALL E ENTRY
subrutinas RET SUBROUTINE GSBS* GLOBAL GSBN* GLOBAL
RETURN SUBROUTINE SUBROUTIN
CALL E ENTRY
GRET* GLOBAL --- --- --- ---
SUBROUTINE
RETURN
Instruccio- --- MSKS*** SET MSKR*** READ INTE- CLI*** CLEAR
nes de INTERRUPT RRUPT MASK INTERRUPT
control de MASK
interrupcin DI DISABLE EI ENABLE --- ---
INTERRUPTS INTERRUPTS
Instruccio- --- INI MODE PRV HIGH-SPEED PRV2 COUNTER
nes de con- CONTROL COUNTER PV (Vase la FRE-
tador de alta READ nota 2). QUENCY
velocidad y CONVERT
salida de CTBL COMPARI- SPED SPEED PULS SET PULSES
impulsos** SON TABLE OUTPUT
LOAD

PLS2 PULSE ACC ACCELERA- ORG ORIGIN


OUTPUT TION Control SEARCH
Instruccio- --- PWM PULSE WITH STEP STEP DEFINE SNXT STEP START
nes VARIABLE
de paso DUTY
FACTOR
Instruccio- --- IORF I/O REFRESH SDEC 7-SEGMENT DSW DIGITAL
nes de Uni- DECODER (Vase la SWITCH
dades de nota 1). INPUT
E/S bsicas TKY TEN KEY HKY HEXADECI- MTR MATRIX
(Vase la INPUT (Vase la MAL KEY (Vase la INPUT
nota 1). nota 1). INPUT nota 1).
7SEG 7-SEGMENT IORD INTELLI- IOWR INTELLI-
(Vase la DISPLAY GENT I/O GENT I/O
nota 1). OUTPUT READ WRITE
DLNK* CPU BUS --- --- --- ---
UNIT I/O
REFRESH
Instruccio- --- PMCR PROTOCOL TXD TRANSMIT RXD RECEIVE
nes de MACRO
comunica- STUP CHANGE --- --- --- ---
ciones serie SERIAL PORT
SETUP

21
Clasificacin de instrucciones por funcin Seccin 2-1

Clasifica- Subclase Nemnico Instruccin Nemnico Instruccin Nemnico Instruccin


cin
Instruccio- --- SEND NETWORK RECV NETWORK CMND DELIVER
nes de red SEND RECEIVE COMMAND
EXPLT SEND GENE- EGATR EXPLICIT ESATR EXPLICIT
(Vase la RAL EXPLICIT (Vase la GET ATTRI- (Vase la SET ATTRI-
nota 1). nota 1). BUTE nota 1). BUTE
ECHRD EXPLICIT ECHWR EXPLICIT --- ---
(Vase la WORD READ (Vase la WORD
nota 1). nota 1). WRITE
Instruccio- --- MSG DISPLAY --- --- --- ---
nes de MESSAGE
visualiza-
cin
Instruccio- --- FREAD READ DATA FWRIT WRITE DATA --- ---
nes de FILE FILE
memoria de
archivos
Instruccio- --- CADD CALENDAR CSUB CALENDAR SEC HOURS TO
nes ADD SUBTRACT SECONDS
de reloj HMS SECONDS TO DATE CLOCK --- ---
HOURS ADJUST-
MENT
Instruccio- --- TRSM TRACE --- --- --- ---
nes de MEMORY
depuracin SAMPLING
Instruccio- --- FAL FAILURE FALS SEVERE FPD FAILURE
nes de ALARM FAILURE POINT
diagnstico ALARM DETECTION
de fallos
Otras --- STC SET CARRY CLC CLEAR EMBC SELECT EM
instruccio- CARRY BANK
nes WDT EXTEND CCS* SAVE CONDI- CCL* LOAD
MAXIMUM TION FLAGS CONDITION
CYCLE TIME FLAGS
FRMCV* CONVERT TOCV* CONVERT IOSP*** DISABLE
ADDRESS ADDRESS TO PERIPHE-
FROM CV CV RAL
SERVICING
IORS*** ENABLE --- --- --- ---
PERIPHERAL
SERVICING
Instruccio- Definicin del rea BPRG BLOCK PRO- BEND BLOCK PRO- --- ---
nes de de programa de GRAM BEGIN GRAM END
programa- bloques
cin de blo- Inicio/parada de BPPS BLOCK BPRS BLOCK --- ---
ques programa de PROGRAM PROGRAM
bloques PAUSE RESTART
EXIT EXIT Conditional EXIT NOT Conditional input_condition Conditional
bit_address END bit_address END NOT EXIT END
Procesamiento IF CONDITIO- IF NOT CONDITIO- ELSE CONDITIO-
de bifurcacin IF bit_address NAL BLOCK bit_address NAL BLOCK NAL BLOCK
BRANCHING BRANCHING BRANCHING
(NOT) (ELSE)
IEND CONDITIO- --- --- --- ---
NAL BLOCK
BRANCHING
END
WAIT WAIT ONE CYCLE WAIT NOT ONE CYCLE input_condition ONE CYCLE
bit_address AND WAIT bit_address AND WAIT WAIT AND WAIT
NOT
Tempo- BCD TIMW TIMER WAIT CNTW COUNTER TMHW HIGH-SPEED
rizador/ WAIT TIMER WAIT
conta- Binario* TIMWX TIMER WAIT CNTWX COUNTER TMHWX HIGH-SPEED
dor WAIT TIMER WAIT
Repetir LOOP LOOP BLOCK LEND LOOP BLOCK LEND NOT LOOP BLOCK
bit_address END bit_address END NOT
input_ LOOP BLOCK --- --- --- ---
condition END
LEND

22
Clasificacin de instrucciones por funcin Seccin 2-1

Clasifica- Subclase Nemnico Instruccin Nemnico Instruccin Nemnico Instruccin


cin
Instruccio- --- MOV$ MOV STRING +$ CONCATE- LEFT$ GET STRING
nes de pro- NATE LEFT
cesamiento STRING
de cadenas RIGHT$ GET STRING MID$ GET STRING FIND$ FIND IN
de texto RIGHT MIDDLE STRING
LEN$ STRING RPLC$ REPLACE IN DEL$ DELETE
LENGTH STRING STRING
XCHG$ EXCHANGE CLR$ CLEAR INS$ INSERT INTO
STRING STRING STRING
LD, AND, OR STRING --- --- --- ---
+ COMPARISON
=$, <>$, <$,
<=$, >$, >=$
Instruccio- --- TKON TASK ON TKOF TASK OFF --- ---
nes de
control de
tareas

23
Funciones de las instrucciones Seccin 2-2

2-2 Funciones de las instrucciones


2-2-1 Instrucciones de la entrada de secuencia
*1: No se admite en las CPUs CS1D para sistemas de CPU doble.
*2: Slo se admite en las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
*3
: Slo se admite en las CPUs CS1-H, CJ1-H y CJ1M.
Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
LOAD Barra de Indica un inicio lgico y crea una condicin de ejecucin ON/OFF Inicio de blo- 153
LD basada en el estado ON/OFF del bit de operando especificado. que lgico
bus
@LD No requerida
%LD
!LD*1
!@LD*1 Punto de
!%LD*1 inicio de
bloque

LOAD NOT Indica un inicio lgico y crea una condicin de ejecucin ON/OFF Inicio de blo- 155
Barra de basada en la inversin del estado ON/OFF del bit de operando que lgico
LD NOT bus especificado. No requerida
@LD NOT*2
%LD NOT*2
!LD NOT*1 Punto
!@LD NOT*3 de inicio
!%LD NOT*3 de
bloque

AND Realiza una operacin AND lgica del estado del bit de operando En el escaln 157
AND especificado y la condicin de ejecucin actual. Requerida
@AND
%AND
!AND*1
!@AND*1
!%AND*1
AND NOT Invierte el estado del bit de operando especificado y realiza una En el escaln 159
AND NOT operacin AND lgica con la condicin de ejecucin actual. Requerida
@AND NOT*2
%AND NOT*2
!AND NOT*1
!@AND NOT*3
!%AND NOT*3
OR Barra de Realiza una operacin OR lgica del estado ON/OFF del bit de En el escaln 161
OR bus operando especificado y la condicin de ejecucin actual. Requerida
@OR
%OR
!OR*1
!@OR*1
!%OR*1
OR NOT Barra de Invierte el estado del bit especificado y toma un OR lgico con la En el escaln 163
OR NOT bus condicin de ejecucin actual. Requerida
@OR NOT*2
%OR NOT*2
!OR NOT*1
!@OR NOT*3
!%OR NOT*3

24
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
AND LOAD Bloque lgico Bloque lgico Ejecuta una AND lgica entre bloques lgicos. En el escaln 164
AND LD Requerida
LD
Bloque lgico A
a

LD
Bloque lgico B
a

AND LD Conexin en serie entre el bloque


lgico A y el bloque lgico B.

OR LOAD Ejecuta una OR lgica entre bloques lgicos. En el escaln 166


OR LD Bloque lgico Requerida
Bloque lgico LD
Bloque lgico A
a

LD
Bloque lgico B
a

OR LD Conexin en paralelo entre el bloque


lgico A y el bloque lgico B.

NOT --- Invierte la condicin de ejecucin. En el escaln 172


NOT Requerida
520
CONDITION ON UP(521) pone en ON la condicin de ejecucin para un ciclo cuando En el escaln 173
UP UP(521) la condicin de ejecucin pasa de OFF a ON. Requerida
521
CONDITION OFF DOWN(522) pone en ON la condicin de ejecucin durante un ciclo En el escaln 173
DOWN DOWN(522) cuando la condicin de ejecucin pasa de ON a OFF. Requerida
522
BIT TEST LD TST(350), AND TST(350) y OR TST(350) se utilizan en el pro- En el escaln 174
LD TST TST(350) grama como LD, AND y OR; la condicin de ejecucin est en ON No requerida
350 cuando el bit especificado del canal especificado est en ON y en
S OFF cuando el bit est en OFF.
N
S: Canal fuente
N: Nmero de bit
BIT TEST LD TSTN(351), AND TSTN(351) y OR TST(351) se utilizan en el pro- En el escaln 174
LD TSTN TSTN(351) grama como LD, NOT, AND NOT y OR NOT; la condicin de ejecucin No requerida
351 est en OFF cuando el bit especificado del canal especificado est en
S ON y en ON cuando el bit est en OFF.
N
S: Canal fuente
N: Nmero de bit
BIT TEST LD TST(350), AND TST(350) y OR TST(350) se utilizan en el pro- En el escaln 174
AND TST AND TST(350) grama como LD, AND y OR; la condicin de ejecucin est en ON Requerida
350 cuando el bit especificado del canal especificado est en ON y en
S OFF cuando el bit est en OFF.
N
S: Canal fuente
N: Nmero de bit
BIT TEST LD TSTN(351), AND TSTN(351) y OR TST(351) se utilizan en el pro- En el escaln 174
AND TSTN
AND TSTN(351) grama como LD, NOT, AND NOT y OR NOT; la condicin de ejecucin Requerida
est en OFF cuando el bit especificado del canal especificado est en
351 S ON y en ON cuando el bit est en OFF.
N
S: Canal fuente
N: Nmero de bit

25
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
BIT TEST LD TST(350), AND TST(350) y OR TST(350) se utilizan en el pro- En el escaln 174
OR TST TST(350) grama como LD, AND y OR; la condicin de ejecucin est en ON Requerida
350 cuando el bit especificado del canal especificado est en ON y en
S OFF cuando el bit est en OFF.
N
S: Canal fuente
N: Nmero de bit

BIT TEST LD TSTN(351), AND TSTN(351) y OR TST(351) se utilizan en el pro- En el escaln 174
TSTN(351) grama como LD, NOT, AND NOT y OR NOT; la condicin de ejecucin Requerida
OR TSTN
est en OFF cuando el bit especificado del canal especificado est en
351 S ON y en ON cuando el bit est en OFF.
N
S: Canal fuente
N: Nmero de bit

2-2-2 Instrucciones de la salida de secuencia


*1: No se admite en las CPUs CS1D para sistemas de CPU doble.
Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
OUTPUT Enva el resultado (condicin de ejecucin) del procesamiento lgico Salida 177
OUT al bit especificado. Requerida
!OUT*1

OUTPUT NOT Invierte el resultado (condicin de ejecucin) del procesamiento Salida 178
OUT NOT lgico y lo enva al bit especificado. Requerida
!OUT NOT*1

KEEP Funciona como rel de enclavamiento. Salida 180


S (Set) KEEP(011)
KEEP Requerida
!KEEP*1 B Configurar
R (Reset)
011 B: Bit

Reset

Condicin de
ejecucin de S

Condicin de
ejecucin de R

Estado de B
DIFFERENTIATE Salida 184
UP DIFU(013) DIFU(013) pone en ON el bit designado durante un ciclo
cuando la condicin de ejecucin pasa de OFF a ON Requerida
DIFU B (flanco de subida).
!DIFU*1
B: Bit Condicin de ejecucin
013

Estado de B

Un ciclo

26
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DIFFERENTIATE DIFD(014) pone en ON el bit designado durante un ciclo cuando Salida 184
DOWN DIFD(014) Requerida
la condicin de ejecucin pasa de ON a OFF (flanco de bajada).
DIFD B
!DIFD*1
Condicin de ejecucin
B: Bit
014

Estado de B
Un ciclo
SET SET pone el bit de operando en ON cuando la condicin de Salida 187
SET SET ejecucin est en ON. Requerida
@SET B Condicin de
%SET ejecucin de SET
!SET*1 B: Bit
!@SET*1
!%SET*1 Estado de B

RESET RSET pone el bit de operando en OFF cuando la condicin de Salida 187
RSET RSET ejecucin est en ON. Requerida
@RSET Condicin de
%RSET B
ejecucin de RSET
!RSET*1 B: Bit
!@RSET*1
!%RSET*1 Estado de B
MULTIPLE BIT SETA(530) pone en ON el nmero especificado de bits consecutivos. Salida 189
SET SETA(530) Requerida
SETA D
@SETA
530 N1 Los bits N2 se
seleccionan en 1
N2 (ON).
D: Canal inicial
N1: Bit de inicio
N2: Nmero de
bits

MULTIPLE BIT RSTA(531) pone en OFF el nmero especificado de bits consecutivos. Salida 189
RESET RSTA(531) Requerida
RSTA
@RSTA D
531 N1 Los bits N2 se
restablecern a 0
N2 (OFF).
D: Canal inicial
N1: Bit de inicio
N2: Nmero de
bits

SINGLE BIT SET SETB(532) activa el bit especificado en el canal especificado cuando Salida 192
(slo CS1-H, SETB(532) la condicin de ejecucin est en ON. Requerida
CJ1-H, CJ1M o A diferencia de la instruccin SET, SETB(532) puede utilizarse para
CS1D) D poner a ON un bit en un canal de DM o EM.
SETB N
@SETB
!SETB*1 D: Direccin de
!@SETB*1 canal
N: Nmero de bit

27
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
SINGLE BIT RSTB(533) desactiva el bit especificado en el canal especificado Salida 192
RESET (slo RSTB(533) cuando la condicin de ejecucin est en ON. Requerida
CS1-H, CJ1-H, A diferencia de la instruccin RSET, RSTB(533) puede utilizarse para
CJ1M o CS1D) D poner a OFF un bit en un canal de DM o EM.
RSTB N
@RSTB
*1
!RSTB D: Direccin de can
!@RSTB*1 N: Nmero de bit

SINGLE BIT OUTB(534) enva el resultado (condicin de ejecucin) del procesa- Salida 195
OUTPUT (slo OUTB(534) miento lgico al bit especificado. Requerida
CS1-H, CJ1-H, A diferencia de la instruccin OUT, OUTB(534) puede utilizarse para
CJ1M o CS1D) D
controlar un bit en un canal de DM o EM.
OUTB N
@OUTB
!OUTB*1 D: Direccin de
canal
N: Nmero de bit

28
Funciones de las instrucciones Seccin 2-2

2-2-3 Instrucciones del control de secuencia


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin
Nemnico de ejecucin
END Indica el final de un programa. Salida 197
END END(001) No requerida
END(001) completa la ejecucin de un programa para ese ciclo. No
001 se ejecutarn instrucciones que se hayan escrito despus de
END(001). La ejecucin pasa al programa con el siguiente nmero
de tarea. Cuando el programa que se est ejecutando tiene el
nmero de tarea ms alto del programa, END(001) marca el final del
programa principal global.

Tarea 1 Programa A

Al siguiente nmero de tarea

Tarea 2 Programa B

Al siguiente nmero de tarea

Tarea n Programa Z

Final del programa principal

Refresco de E/S

NO OPERATION Esta instruccin no tiene funcin. (No se ejecuta procesamiento para Salida 198
NOP NOP(000)). No requerida
000
INTERLOCK Bloquea todas las salidas entre IL(002) e ILC(003) cuando la Salida 201
IL IL(002) condicin de ejecucin para IL(002) est en OFF. IL(002) e Requerida
002 ILC(003) se suelen utilizar en parejas.
Condicin de Condicin de
Condicin de ejecucin ON ejecucin OFF
ejecucin

Seccin enclavada Ejecucin Salidas


del programa normal enclavadas.

29
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de ejecucin
INTERLOCK Bloquea todas las salidas entre IL(002) e ILC(003) cuando la condicin Salida 201
CLEAR ILC(003) de ejecucin para IL(002) est en OFF. IL(002) e ILC(003) se suelen No requerida
ILC utilizar en parejas.
003
MULTI-INTER- Si la condicin de ejecucin de MILH(517) est en OFF, se bloquean Salida 205
LOCK DIFFE- MILH (517) las salidas de todas las instrucciones entre esa instruccin MILH(517) Requerida
RENTIATION y la siguiente instruccin MILC(519). Las instrucciones MILH(517) y
HOLD N MILC(519) se utilizan como una pareja.
MILH D Los bloqueos de la pareja de instrucciones MILH(517)/MILC(519) se
517 N: Nmero de pueden anidar (por ejemplo, MILH(517)MILH(517)MILC(519)
MILC(519)).
CPUs de la serie enclavamiento
CS/CJ Ver. 2.0 D: Bit de estado de En el caso de que haya una instruccin de diferencial (DIFU, DIFD o
posterior solamente enclavamiento una instruccin con un prefijo @ o %) entre MILH(517) y la correspon-
diente instruccin MILC(519), dicha instruccin se ejecutar una vez
eliminado el bloqueo si estaba establecida la condicin diferencial de
la instruccin.
MULTI-INTER- Si la condicin de ejecucin de MILR(518) est en OFF, se bloquean Salida 205
LOCK DIFFE- MILR (518) las salidas de todas las instrucciones entre esa instruccin MILR(518) Requerida
RENTIATION y la siguiente instruccin MILC(519). Las instrucciones MILR(518) y
RELEASE N MILC(519) se utilizan como una pareja.
MILR Los bloqueos de la pareja de instrucciones MILR(518)/MILC(519) se
D pueden anidar (por ejemplo, MILR(518)MILR(518)MILC(519)
518
N: Nmero de MILC(519)).
CPUs de la serie enclavamiento
CS/CJ Ver. 2.0 D: Bit de estado de En el caso de que haya una instruccin de diferencial (DIFU, DIFD o
posterior solamente enclavamiento una instruccin con un prefijo @ o %) entre MILR(518) y la correspon-
diente instruccin MILC(519), dicha instruccin se ejecutar una vez
eliminado el bloqueo incluso si estaba establecida la condicin diferen-
cial de la instruccin.
MULTI-INTER- Elimina un bloqueo iniciado por una instruccin MILH(517) o Salida 205
LOCK CLEAR MILC (519) MILR(518) con el mismo nmero de bloqueo. No requerida
MILC N Se bloquean todas las salidas entre MILH(517)/MILR(518) y la corres-
519 pondiente instruccin MILC(519) con el mismo nmero de bloqueo
N: Nmero de cuando la condicin de ejecucin de MILH(517)/MILR(518) est en
CPUs de la serie enclavamiento
OFF.
CS/CJ Ver. 2.0
posterior solamente
JUMP Salida 219
JMP(004) Si la condicin de ejecucin de JMP(004) es OFF, la ejecucin del
JMP programa salta directamente a la primera JME(005) del programa Requerida
004 N con el mismo nmero de salto. JMP(004) y JME(005) se utilizan en
parejas.
N: Nmero de salto Condicin de ejecucin
Instrucciones
saltadas
Las instrucciones de esta
seccin no se ejecutan y
se mantiene el estado de
Instruccione salida. El tiempo de
s ejecutadas ejecucin de estas
instrucciones se elimina.

JUMP END Indica el final de una salto iniciado por JMP(004) o CJP(510). Salida 219
JME JME(005) No requerida
005 N
N: Nmero de salto

30
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de ejecucin
CONDITIONAL La operacin de CJP(510) es bsicamente opuesta a JMP(004). Salida 223
JUMP CJP(510) Si la condicin de ejecucin de CJP(510) es ON, la ejecucin del Requerida
CJP programa salta directamente a la primera JME(005) del programa con
N
510 el mismo nmero de salto. CJP(510) y JME(005) se utilizan en
N: Nmero de salto parejas.
Condicin de Condicin de
ejecucin OFF ejecucin ON
Instrucciones
saltadas

Las instrucciones de esta


Instrucciones seccin no se ejecutan y
ejecutadas se mantiene el estado de
salida. El tiempo de
ejecucin de estas
instrucciones se elimina.

CONDITIONAL La operacin de CJPN(511) es casi idntica a JMP(004). Salida 223


JUMP CJPN(511) Si la condicin de ejecucin de CJP(004) es OFF, la ejecucin del No requerida
CJPN programa salta directamente a la primera JME(005) del programa con el
N
511 mismo nmero de salto. CJPN(511) y JME(005) se utilizan en parejas.
N: Nmero de salto
Condicin de Condicin de
ejecucin ON ejecucin OFF
Instrucciones
saltadas

Las instrucciones de esta


seccin no se ejecutan y
Instrucciones se mantiene el estado de
ejecutadas salida. El tiempo de
ejecucin de estas
instrucciones se elimina.

MULTIPLE Salida 227


JUMP JMP0(515) Si la condicin de ejecucin para JMP0(515) es OFF, todas las
instrucciones desde JMP0(515) hasta el siguiente JME0(516) del Requerida
JMP0 programa se procesan como NOP(000). Utilice JMP0(515) y
515 JME0(516) en parejas. No existe lmite para el nmero de parejas que
se pueden utilizar en el programa.
Condicin de Condicin de
ejecucin a ON ejecucin a OFF
Instrucciones
saltadas
Instrucciones
ejecutadas

Las instrucciones
saltadas se procesan
Condicin de Condicin de como NOP(000). Los
ejecucin b ON ejecucin b tiempos de ejecucin
de instruccin son los
mismos que NOP(000).

Instrucciones
ejecutadas

Instrucciones
saltadas
MULTIPLE Si la condicin de ejecucin para JMP0(515) es OFF, todas las instruc- Salida 227
JUMP END JME0(516) ciones desde JMP0(515) hasta el siguiente JME0(516) del programa No requerida
JME0 se procesan como NOP(000). Utilice JMP0(515) y JME0(516) en pare-
516 jas. No existe lmite para el nmero de parejas que se pueden utilizar
en el programa.

31
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de ejecucin
FOR-NEXT Salida 229
LOOPS FOR(512) Las instrucciones entre FOR(512) y NEXT(513) se repiten un
nmero concreto de veces. FOR(512) y NEXT(513) se utilizan en No requerida
FOR N parejas.
512
N: Nmero de
Repetido N veces
lazos

Seccin de programa repetida

BREAK LOOP Salida 232


BREAK(514) Programada en un lazo FOR-NEXT para cancelar la ejecucin del
BREAK lazo en una condicin de ejecucin dada. Las instrucciones restantes Requerida
514 del lazo se procesan como instrucciones NOP(000).
Condicin a ON
N repeticiones

Repeticiones
forzadas a
finalizar.

Procesada
como
NOP(000).

FOR-NEXT Las instrucciones entre FOR(512) y NEXT(513) se repiten un nmero Salida 229
LOOPS NEXT(513) concreto de veces. FOR(512) y NEXT(513) se utilizan en parejas. No requerida
NEXT
513

32
Funciones de las instrucciones Seccin 2-2

2-2-4 Instrucciones de temporizador y contador


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
TIMER TIM/TIMX(550) opera un temporizador de disminucin con unidades de Salida 235
TIM TIM Requerida
0,1 s. El rango de seleccin para el valor seleccionado (SV) es 0 a
(BCD) N 999,9 s para BCD y 0 a 6.553,5 s para binario (decimal o hexadecimal).
TIMX S Entrada del
(Binario) N: Nmero de temporizador
(Slo CS1-H, temporizador
CJ1-H, CJ1M o S: Valor PV del SV
CS1D) seleccionado
temporizador
TIMX(550) Indicador de
N finalizacin

S
Entrada del
N: Nmero de temporizador
temporizador
S: Valor PV del SV
seleccionado temporizador

Indicador de
finalizacin

HIGH-SPEED TIMH(015)/TIMHX(551) opera un temporizador de disminucin con unidades de Salida 240


TIMER TIMH(015)
10 ms. El rango de seleccin para el valor seleccionado (SV) es 0 a 99,99 s para Requerida
TIMH N BCD y 0 a 655,35 s para binario (decimal o hexadecimal).
015 S
(BCD) Entrada del
N: Nmero de temporizador
temporizador
TIMHX S: Valor SV
PV del
551 seleccionado
(Binario) temporizador
(Slo CS1-H,
CJ1-H, CJ1M o TIMHX(551) Indicador de
CS1D) finalizacin
N
S Entrada del
N: Nmero de temporizador
temporizador
S: Valor PV del SV
seleccionado temporizador

Indicador de
finalizacin

ONE-MS TIMER TMHH(540)/TMHHX(552) opera un temporizador descendente con Salida 244


TMHH TMHH(540) unidades de 1 ms. El rango de configuracin del valor seleccionado Requerida
(SV) va de 0 a 9,999 s para BCD y de 0 a 65,535 s para binario
540 N (decimal o hexadecimal).
(BCD)
S Los cronogramas para TMHH(540) y TMHHX(552) son los mismos
N: Nmero de que los indicados anteriormente para TIMH(015).
TMHHX
temporizador
552
(BCD) S: Valor
(Slo CS1-H, seleccionado
CJ1-H, CJ1M o
CS1D) TMHHX(552)

N
S
N: Nmero de
temporizador
S: Valor
seleccionado

33
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
ACCUMULA- TTIM(087)/TTIMX(555) opera un temporizador incremental con Salida 247
Entrada
TIVE TIMER del TTIM(087) unidades de 0,1 s. El rango de seleccin para el valor seleccionado Requerida
TTIM tempori- (SV) es 0 a 999,9 s para BCD y 0 a 6.553,5 s para binario (decimal
N o hexadecimal).
087 zador
(BCD) S Entrada del
Entrada de reset temporizador
TTIMX N: Nmero de PV del
555 temporizador temporizador SV
(Binario) S: Valor
seleccionado Se reanuda
(Slo CS1-H, la temporizacin..
CJ1-H, CJ1M o
CS1D) Se mantiene
Entrada el PV.
del TTIMX(555)
tempo- N
rizador Finalizacin
S Indicador
Entrada de reset
Entrada de
N: Nmero de
reset
temporizador
S: Valor
seleccionado
LONG TIMER TIML(542)/TIMLX(553) opera un temporizador de disminucin con Salida 251
TIML TIML(542) Requerida
unidades de 0,1 s que pueden alcanzar aproximadamente 115 das
542 D1 para BCD y 49.710 das para binario (decimal o hexadecimal).
(BCD)
D2 Entrada del
temporizador
TIMLX S
553 SV
PV del temporizador
(Binario) D1: Indicador de
(Slo CS1-H, finalizacin
CJ1-H, CJ1M o D2: Canal PV
CS1D) S: Canal SV Indicador de
finalizacin
(Bit 00 de D1)
TIMLX(553)

D1
D2
S

D1: Indicador de
finalizacin
D2: Canal PV
S: Canal SV

34
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
MULTI-OUTPUT MTIM(543)/MTIMX(554) opera un temporizador de 0,1 s con 8 SV Salida 254
TIMER MTIM(543) Requerida
independientes e indicadores de finalizacin. El rango de seleccin
MTIM
D1 para el valor seleccionado (SV) es 0 a 999,9 s para BCD y 0 a
543
(BCD) 6.553,5 s para binario (decimal o hexadecimal).
D2 PV del temporizador
S
MTIMX
554 D1: Indicadores de
(Binario) finalizacin SV del temporizador 0
(Slo CS1-H, D2: Canal PV
CJ1-H, CJ1M o S: Primer canal
CS1D) de SV
a
a
MTIMX(554)

D1
D2 Entrada del
temporizador
S
D1: Indicadores SV 7
de finalizacin a
D2: Canal PV SV 2
S: Primer canal PV del SV 1
de SV temporizador (D2) SV 0
0

Indicadores de Bit 7
finalizacin a
(D1) Bit 2

Bit 1

Bit 0

COUNTER Entrada CNT/CNTX(546) opera un contador de disminucin. El rango de Salida 260


CNT de CNT seleccin para el valor seleccionado (SV) es 0 a 9.999 para BCD Requerida
(BCD) contaje N y 0 a 65.535 para binario (decimal o hexadecimal).
S Entrada de contaje
CNTX Entrada
546 de reset
(Binario) N: Nmero de Entrada de reset
(Slo CS1-H, contador
CJ1-H, CJ1M o S: Valor
CS1D) seleccionado SV
PV del contador

Entrada
de CNTX(546)
contaje Finalizacin
N
Indicador
S
Entrada
de reset
N: Nmero de
contador
S: Valor
seleccionado

35
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
REVERSIBLE Salida 263
COUNTER
Entrada CNTR(012)/CNTRX(548) opera un contador reversible.
de
aumento
CNTR(012) Requerida
CNTR N
Entrada
012 de dis-
Entrada de aumento
(BCD) minucin S

Entrada
CNTRX de reset
Entrada de disminucin
548 N: Nmero de
(Binario) contador
(Slo CS1-H, S: Valor
CJ1-H, CJ1M o seleccionado
CS1D) PV del contador
Entrada
de CNTRX(548)
aumento N SV
Entrada PV del contador
de dis- S
minucin
Entrada
+1
de reset
N: Nmero de
contador Indicador de
S: Valor finalizacin
seleccionado

SV 1
PV del contador

Indicador de
finalizacin

RESET TIMER/ CNR(545)/CNRX(547) restablece los temporizadores o contadores Salida 267


COUNTER CNR(545) dentro del rango especificado de nmeros de temporizador o contador. Requerida
CNR Establece el valor seleccionado (SV) hasta un mximo de 9999.
N1
@CNR
545 N2
(BCD)
N1: Primer
nmero del rango
CNRX
@CNRX N2: ltimo nmero
547 en el rango
(Binario)
(Slo CS1-H,
CJ1-H, CJ1M o CNRX(547)
CS1D) N1
N2
N1: Primer
nmero del rango
N2: ltimo
nmero en el
rango

36
Funciones de las instrucciones Seccin 2-2

2-2-5 Instrucciones de comparacin


*1
: No se admite en las CPUs CS1D para sistemas de CPU doble.
Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin
Nemnico de
ejecucin
Comparacin de Las instrucciones de comparacin de smbolos (sin signo) comparan LD: No 275
smbolos (sin Smbolo y opciones requerida
dos valores (constantes y/o el contenido de canales concretos) en
signo) datos binarios de 16 bits y crean una condicin de ejecucin ON si la AND, OR:
S1 Obligatoria
LD, AND, OR + =, condicin de comparacin es verdadera. Existen tres tipos de
<>, <, <=, >, >= S2 instrucciones de comparacin de smbolos, LD (LOAD), AND y OR.
300 (=) Condicin de ejecucin ON si
305 (<>) S1: Datos de LD el resultado de la comparacin
310 (<) comparacin 1 es verdadero.
315 (<=) S2: Datos de <
320 (>) comparacin 2
325(>=)

Condicin de ejecucin ON
AND si el resultado de la com-
paracin es verdadero.
<

OR

<
Condicin de ejecucin ON si el
resultado de la comparacin es
verdadero.

Comparacin de S1: Datos de Las instrucciones de comparacin de smbolos (dos canales, sin signo) LD: No 275
smbolos (dos comparacin 1 comparan dos valores (constantes y/o el contenido de los datos de dos requerida
canales, sin S2: Datos de canales especificados) en datos binarios de 32 bits sin signo y crean AND, OR:
signo) una condicin de ejecucin ON si la condicin de comparacin es ver- Obligatoria
comparacin 2 dadera. Existen tres tipos de instrucciones de comparacin de smbo-
LD, AND, OR + =,
<>, <, <=, >, >= + los, LD (LOAD), AND y OR.
L
301 (=)
306 (<>)
311 (<)
316 (<=)
321 (>)
326 (>=)
Comparacin de S1: Datos de Las instrucciones de comparacin de smbolos (con signo) comparan LD: No 275
smbolos (con comparacin 1 dos valores (constantes y/o el contenido de canales especificados) en requerida
signo) S2: Datos de datos binarios de 16 bits con signo (hexadecimales de 4 dgitos) y crean AND, OR:
LD, AND, OR + =, una condicin de ejecucin ON si la condicin de comparacin es ver- Obligatoria
comparacin 2 dadera. Existen tres tipos de instrucciones de comparacin de smbo-
<>, <, <=, >, >=
+S los, LD (LOAD), AND y OR.
302 (=)
307 (<>)
312 (<)
317 (<=)
322 (>)
327 (>=)

37
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de
ejecucin
Comparacin de S1: Datos de com- Las instrucciones de comparacin de smbolos (dos canales, con signo) LD: No 275
smbolos (dos paracin 1 comparan dos valores (constantes y/o el contenido de los datos de dos requerida
canales, con S2: Datos de com- canales especificados) en datos binarios de 32 bits con signo (hexade- AND, OR:
signo) cimales de 8 dgitos) y crean una condicin de ejecucin ON si la condi- Obligatoria
paracin 2 cin de comparacin es verdadera. Existen tres tipos de instrucciones
LD, AND, OR + =,
<>, <, <=, >, >= de comparacin de smbolos, LD (LOAD), AND y OR.
+SL
303 (=)
308 (<>)
313 (<)
318 (<=)
323 (>)
328 (>=)
Comparacin de LD (LOAD): Las instrucciones de comparacin de tiempo comparan dos valores de LD: No 281
tiempo tiempo BCD y crean una condicin de ejecucin en ON si la condicin requerida
LD, AND, OR + = Smbolo de comparacin es verdadera. AND, OR:
DT, <> DT, < DT, Existen tres tipos de instrucciones de comparacin de tiempo, LD Obligatoria
<= DT, > DT, >= C (LOAD), AND y OR. Los valores de tiempo (ao, mes, da, hora, minuto
DT y segundo) se pueden enmascarar o desenmascarar en la compara-
S1 cin, por lo que resulta sencillo crear funciones de temporizador de
341 (= DT)
S2 calendario.
342 (<> DT)
343 (< DT)
344 (<= DT)
345 (> DT) AND:
346 (>= DT)
(CPUs de la serie Smbolo
CS/CJ Ver. 2.0 C
posterior sola-
mente) S1
S2

OR:
Smbolo
C
S1
S2
C: Canal de
control
S1: Primer canal
de tiempo
actual
S2: Primer canal

UNSIGNED Compara dos valores binarios sin signo (constantes y/o el contenido Salida 287
COMPARE CMP(020)
de canales concretos) y enva el resultado a los indicadores Requerida
CMP S1 aritmticos del rea auxiliar.
!CMP*1
S2 Comparacin
020 binaria sin signo
S1: Datos de
comparacin 1
S2: Datos de Indicadores
comparacin 2 aritmticos

DOUBLE Salida 290


UNSIGNED CMPL(060) Compara dos valores binarios dobles sin signo (constantes y/o el
contenido de canales concretos) y enva el resultado a los Requerida
COMPARE
S1 indicadores aritmticos del rea auxiliar.
CMPL
060 S2 Comparacin
binaria sin signo
S1: Datos de S1+1 S2+1
comparacin 1
S2: Datos de
comparacin 2 Indicadores aritmticos
(>, >=, =, <=, <, <>)

38
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de
ejecucin
SIGNED Compara dos valores binarios con signo (constantes y/o el contenido Salida 293
BINARY COM- CPS(114) de canales concretos) y enva el resultado a los indicadores Requerida
PARE aritmticos del rea auxiliar.
S1
CPS Comparacin
!CPS*1 S2 binaria con signo
114
S1: Datos de
comparacin 1
S2: Datos de Indicadores aritmticos
comparacin 2 (>, >=, =, <=, <, <>)

DOUBLE SIG- Compara dos valores binarios dobles con signo (constantes y/o el Salida 296
NED BINARY CPSL(115) contenido de canales concretos) y enva el resultado a los Requerida
COMPARE indicadores aritmticos del rea auxiliar.
CPSL S1
Comparacin
115 S2 binaria con signo
S1: Datos de S1+1 S2+1
comparacin 1
S2: Datos de
comparacin 2 Indicadores aritmticos
(>, >=, =, <=, <, <>)

MULTIPLE Compara 16 canales consecutivos con otros 16 canales Salida 299


COMPARE MCMP(019) consecutivos y pone en ON el bit correspondiente del canal de Requerida
MCMP resultado si los contenidos de los canales no son iguales.
@MCMP
S1
Comparacin R
019 S2
0: Canales
R iguales.
S1: Primer canal 1: Canales
del juego 1 distintos.
S2: Primer canal
del juego 2
R: Canal de
resultado

TABLE Compara los datos fuente con los contenidos de 16 canales pone Salida 301
COMPARE TCMP(085) Requerida
en ON el bit correspondiente del canal de resultado si los
TCMP
@TCMP S contenidos son iguales.
Comparacin R
085 T 1: Datos
iguales.
R 0: Datos
S: Datos fuente distintos.
T: Primer canal
de la tabla
R: Canal de
resultado

UNSIGNED Salida 304


BLOCK BCMP(068) Compara los datos fuente con 16 rangos (definidos por 16 lmites
inferiores y 16 superiores) y pone en ON el bit correspondiente en el Requerida
COMPARE S canal de resultado si los datos fuente estn dentro del rango.
BCMP
@BCMP T Rangos
068 1: En el rango
R 0: Fuera del rango
S: Datos fuente Lmite inferior Lmite superior R
T: Primer canal a T+1 0
de la tabla T
R: Canal de 1
resultado Datos fuente T+2 a T+3
S

T+28 a T+29 14
T+30 a T+31 15

39
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de
ejecucin
EXPANDED Compara los datos de origen hasta un mximo de 256 rangos (definidos Salida 306
BLOCK BCMP2(502) por los lmites superior e inferior), y pone en ON el bit correspondiente Requerida
COMPARE
S en el canal resultante si los datos de origen estn dentro del rango.
BCMP2
@BCMP2 T
502 1: En el rango
R T N n=255 mx. 0: Fuera del rango
(CPUs CS1-H, D Bit
CJ1-H, o CS1D S: Datos fuente
Ver. 2.0 poste- T+1 Rango 0 A Rango 0 B T+2 0
T: Primer canal
rior solamente) del bloque Datos fuente T+3 Rango 1 A Rango 1 B T+4 1
CPU CJ1M (Pre- R: Canal de
Ver. 2.0 oVer. 2.0 S
resultado
posterior)
D+15 mx.
T+2N+1 Rango N A Rango N B T+2N+2

Nota: A puede ser menor que o


igual que B o mayor que B.

AREA RANGE Compara el valor binario sin signo de 16 bits de CD (contenidos de Salida 310
COMPARE ZCP(088) canal o constante ) con el rango definido por LL y UL y enva el resul- Requerida
ZCP tado a los indicadores aritmticos del rea auxiliar.
CD
@ZCP
088 LL
(Slo CS1-H,
CJ1-H, CJ1M o UL
CS1D)
CD: Compara
datos (1 canal)
LL: Lmite inferior
del rango
UL: Lmite superior
del rango

DOUBLE AREA Compara el valor binario sin signo de 32 bits de CD y CD+1 (contenidos Salida 313
RANGE ZCPL(116) de canal o constante ) con el rango definido por LL y UL y enva el Requerida
COMPARE resultado a los indicadores aritmticos del rea auxiliar.
CD
ZCPL
@ZCPL LL
116
(Slo CS1-H, UL
CJ1-H, CJ1M o
CS1D) CD: Comparar
datos (2 canales)
LL: Lmite inferior
del rango
UL: Lmite
superior del rango

40
Funciones de las instrucciones Seccin 2-2

2-2-6 Instrucciones de transferencia de datos


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
MOVE Salida 315
MOV(021) Transfiere un canal de datos al canal especificado.
MOV Requerida
@MOV S Canal fuente
!MOV
!@MOV D
021
S: Origen
D: Destino Estado del bit
no modificado.

Canal de destino

DOUBLE MOVE Transfiere dos canales de datos a los canales especificados. Salida 318
MOVL(498)
MOVL S S+1 Requerida
@MOVL S
498
D
S: Primer canal Estado del bit no
fuente modificado.
D: Primer canal
D D+1
de destino

MOVE NOT Transfiere el complemento de un canal de datos al canal especificado. Salida 317
MVN MVN(022) Requerida
@MVN Canal fuente
S
022
D
S: Origen
D: Destino Estado del bit
invertido.

Canal de destino

DOUBLE MOVE Transfiere el complemento de dos canales de datos a los canales especificados.
Salida 320
NOT MVNL(499)
S S+1
Requerida
MVNL S
@MVNL
499 D
Estado del
S: Primer canal bit invertido.
fuente
D: Primer canal D D+1
de destino

MOVE BIT Transfiere el bit especificado. Salida 321


MOVB MOVB(082) Requerida
@MOVB S
082
C
D
S: Canal o datos
fuente
C: Canal de control
D: Canal de
destino

41
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
MOVE DIGIT Transfiere los dgitos especificados. (Cada dgito se compone de 4 bits). Salida 323
MOVD MOVD(083) Requerida
@MOVD S
083
C
D
S: Canal o datos
fuente
C: Canal de control
D: Canal de
destino

MULTIPLE BIT Transfiere el nmero especificado de bits consecutivos. Salida 326


TRANSFER XFRB(062)
Requerida
XFRB C
@XFRB
062 S
D
C: Canal de control
S: Primer canal
fuente
D: Primer canal
de destino

BLOCK Salida 328


TRANSFER XFER(070) Transfiere el nmero especificado de canales consecutivos.
Requerida
XFER N
@XFER
S Canales N
070
a a
D
S+(N1) D+(N1)

N: Nmero de
canales
S: Primer canal
fuente
D: Primer canal
de destino

BLOCK SET Copia el mismo canal en un rango de canales consecutivos. Salida 331
BSET BSET(071) Requerida
@BSET S Canal fuente Canales de destino
071
St St

S: Canal fuente
St: Canal inicial
E: Canal final
E

DATA Salida 333


EXCHANGE XCHG(073) Intercambia el contenido de los dos canales especificados.
Requerida
XCHG E1 E1 E2
@XCHG
073 E2
E1: Primer canal
de intercambio
E2: Segundo
canal de

42
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DOUBLE DATA Intercambia el contenido de un par de canales consecutivos con otro Salida 334
EXCHANGE XCGL(562)
par. Requerida
XCGL E1
@XCGL E1 E1+1 E2 E2+1
562 E2
E1: Primer canal
de intercambio
E2: Segundo canal
de intercambio

SINGLE WORD Salida 336


DISTRIBUTE DIST(080) Transfiere el canal de origen a un canal de destino, que se calcula
aadiendo un valor de desplazamiento a la direccin base. Requerida
DIST S
@DIST S Bs Of
080 Bs
Of

S: Canal fuente
Bs: Direccin
base de destino
Of: Desplazamiento Bs+n
DATA COLLECT Transfiere el canal de origen (que se calcula aadiendo un valor de Salida 338
COLL COLL(081) Requerida
desplazamiento a la direccin base) al canal de destino.
@COLL Bs
081 Of
Of Bs

Bs: Direccin Bs+n


base de fuente
Of: Desplazamiento
D: Canal de
destino

MOVE TO Establece la direccin de memoria de E/S interna del canal, bit o el Salida 340
REGISTER MOVR(560)
indicador de finalizacin del temporizador/contador especificado Requerida
MOVR S del registro de ndice especificado. (utilice MOVRW(561) para
@MOVR configurar la direccin de memoria de E/S interna del valor actual
560 D de temporizador o contador, en un registro de ndice).
Direccin de memoria de E/S de S
S: Fuente (canal
o bit deseado)
D: Destino
(registro de

Registro ndice

MOVE TIMER/ Selecciona la direccin de memoria de E/S interna del PV del Salida 342
COUNTER PV MOVRW(561) Requerida
temporizador o contador especificado en el registro de ndice
TO REGISTER especificado. Utilice MOVR(560) para seleccionar la direccin de
S
MOVRW memoria de E/S interna de un canal, bit o indicador de finalizacin
@MOVRW D de temporizador o contador en un registro de ndice.
561 Direccin de memoria de E/S de S
S: Fuente
(nmero de TC
deseado)
D: Destino Slo PV de
(registro de ndice) temporizador/contador

Registro ndice

43
Funciones de las instrucciones Seccin 2-2

2-2-7 Instrucciones de desplazamiento de datos


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
SHIFT REGIS- Entrada Salida 345
TER de
SFT(010)
Opera un registro de desplazamiento.
datos
E St+1, St+2 St
Requerida
SFT Entrada
de des-
plaza-
St
010 miento
Entrada E
de reset
Estado de la
Perdida entrada de datos
St: Canal inicial para cada entrada
E: Canal final de desplazamiento

REVERSIBLE Crea un registro de desplazamiento que desplaza datos hacia Salida 346
SHIFT SFTR(084) Requerida
REGISTER la derecha o hacia la izquierda.
C
SFTR
@SFTR St E St Entrada de datos
084
E
C: Canal de E
control Entrada St Direccinde
de despla-
St: Canal inicial datos zamiento
E: Canal final
ASYNCHRO- Salida 349
NOUS SHIFT ASFT(017) Desplaza todos los datos de canal que no sean cero dentro del
rango de canales especificados hacia St o hacia E, reemplazando Requerida
REGISTER
C los datos de canales 0000Hex.
ASFT
@ASFT St
017
E Direccin de
St
desplazamiento
C: Canal de control Desplazamiento
St: Canal inicial Mays
habilitado

E: Canal final Borrar


Mays

St

Datos cero

Datos no cero
E

WORD SHIFT Desplaza datos entre St y E en unidades de canal. Salida 352


WSFT WSFT(016) Requerida
@WSFT E St
S
016 Perdida
St
E

S: Canal fuente
St: Canal inicial
E: Canal final
ARITHMETIC Desplaza el contenido de Wd un bit hacia la izquierda. Salida 354
SHIFT LEFT ASL(025) Requerida
ASL Wd
@ASL
025 Wd: Canal

44
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DOUBLE SHIFT Desplaza el contenido de Wd y Wd+1 un bit hacia la izquierda. Salida 355
LEFT ASLL(570) Requerida
ASLL Wd+1 Wd
@ASLL Wd
570 Wd: Canal

ARITHMETIC Desplaza el contenido del Wd un bit hacia la derecha. Salida 357


SHIFT RIGHT ASR(026) Requerida
ASR
@ASR Wd
026 Wd: Canal

DOUBLE SHIFT Salida 358


RIGHT ASRL(571) Desplaza el contenido de Wd y Wd +1 un bit hacia la derecha.
Requerida
ASRL Wd Wd+1 Wd
@ASRL
571 Wd: Canal

ROTATE LEFT Desplaza todos los bits de Wd un bit hacia la izquierda, Salida 360
ROL ROL(027) incluyendo el indicador de acarreo (CY). Requerida
@ROL Wd
027
Wd: Canal

DOUBLE Salida 362


ROTATE LEFT ROLL(572) Desplaza todos los bits de Wd y Wd +1 un bit hacia la izquierda,
incluyendo el indicador de acarreo (CY). Requerida
ROLL Wd
@ROLL Wd+1 Wd
572 Wd: Canal

ROTATE LEFT Salida 367


WITHOUT RLNC(574) Desplaza todos los bits de Wd un bit hacia la izquierda,
Requerida
CARRY sin incluir el indicador de acarreo (CY).
Wd Wd
RLNC
@RLNC
Wd: Canal
574

DOUBLE Desplaza todos los bits de Wd y Wd +1 un bit hacia la izquierda, sin Salida 369
ROTATE LEFT RLNL(576) Requerida
incluir el indicador de acarreo (CY).
WITHOUT
CARRY Wd Wd+1 Wd
RLNL
@RLNL Wd: Canal
576
ROTATE RIGHT Desplaza todos los bits de Wd un bit hacia la derecha, incluyendo Salida 364
ROR ROR(028) el indicador de acarreo (CY). Requerida
@ROR Wd+1 Wd
Wd
028
Wd: Canal

DOUBLE Salida 365


ROTATE RIGHT RORL(573) Desplaza todos los bits de Wd y Wd +1 un bit hacia la derecha,
Requerida
RORL incluyendo el indicador de acarreo (CY).
@RORL Wd Wd+1 Wd
573 Wd: Canal

45
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
ROTATE RIGHT Desplaza todos los bits de Wd un bit hacia la derecha, sin incluir el Salida 371
WITHOUT RRNC(575) indicador de acarreo (CY). El contenido del bit situado ms la derecha Requerida
CARRY de Wd se desplaza hacia el bit situado ms a la izquierda y al
Wd
RRNC indicador de acarreo (CY).
@RRNC Wd: Canal
575
Wd

DOUBLE Salida 372


ROTATE RIGHT RRNL(577) Desplaza todos los bits de Wd y Wd +1 un bit hacia la derecha, sin
WITHOUT incluir el indicador de acarreo (CY). El contenido del bit situado ms la Requerida
CARRY Wd derecha de Wd +1 se desplaza hacia el bit situado ms a la izquierda
de Wd y al indicador de acarreo (CY).
RRNL Wd+1 Wd
@RRNL Wd: Canal
577

ONE DIGIT Desplaza los datos un dgito (4 bits) hacia la izquierda. Salida 374
SHIFT LEFT SLD(074) Requerida
SLD E S t
St
@SLD
074 E Perdida

St: Canal inicial


E: Canal final

ONE DIGIT Salida 376


SHIFT RIGHT SRD(075) Desplaza los datos un dgito (4 bits) hacia la derecha.
E S t Requerida
SRD St
@SRD Perdida
075 E
St: Canal inicial
E: Canal final

SHIFT N-BIT Salida 377


DATA LEFT NSFL(578) Desplaza el nmero especificado de bits hacia la izquierda.
Requerida
NSFL
@NSFL D
578 C
N
D: Canal inicial para Desplaza un bit hacia
desplazamiento la izquierda
C: Bit de inicio N1 bit
N: Longitud de
desplazamiento de
datos
N1 bit

SHIFT N-BIT Salida 379


DATA RIGHT NSFR(579) Desplaza el nmero especificado de bits hacia la derecha.
Requerida
NSFR D
@NSFR
579 C
N

D: Canal inicial para Desplaza un bit hacia


desplazamiento la derecha
N1 bit
C: Bit de inicio
N: Longitud de
desplazamiento
de datos
N1 bit

46
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
SHIFT N-BITS Salida 381
LEFT NASL(580) Desplaza los 16 bits especificados de los datos de canal hacia la
Requerida
NASL izquierda, en funcin del nmero especificado de bits.
@NASL D
580 C
D: Canal de Desplazar n bits
desplazamiento
C: Canal de
control

Contenido de
"a" o "0"
Perdida desplazado

N bits

DOUBLE SHIFT Salida 384


N-BITS LEFT NSLL(582) Desplaza los 32 bits especificados de los datos de canal hacia la Requerida
NSLL izquierda, en funcin del nmero especificado de bits.
@NSLL D
582 C
D: Canal de
Desplazar n bits
desplazamiento
C: Canal de
control Contenido
de "a" o "0"
desplazado
Perdida
N bits

SHIFT N-BITS Desplaza los 16 bits especificados de los datos de canal hacia la Salida 387
RIGHT NASR(581) Requerida
derecha, en funcin del nmero especificado de bits.
NASR D
@NASR
581 C
Contenido de "a" o
D: Canal de
"0" desplazado
desplazamiento
C: Canal de Perdida
control
N bits

DOUBLE SHIFT Desplaza los 32 bits especificados de los datos de canal hacia la Salida 389
N-BITS RIGHT NSRL(583) Requerida
derecha, en funcin del nmero
NSRL especificado de bits.
@NSRL D
583 C Desplazar n bits
D: Canal de
desplazamiento
Contenido
C: Canal de de "a" o "0"
control desplazado Perdida

47
Funciones de las instrucciones Seccin 2-2

2-2-8 Instrucciones de aumento/disminucin


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
INCREMENT Aumenta el contenido hexadecimal de 4 dgitos del canal especificado en 1. Salida 393
BINARY ++(590) Requerida
++ Wd Wd
Wd
@++
590 Wd: Canal

DOUBLE INCRE- Aumenta el contenido hexadecimal de 8 dgitos del canal Salida 395
MENT BINARY ++L(591) Requerida
especificado en 1.
++L Wd
@++L Wd+1 Wd Wd+1 Wd
591 Wd: Canal

DECREMENT Disminuye el contenido hexadecimal de 4 dgitos del canal Salida 397


BINARY (592) Requerida
especificado en 1.
Wd
@ Wd Wd
592 Wd: Canal

DOUBLE Disminuye el contenido hexadecimal de 8 dgitos del canal Salida 399


DECREMENT L(593) Requerida
BINARY especificado en 1.
Wd
L Wd+1 Wd Wd+1 Wd
@ L
Wd: Primer canal
593
INCREMENT Aumenta el contenido hexadecimal de 4 dgitos del canal Salida 401
BCD ++B(594) especificado en 1. Requerida
++B Wd Wd Wd
@++B
594 Wd: Canal

DOUBLE INCRE- Aumenta el contenido hexadecimal de 8 dgitos de los canales Salida 403
MENT BCD ++BL(595) Requerida
especificados en 1.
++BL
@++BL Wd
Wd+1 Wd Wd+1 Wd
595 Wd: Primer canal

DECREMENT Disminuye el contenido hexadecimal de 4 dgitos del canal Salida 405


BCD B(596) especificado en 1. Requerida
B Wd
@ B Wd 1 Wd
596 Wd: Canal

DOUBLE Salida 407


DECREMENT BL(597) Disminuye el contenido hexadecimal de 8 dgitos de los canales
especificados en 1. Requerida
BCD
Wd
BL Wd+1 Wd Wd+1 Wd
@ BL
Wd: Primer canal
597

48
Funciones de las instrucciones Seccin 2-2

2-2-9 Instrucciones matemticas de smbolos


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
SIGNED Suma datos y/o constantes hexadecimales de 4 dgitos (un canal). Salida 410
BINARY ADD +(400) Requerida
WITHOUT Au
CARRY Au (Binario con signo)
+ Ad
@+ + Ad (Binario con signo)
R
400
Au: Canal de
sumando CY se pondr en
ON cuando exista CY R (Binario con signo)
Ad: Canal de
nmero adicional un acarreo.
R: Canal de
resultado

DOUBLE SIG- Salida 412


Suma datos y/o constantes hexadecimales de 8 dgitos (dos canales).
NED BINARY +L(401) Requerida
ADD WITHOUT Au+1 (Binario con signo)
CARRY Au Au
+L Ad
@+L + Ad+1 Ad (Binario con signo)
401 R CY se
pondr en
Au: Primer canal ON cuando (Binario con signo)
de sumando CY R+1 R
exista un
Ad: Primer canal acarreo.
de nmero
adicional
R: Primer canal de
resultado
SIGNED Suma datos y/o constantes hexadecimales de 4 dgitos (un canal) con Salida 414
BINARY ADD +C(402) el indicador de acarreo (CY). Requerida
WITH CARRY
Au Au (Binario con signo)
+C
@+C Ad
402 Ad (Binario con signo)
R
Au: Canal de + CY
sumando CY se pondr en
Ad: Canal de ON cuando exista CY R (Binario con signo)
nmero adicional un acarreo.
R: Canal de
resultado
DOUBLE SIG- Aade datos y/o constantes hexadecimales de 8 dgitos (canal doble) Salida 416
NED BINARY +CL(403) con el indicador de acarreo (CY). Requerida
ADD WITH
CARRY Au Au+1 Au (Binario con signo)
+CL Ad
@+CL Ad+1 Ad (Binario con signo)
403 R
Au: Primer canal + CY
de sumando CY se pondr
Ad: Primer canal en ON cuando
de nmero exista un CY R+1 R (Binario con signo)
adicional acarreo.
R: Primer canal de
resultado
BCD ADD Salida 418
WITHOUT +B(404) Suma datos y/o constantes BCD de 4 dgitos (un canal).
Requerida
CARRY Au (BCD)
+B
Au
@+B Ad (BCD)
+ Ad
404
R
CY se pondr en
Au: Canal de ON cuando exista CY R (BCD)
sumando un acarreo.
Ad: Canal de
nmero adicional
R: Canal de
resultado

49
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DOUBLE BCD Suma datos y/o constantes BCD de 8 dgitos (dos canales). Salida 419
ADD WITHOUT +BL(405)
Requerida
CARRY Au Au+1 Au (BCD)
+BL
@+BL Ad Ad+1 Ad (BCD)
405 +
R
Au: Primer canal CY se pondr en (BCD)
de sumando ON cuando exista CY R+1 R
Ad: Primer canal un acarreo.
de nmero
adicional
R: Primer canal
de resultado
BCD ADD WITH Aade datos y/o constantes BCD de 4 dgitos (canal nico) con el Salida 421
CARRY +BC(406) indicador de acarreo (CY). Requerida
+BC Au (BCD)
@+BC Au
406 Ad Ad (BCD)
R
+ CY
Au: Canal de
sumando CY se pondr en
Ad: Canal de ON cuando exista
un acarreo. CY R (BCD)
nmero adil:
R: Canal de
resultado

DOUBLE BCD Salida 423


ADD WITH +BCL(407) Aade datos y/o constantes BCD de 8 dgitos (canal doble) con el
indicador de acarreo (CY). Requerida
CARRY
+BCL Au Au+1 Au (BCD)
@+BCL Ad
407 Ad+1 Ad (BCD)
R
+ CY
Au: Primer canal
de sumando CY se pondr
Ad: Primer canal en ON cuando
de nmero CY R+1 R (BCD)
adicional exista un
R: Primer canal de acarreo.
resultado
SIGNED Resta datos y/o constantes hexadecimales de 4 dgitos (un canal). Salida 424
BINARY SUB- (410) Requerida
TRACT Mi (Binario con signo)
WITHOUT Mi
CARRY
Su Su (Binario con signo)

@ R
410 Mi: Canal de CY se pondr en ON CY R (Binario con signo)
minuendo cuando exista un
Su: Canal de acarreo negativo.
sustraendo
R: Canal de
resultado
DOUBLE SIG- Salida 426
NED BINARY L(411) Resta datos y/o constantes hexadecimales de 8 dgitos (dos canales).
Requerida
SUBTRACT
WITHOUT Mi Mi+1 Mi (Binario con signo)
CARRY
Su
L Su+1 Su (Binario con signo)
@L R CY se pondr
411 en ON
Mi: Canal de
minuendo cuando exista CY R+1 R (Binario con signo)
Su: Canal de un acarreo
sustraendo negativo.
R: Canal de
resultado

50
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
SIGNED Salida 430
BINARY Resta datos y/o constantes hexadecimales de 4 dgitos
C(412) (canal nico) con el indicador de acarreo (CY). Requerida
SUBTRACT
WITH CARRY Mi Mi (Binario con signo)
C Su
@C Su (Binario con signo)
412 R
Mi: Canal de CY
minuendo
Su: Canal de CY se pondr en ON
sustraendo cuando exista un CY R (Binario con signo)
R: Canal de acarreo negativo.
resultado
DOUBLE Resta datos y/o constantes hexadecimales de 8 dgitos (canal doble) Salida 432
SIGNED CL(413) con el indicador de acarreo (CY). Requerida
BINARY WITH
CARRY Mi
Mi+1 Mi (Binario con signo)
CL Su
@CL
413 R Su+1 Su (Binario con signo)
Mi: Canal de
minuendo CY se pondr CY
Su: Canal de en ON cuando
sustraendo exista un
R: Canal de acarreo CY R+1 R (Binario con signo)
resultado negativo.

BCD Resta datos y/o constantes BCD de 4 dgitos (un canal). Salida 435
SUBTRACT B(414) Requerida
WITHOUT Mi (BCD)
CARRY Mi
B Su Su (BCD)
@B
414 R
CY se pondr en
Mi: Canal de ON cuando exista CY R (BCD)
minuendo un acarreo.
Su: Canal de
sustraendo
R: Canal de
resultado
DOUBLE BCD Resta datos y/o constantes BCD de 8 dgitos (dos canales). Salida 436
SUBTRACT BL(415) Requerida
WITHOUT
CARRY Mi Mi +1 Mi (BCD)
BL Su
@BL Su+1 Su (BCD)
415 R
CY se pondr en
Mi: Primer canal ON cuando (BCD)
de minuendo CY R+1 R
exista un acarreo
Su: Primer canal negativo.
de sustraendo
R: Primer canal
de resultado
BCD Salida 440
SUBTRACT Resta datos y/o constantes BCD de 4 dgitos (canal nico) con el
BC(416) indicador de acarreo (CY). Requerida
WITH CARRY
BC Mi Mi (BCD)
@BC Su
416 Su (BCD)
R
Mi: Canal de CY
minuendo
Su: Canal de
CY se pondr en ON
sustraendo CY R (BCD)
cuando exista un
R: Canal de
acarreo negativo.
resultado

51
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DOUBLE BCD Resta datos y/o constantes BCD de 8 dgitos (canal doble) con el Salida 441
SUBTRACT BCL(417) Requerida
WITH CARRY indicador de acarreo (CY).
Mi (BCD)
BCL Mi +1 Mi
@BCL Su
417 Su+1 Su (BCD)
R
Mi: Primer canal
de minuendo
CY
Su: Primer canal
de sustraendo CY se pondr en ON
cuando exista un CY R+1 R (BCD)
R: Primer canal
de resultado acarreo negativo.

SIGNED Salida 443


Multiplica datos y/o constantes hexadecimales con signo
BINARY *(420) de 4 dgitos. Requerida
MULTIPLY Md (Binario con signo)
* Md
@* Mr
420 Mr (Binario con signo)
R
Md: Canal de
multiplicando R +1 R (Binario con signo)
Mr: Canal de
multiplicador
R: Canal de
resultado

DOUBLE Multiplica datos y/o constantes hexadecimales con signo de 8 dgitos. Salida 445
SIGNED *L(421) Requerida
BINARY
MULTIPLY Md Md + 1 Md (Binario con signo)
*L Mr
@*L Mr + 1 Mr (Binario con signo)
421 R
Md: Primer canal
de multiplicando
Mr: Primer canal R+3 R+2 R+1 R (Binario con signo)
de multiplicador
R: Primer canal
de resultado

UNSIGNED Salida 447


BINARY *U(422) Multiplica datos y/o constantes hexadecimales sin signo de
Requerida
MULTIPLY 4 dgitos.
Md Md (Binario sin signo)
*U
@*U Mr
422 (Binario sin signo)
R Mr
Md: Canal de
multiplicando
Mr: Canal de R+1 R (Binario sin signo)
multiplicador
R: Canal de
resultado

DOUBLE Salida 449


UNSIGNED *UL(423) Multiplica datos y/o constantes hexadecimales sin signo de 8 dgitos.
Requerida
BINARY
MULTIPLY Md Md + 1 Md (Binario sin signo)
*UL Mr
@*UL
R Mr + 1 Mr (Binario sin signo)
423
Md: Primer canal
de multiplicando
Mr: Primer canal R+3 R+2 R+1 R (Binario sin signo)
de multiplicador
R: Primer canal
de resultado

52
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
BCD MULTIPLY Multiplica datos y/o constantes BCD de 4 dgitos Salida 450
*B
*B(424) Requerida
(canal nico). (BCD)
@*B Md Md
424
Mr
Mr (BCD)
R
Md: Canal de
multiplicando R +1 R (BCD)
Mr: Canal de
multiplicador
R: Canal de
resultado

DOUBLE BCD Multiplica datos y/o constantes BCD de 8 dgitos (dos canales). Salida 452
MULTIPLY *BL(425) Requerida
*BL Md Md + 1 Md (BCD)
@*BL
425 Mr
R Mr + 1 Mr (BCD)
Md: Primer canal
de multiplicando
Mr: Primer canal (BCD)
de multiplicador R+3 R+2 R+1 R
R: Primer canal
de resultado

SIGNED Salida 454


BINARY DIVIDE /(430) Divide datos y/o constantes hexadecimales de 4 dgitos
(un canal). Requerida
/ Dd
@/ Dd (Binario con signo)
430 Dr
R
Dr (Binario con signo)
Dd: Canal de
dividendo
Dr: Canal de R +1 R (Binario con signo)
divisor
R: Canal de Resto Cociente
resultado

DOUBLE Salida 456


SIGNED /L(431) Divide datos y/o constantes hexadecimales de 8 dgitos
(dos canales). Requerida
BINARY DIVIDE
/L
Dd Dd + 1 Dd (Binario con signo)
@/L Dr
431
R Dr + 1 Dr (Binario con signo)
Dd: Primer canal
de dividendo
Dr: Primer canal
de divisor R+3 R+2 R+1 R (Binario con signo)
R: Primer canal
de resultado Resto Cociente
UNSIGNED Divide datos y/o constantes hexadecimales sin signo de Salida 458
BINARY DIVIDE /U(432) 4 dgitos (un canal). Requerida
/U
@/U Dd
Dd (Binario sin signo)
432 Dr
R Dr (Binario sin signo)
Dd: Canal de
dividendo
Dr: Canal de R +1 R (Binario sin signo)
divisor
R: Canal de
resultado Resto Cociente

53
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DOUBLE Divide datos y/o constantes hexadecimales sin signo de 8 dgitos Salida 460
UNSIGNED /UL(433)
(canal doble). Requerida
BINARY DIVIDE Dd
/UL Dd + 1 Dd (Binario sin signo)
@/UL Dr
433 (Binario sin signo)
R Dr + 1 Dr
Dd: Primer canal
de dividendo
Dr: Primer canal
de divisor R+3 R+2 R+1 R (Binario sin signo)
R: Primer canal
de resultado Resto Cociente

BCD DIVIDE Salida 462


*B(434) Divide datos y/o constantes BCD de 4 dgitos (canal nico).
/B Requerida
@/B Dd Dd (BCD)
434
Dr
Dr (BCD)
R
Dd: Canal de
dividendo R +1 R (BCD)
Dr: Canal de
divisor Resto Cociente
R: Canal de
resultado
DOUBLE BCD Salida 464
Divide datos y/o constantes BCD de 8 dgitos (dos canales).
DIVIDE /BL(435) Requerida
/BL (BCD)
@/BL Dd Dd + 1 Dd
435 Dr
Dr + 1 Dr (BCD)
R

Dd: Primer canal


de dividendo
Dr: Primer canal R+3 R+2 R+1 R (BCD)
de divisor
R: Primer canal Resto Cociente
de resultado

2-2-10 Instrucciones de conversin


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
BCD-TO- Salida 466
BINARY BIN(023) Convierte los datos BCD en datos binarios.
Requerida
BIN S (BCD) (BIN)
@BIN R
023 R
S: Canal fuente
R: Canal de
resultado

DOUBLE Salida 467


Convierte datos BCD de 8 dgitos en datos hexadecimales de
BCD-TO- BINL(058) 8 dgitos (binarios de 32 bits). Requerida
DOUBLE
BINARY S (BCD) R (BIN)
BINL R (BCD) R+1 (BIN)
@BINL
058 S: Primer canal
fuente
R: Primer canal
de resultado

54
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
BINARY-TO- Salida 469
BCD BCD(024) Convierte un canal de datos binarios en uno de datos BCD.
Requerida
BCD (BIN) R (BCD)
@BCD S
024 R
S: Canal fuente
R: Canal de
resultado
DOUBLE Convierte datos hexadecimales de 8 dgitos en datos BCD de 8 dgitos Salida 470
BINARY-TO- BCDL(059) Requerida
(binarios de 32 bits).
DOUBLE BCD
BCDL
S (BIN) R (BCD)
@BCDL R (BIN) R+1 (BCD)
059
S: Primer canal
fuente
R: Primer canal
de resultado

2S COMPLE- Salida 472


Calcula el complemento a 2 de un canal de datos hexadecimales.
MENT NEG(160) Requerida
NEG Complemento a 2
@NEG S (Complemento + 1)
160 R (S) (R)
S: Canal fuente
R: Canal de
resultado

DOUBLE 2'S Calcula el complemento a 2 de dos canales de datos hexadecima Salida 474
COMPLEMENT NEGL(161) Requerida
NEGL S Complemento a 2
@NEGL (Complemento + 1)
161 R (S+1, S) (R+1, R)
S: Primer canal
fuente
R: Primer canal
de resultado

16-BIT TO Expande un valor binario con signo de 16 bits a su Salida 476


32-BIT SIGNED SIGN(600) Requerida
equivalente de 32 bits.
BINARY
S MSB
SIGN
@SIGN R S
600
S: Canal fuente MSB = 0:
MSB = 1: 0000 hex.
R: Primer canal FFFF hex.
de resultado
D+1 D
D = Contenido de S

55
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DATA Salida 477
DECODER MLPX(076) Lee el valor numrico del dgito especificado (o byte) en el canal fuente,
pone en ON el bit correspondiente en el canal de resultado (o rango de Requerida
MLPX 16 canales) y pone en OFF los otros bits del canal de resultado (o
@MLPX S
rango de 16 canales).
076 C Conversin de 4 a 16 bits
R C

S: Canal fuente l=1 (Convertir 2 dgitos).


C: Canal de
control
R: Primer canal n=2 (Comenzar con
de resultado el segundo dgito).
Decodificacin de 4 a 16 bits
(El bit m de R se pone en ON).

R
R+1

Conversin de 8 a 256 bits


C
l=1 (Convertir 2 bytes).

n=1 (Comenzar con el primer byte).

Decodificacin de 8 a 256 bits


(El bit m de R a R+15 se pone en ON).

R+1

R+14
R+15
R+16
R+17
Se utilizan dos rangos de
16 canales cuando l
especifica 2 bytes.
R+30
R+31

56
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DATA Encuentra la posicin del primer o el ltimo bit en ON en el canal Salida 482
ENCODER DMPX(077) Requerida
fuente (o el rango de 16 canales) y escribe dicho valor en el dgito
DMPX S (o byte) especificado en el canal de resultado.
@DMPX
Conversin de 16 a 4 bits
077 R C
Busca el bit de la izquierda
C (direccin de bit ms alta)
S: Primer canal
fuente l=1 (Convertir
R: Canal de 2 canales).
resultado
C: Canal de
control

Decodificacin de 16
a 4 bits (La posicin Bit de la izquierda Bit de la derecha
del bit de la izquierda
(m) se escribe en R).

n=2 (Comenzar con el dgito 2).

Conversin de 256 a 8 bits


C
l=0 (Convertir un rango de 16 canales).

Bit de la izquierda

Busca el bit de la izquierda


(direccin de bit ms alta)

Decodificacin de 256 a 8 bits (la


posicin del bit de la izquierda del rango
de 16 canales (m) se escribe en R).

n=1 (Comenzar con el byte 1).

ASCII Convierte dgitos hexadecimales de 4 bits del canal fuente en sus Salida 486
CONVERT ASC(086) Requerida
equivalentes ASCII de 8 bits.
ASC Di
@ASC S
086 Di Primer dgito para convertir

S: Canal fuente
Di: Indicador de
dgito
D: Primer canal Nmero
de destino de dgitos
(n+1)
Izquierda (1) Derecha (0)

57
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
ASCII TO HEX Convierte hasta 4 bytes de datos ASCII del canal fuente en sus Salida 490
HEX HEX(162) equivalentes hexadecimales y escribe estos dgitos en el canal de Requerida
@HEX destino especificado.
S
162 C: 0021
Di Di
D Primer byte que se va a convertir

S: Primer canal Izquierda (1) Derecha (0)


fuente
Di: Indicador de
dgito
D: Canal de
destino
Nmero de dgitos (n+1)

Primer dgito a escribir

COLUMN TO Convierte una columna de bits de un rango de 16 canales (el mismo Salida 494
LINE LINE(063) Requerida
nmero de bit en 16 canales consecutivos) en los 16 bits del canal de
LINE S destino.
@LINE N
Bit Bit
063 N 15 00
D
S 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 1
S: Primer canal S+1 1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1
fuente 0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1
N: Nmero de bit S+2
D: Canal de S+3 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1
destino . . . .
. . . .
. . . .
S+15 0 1 1 0 0 0 0 1 1 0 0 0 1 0 1 0

Bit Bit
15 00

D 0 . . . 0 1 1 1
LINE TO Convierte los 16 bits del canal fuente en una columna de bits Salida 496
COLUMN COLM(064)
con un rango de 16 canales de los canales de destino (el Requerida
COLM S mismo nmero de bits en 16 canales consecutivos).
@COLM
064 D Bit Bit
15 00
N
S 0 . . . . . . . 0 1 1 1
S: Canal fuente
D: Primer canal
de destino
N: Nmero de bit
Bit Bi Bit
15 00
D 0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 1
D+1 1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1
D+2 0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1
D+3 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1
. . . .
. . . .
. . . .
D+15 0 1 1 1 0 0 0 1 1 0 0 0 1 0 1 0

58
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
SIGNED BCD- Convierte un canal de datos BCD con signo en otro con datos Salida 499
TO-BINARY BINS(470) Requerida
binarios con signo.
BINS C
@BINS
470 S Formato BCD con signo
D especificado en C
C: Canal de BCD con signo Binario con signo
control
S: Canal fuente
D: Canal de
destino
DOUBLE Salida 502
SIGNED BISL(472) Convierte los datos BCD con signo de dos canales en datos
binarios con signo de dos canales. Requerida
BCD-TO-
BINARY C
BISL S
@BISL Formato BCD con signo
472 D especificado en C

C: Canal de BCD con signo Binario con signo


control
BCD con signo Binario con signo
S: Primer canal
fuente
D: Primer canal
de destino
SIGNED Convierte un canal de datos binarios con signo en otro con datos Salida 505
BINARY-TO- BCDS(471)
BCD con signo. Requerida
BCD
C
BCDS
@BCDS S Formato BCD con signo
471 especificado en C
D
Binario con signo BCD con signo
C: Canal de
control
S: Canal fuente
D: Canal de
destino
DOUBLE Convierte los datos binarios con signo de dos canales en datos Salida 507
SIGNED BDSL(473) Requerida
BINARY-TO- BCD con signo de dos canales.
BCD C
BDSL S
@BDSL Formato BCD con signo
473 D especificado en C
C: Canal de
Binario con signo BCD con signo
control
S: Primer canal Binario con signo BCD con signo
fuente
D: Primer canal
de destino

GRAY CODE Convierte los datos de cdigo Gray del canal especificado en datos Salida 511
CONVERSION GRY (474) binarios, BCD o ngulo () a la resolucin especificada. Requerida
GRY C
474
(Unidades de la S
serie CS/CJ Ver. D
2.0 o posterior,
incluidas CPUs
CS1-H, CJ1-H y C: Canal de
CJ1M a partir del control
nmero de lote S: Canal fuente
030201) D: Primer canal
de destino

59
Funciones de las instrucciones Seccin 2-2

2-2-11 Instrucciones lgicas


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
LOGICAL AND Toma el AND lgico de los bits correspondientes en canales nicos Salida 517
ANDW ANDW(034) Requerida
de datos de canal y/o constantes.
@ANDW
I1
034 I1. I2 R
I2
I1 I2 R
R
1 1 1
I1: Entrada 1
I2: Entrada 2 1 0 0
R: Canal de
resultado
0 1 0
0 0 0

DOUBLE Toma el AND lgico de los bits correspondientes en canales dobles Salida 519
LOGICAL AND ANDL(610) Requerida
de datos de canal y/o constantes.
ANDL I1
@ANDL
(I1, I1+1). (I2, I2+1) (R, R+1)
610 I2
R I1, I1+1 I2, I2+1 R, R+1
1 1 1
I1: Entrada 1
I2: Entrada 2 1 0 0
R: Canal de
resultado 0 1 0
0 0 0

LOGICAL OR Salida 520


ORW(035) Toma el OR lgico de los bits correspondientes en canales nicos
ORW de datos de canal y/o constantes. Requerida
@ORW I1
035 I1 + I2 R
I2
I1 I2 R
R
1 1 1
I1: Entrada 1
I2: Entrada 2 1 0 1
R: Canal de 0 1 1
resultado
0 0 0

DOUBLE Toma el OR lgico de los bits correspondientes en canales dobles Salida 522
LOGICAL OR ORWL(611) Requerida
de datos de canal y/o constantes.
ORWL
@ORWL I1
(I1, I1+1) + (I2, I2+1) (R, R+1)
611 I2
I1, I1+1 I2, I2+1 R, R+1
R
I1: Entrada 1 1 1 1
I2: Entrada 2 1 0 1
R: Canal de
resultado 0 1 1
0 0 0

EXCLUSIVE OR Salida 524


XORW XORW(036) Toma el OR exclusivo lgico de los bits correspondientes en Requerida
@XORW canales nicos de datos de canal y/o constantes.
I1
036 I1. I2 + I1.I2 R
I2
I1 I2 R
R
I1: Entrada 1 1 1 0
I2: Entrada 2 1 0 1
R: Canal de
resultado 0 1 1
0 0 0

60
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DOUBLE Salida 526
EXCLUSIVE OR XORL(612) Toma el OR exclusivo lgico de los bits correspondientes en dos
canales de datos de canal y/o constantes. Requerida
XORL
@XORL I1
(I1, I1+1). (I2, I2+1) + (I1, I1+1). (I2, I2+1) (R, R+1)
612 I2
I1, I1+1 I2, I2+1 R, R+1
R
I1: Entrada 1 1 1 0
I2: Entrada 2 1 0 1
R: Canal de
resultado 0 1 1
0 0 0

EXCLUSIVE Realiza la operacin lgica NOR exclusiva de los canales Salida 528
NOR XNRW(037)
correspondientes de datos y/o constantes de 1 canal. Requerida
XNRW I1
@XNRW
I1. I2 + I1.I2 R
037 I2
I1 I2 R
R
I1: Entrada 1 1 1 1
I2: Entrada 2 1 0 0
R: Canal de
resultado 0 1 0
0 0 1

DOUBLE Toma el NOR exclusivo lgico de los bits correspondientes en Salida 529
EXCLUSIVE XNRL(613) dos canales de datos de canal y/o constantes. Requerida
NOR
XNRL I1
@XNRL (I1, I1+1). (I2, I2+1) + (I1, I1+1). (I2, I2+1) (R, R+1)
I2
613 I1, I1+1 I2, I2+1 R, R+1
R
I1: Entrada 1 1 1 1
I2: Entrada 2 1 0 0
R: Primer canal
de resultado 0 1 0
0 0 1
COMPLEMENT Salida 531
COM(029) Pone en OFF todos los bits en ON y viceversa, en Wd.
COM Requerida
@COM WdWd: 1 0 y 0 1
Wd
029
Wd: Canal

DOUBLE Pone en OFF todos los bits en ON y viceversa, en Wd y Wd+1. Salida 533
COMPLEMENT COML(614) Requerida
COML Wd (Wd+1, Wd) (Wd+1, Wd)
@COML
614
Wd: Canal

61
Funciones de las instrucciones Seccin 2-2

2-2-12 Instrucciones matemticas especiales


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
BINARY ROOT Calcula la raz cuadrada del contenido binario de 32 bits de los Salida 534
ROTB(620)
ROTB canales especificados y enva la parte entera del resultado al canal Requerida
@ROTB de resultado especificado.
S
620
R
S: Primer canal S+1 S R
fuente
R: Canal de Datos binarios (32 bits) Datos binarios (16 bits)
resultado

BCD SQUARE Salida 536


ROOT ROOT(072) Calcula la raz cuadrada del nmero BCD de 8 dgitos y enva la
parte entera del resultado al canal de resultado especificado Requerida
ROOT S
@ROOT
072 R S+1 S R
S: Primer canal
fuente Datos BCD (8 dgitos) Datos BCD (4 dgitos)
R: Canal de
resultado

ARITHMETIC Calcula el seno, coseno o extrapolacin lineal de los datos de origen. Salida 540
PROCESS APR(069)
La funcin de extrapolacin lineal permite aproximar una relacin entre Requerida
APR C X e Y con segmentos de lnea.
@APR
069 S
R
C: Canal de
control
S: Datos fuente
R: Canal de
resultado

FLOATING Divide un nmero de coma flotante de 7 dgitos por otro. Los Salida 552
POINT DIVIDE FDIV(079) Requerida
nmeros de coma flotante se expresan en notacin cientfica
FDIV (mantisa de 7 dgitos y exponente de 1 dgito).
@FDIV Dd
079 Dr Cociente

R R+1 R
Dd: Primer canal
de dividendo Dr+1 Dr Dd+1 Dd
Dr: Primer canal
de divisor
R: Primer canal
de resultado

BIT COUNTER Cuenta el nmero total de bits en ON de los canales especificados. Salida 556
BCNT BCNT(067) Requerida
@BCNT Canales N
N
067 Cuenta el nmero
S de bits en ON.
a
R
S+(N 1) Resultado
N: Nmero de
canales binario
S: Primer canal
fuente R
R: Canal de
resultado

62
Funciones de las instrucciones Seccin 2-2

2-2-13 Instrucciones matemticas de coma flotante


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
FLOATING TO Convierte un valor de coma flotante de 32 bits en datos binarios con signo Salida 563
16-BIT FIX(450) de 16 bits y sita el resultado en el canal de resultado especificado. Requerida
FIX S
@FIX S+1 S Datos de coma
450 R flotante (32 bits)
S: Primer canal
fuente
R: Canal de R Datos binarios con
resultado signo (16 bits)

FLOATING TO Convierte un valor de coma flotante de 32 bits en datos binarios con signo Salida 565
32-BIT FIXL(451) Requerida
de 32 bits y sita el resultado en los canales de resultado especificados.
FIX
@FIXL S
S+1 S Datos de coma
451 R
flotante (32 bits)
S: Primer canal
fuente
R: Primer canal R+1 R Datos binarios con
de resultado signo (32 bits)

16-BIT TO Convierte un valor binario con signo de 16 bits en datos de coma flotante Salida 566
FLOATING FLT(452) Requerida
de 32 bits y sita el resultado en los canales de resultado especificados.
FLT S
@FLT
452 R S Datos binarios con
signo (16 bits)
S: Canal fuente
R: Primer canal
de resultado R+1 R Datos de coma
flotante (32 bits)
32-BIT TO Convierte un valor binario con signo de 32 bits en datos de coma flotante de Salida 568
FLOATING FLTL(453) 32 bits y sita el resultado en los canales de resultado especificados. Requerida
FLTL S
@FLTL
S+1 S Datos binarios con
453 R
signo (32 bits)
S: Primer canal
fuente
R: Primer canal R+1 R Datos de coma
de resultado flotante (32 bits)
FLOATING- Suma dos nmeros de coma flotante de 32 bits y sita el resultado en Salida 570
POINT ADD +F(454) Requerida
los canales de resultado especificados.
+F Au
@+F Sumando (datos de
454 Ad Au+1 Au
coma flotante, 32 bits)
R
Nmero adicional (datos
Au: Primer canal
de sumando
+ Ad+1 Ad
de coma flotante, 32 bits)
AD: Primer canal
de nmero Resultado (datos de
adicional R+1 R
R: Primer canal de coma flotante, 32 bits)
resultado
FLOATING- Resta un nmero de coma flotante de 32 bits a otro y sita el Salida 572
POINT F(455) resultado en los canales de resultado especificados. Requerida
SUBTRACT
F Mi
Mi+1
Minuendo (datos
@F Su Mi
decoma flotante, 32 bits)
455
R
Mi: Primer canal Su+1 Su Sustraendo (datos de
de minuendo coma flotante, 32 bits)
Su: Primer canal
de sustraendo Resultado (datos de
R: Primer canal R+1 R
de resultado coma flotante, 32 bits)

63
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
FLOATING- Multiplica dos nmeros de coma flotante de 32 bits y sita el Salida 574
POINT MULTI- *F(456) Requerida
resultado en los canales de resultado especificados.
PLY
Md Multiplicando (datos de
*F Md+1 Md
@*F Mr coma flotante, 32 bits)
456
R Multiplicador (datos de
Mr+1 Mr
Md: Primer canal coma flotante, 32 bits)
de multiplicando
Mr: Primer canal
de multiplicador R+1 R Resultado (datos de
R: Primer canal coma flotante, 32 bits)
de resultado
FLOATING- Divide un nmero de coma flotante de 32 bits por otro y sita el Salida 576
POINT DIVIDE /F(457) resultado en los canales de resultado especificados. Requerida
/F Dd
@/F Dd+1 Dd Dividendo (datos de
457 Dr coma flotante, 32 bits)
R Divisor (datos de
Dr+1 Dr
Dd: Primer canal coma flotante, 32 bits)
de dividendo
Dr: Primer canal
de divisor R+1 R Resultado (datos de
R: Primer canal coma flotante, 32 bits)
de resultado

DEGREES TO Cambia un nmero de coma flotante de 32 bits de grados a radianes Salida 578
RADIANS RAD(458) Requerida
y sita el resultado en los canales de resultado especificados.
RAD
@RAD S
S+1 S Fuente (grados, datos de
458 R coma flotante de 32 bits)
S: Primer canal
fuente Resultado (radianes,
R: Primer canal R+1 R datos de coma flotante
de resultado de 32 bits)
RADIANS TO Cambia un nmero de coma flotante de 32 bits de radianes a grados Salida 579
DEGREES DEG(459) Requerida
y sita el resultado en los canales de resultado especificados.
DEG S
@DEG Fuente (radianes, datos de
459 R S+1 S
coma flotante de 32 bits)
S: Primer canal
fuente
R: Primer canal Resultado (grados, datos
de resultado R+1 R
de coma flotante de 32 bits)

SINE Salida 581


SIN(460) Calcula el seno de un nmero de coma flotante de 32 bits
SIN (en radianes) y sita el resultado en los canales de resultado Requerida
@SIN
S
460 Fuente (datos de
R SIN S+1 S coma flotante de
S: Primer canal 32 bits)
fuente
R: Primer canal Resultado (datos
de resultado R+1 R de coma flotante
de 32 bits)

COSINE Salida 583


COS(461) Calcula el coseno de un nmero de coma flotante de 32 bits
COS (en radianes) y sita el resultado en los canales de resultado Requerida
@COS S Fuente (datos
461 COS
R S+1 S de coma flotante
de 32 bits)
S: Primer canal
fuente Resultado (datos
R: Primer canal R+1 R de coma flotante
de resultado
de 32 bits)

64
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
TANGENT Calcula la tangente de un nmero de coma flotante de 32 bits Salida 585
TAN TAN(462) (en radianes) y sita el resultado en los canales de resultado Requerida
@TAN
S Fuente (datos
462 de coma flotante
TAN S+1 S
R de 32 bits)
S: Primer canal
fuente Resultado (datos
R: Primer canal R+1 R de coma flotante
de resultado de 32 bits)

ARC SINE Calcula el arco seno de un nmero de coma flotante de 32 bits y Salida 587
ASIN ASIN(463) sita el resultado en los canales de resultado especificados. (La Requerida
@ASIN funcin de arco seno es la inversa a la funcin de seno; devuelve el
S
463 ngulo que produce un valor de seno dado entre 1 y 1.)
R
Fuente (datos
S: Primer canal SIN1 S+1 S de coma flotante
fuente
de 32 bits)
R: Primer canal
de resultado Resultado (datos
R+1 R de coma flotante
de 32 bits)

ARC COSINE Salida 589


ACOS(464) Calcula el arco coseno de un nmero de coma flotante de 32 bits y
ACOS sita el resultado en los canales de resultado especificados. (La Requerida
@ACOS funcin de arco coseno es la inversa a la funcin de coseno; devuelve
S
464 el ngulo que produce un valor de coseno dado entre 1 y 1).
R
S: Primer canal Fuente (datos
COS1 S+1 S de coma flotante
fuente
R: Primer canal de 32 bits)
de resultado
Resultado (datos
R+1 R de coma flotante
de 32 bits)

ARC TANGENT Salida 591


ATAN(465) Calcula el arco tangente de un nmero de coma flotante de 32 bits y
ATAN sita el resultado en los canales de resultado especificados. (La Requerida
@ATAN funcin de arco tangente es la inversa a la funcin de tangente;
S
465 devuelve el ngulo que produce un valor de tangente dado).
R
Fuente (datos
S: Primer canal TAN1 S+1 S
fuente de coma flotante
R: Primer canal de 32 bits)
de resultado
Resultado (datos
R+1 R de coma flotante
de 32 bits)

SQUARE ROOT Salida 593


SQRT(466) Calcula la raz cuadrada de un nmero de coma flotante de 32
SQRT bits y sita el resultado en los canales de resultado especificados. Requerida
@SQRT
S
466 Fuente (datos
R S+1 S de coma flotante
S: Primer canal de 32 bits)
fuente
R: Primer canal R+1 R
Resultado (datos
de resultado de coma flotante
de 32 bits)

65
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
EXPONENT Calcula el exponencial natural (de base e) de un nmero de coma Salida 595
EXP EXP(467) Requerida
flotante de 32 bits y sita el resultado en los canales de resultado
@EXP S especificados.
467 Fuente (datos
R S+1 S de coma flotante
de 32 bits)
S: Primer canal
fuente e Resultado
R: Primer canal
de resultado R+1 R (datos de
coma flotante
de 32 bits)

LOGARITHM Salida 597


LOG LOG(468) Calcula el logaritmo natural (de base e) de un nmero de coma Requerida
@LOG flotante de 32 bits y sita el resultado en los canales de resultado
S especificados.
468 Fuente (datos de
R registro e S+1 coma flotante de
S
S: Primer canal 32 bits)
fuente
R: Primer canal Resultado (datos
de resultado R+1 R de coma flotante
de 32 bits)

EXPONENTIAL Eleva un nmero de coma flotante de 32 bits a la potencia de otro Salida 599
POWER B nmero de coma flotante de 32 bits. Requerida
PWR
@PWR E Consumo
840 R E+1 E
B: Primer canal
base B+1 S R+1 R
E: Primer canal
de exponente Base
R: Primer canal
de resultado

FLOATING SYM- Mediante LD: Compara los datos (32 bits) o constantes de precisin simple especifi- LD: 600
BOL COMPARI- cados y crea una condicin de ejecucin ON si el resultado de la Opcional
SON (slo CS1- Smbolo, opcin comparacin es verdadero.
H, CJ1-H, CJ1M S1 Con las instrucciones de comparacin de smbolos de coma flotante AND u OR:
o CS1D) es posible utilizar tres tipos de smbolos: LD (Load), AND y OR.
S2 Obligatoria
LD, AND u OR
+ Mediante AND:
=F (329), Smbolo, opcin
<>F (330),
<F (331), S1
<=F (332), S2
>F (333),
o >=F (334) Mediante OR:

Smbolo, opcin

S1
S2
S1: Datos de comparacin 1
S2: Datos de comparacin 2

66
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
FLOATING- Convierte los datos de coma flotante de precisin simple especificados Salida obliga- 604
POINT TO ASCII FSTR(448) (formato de coma decimal de 32 bits o exponencial) en datos de toria
(slo CS1-H, cadena de texto (ASCII) y enva el resultado al canal de destino.
CJ1-H, CJ1M o S
CS1D)
FSTR
C
@FSTR D
448
S: Primer canal
fuente
C: Canal de control
D: Canal de
destino

ASCII TO FLOA- Convierte la representacin de la cadena de texto especificada (ASCII) Salida obliga- 609
TING-POINT FVAL(449) de los datos de coma flotante de precisin simple (formato de coma toria
(slo CS1-H, decimal o exponencial) en datos de coma flotante de precisin simple
CJ1-H, CJ1M o S de 32 bits y enva el resultado a los canales de destino.
CS1D)
FVAL D
@FVAL
449 S: Canal fuente
D: Primer canal
de destino

2-2-14 Instrucciones de coma flotante de doble precisin


Las instrucciones de coma flotante de doble precisin slo se admiten en las
CPUs CS1-H, CJ1-H, CJ1M o CS1D.
Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin
Nemnico de ejecucin
DOUBLE Convierte los datos de coma flotante de doble precisin especificados Salida 620
FLOATING TO FIXD(841) (64 bits) en datos binarios con signo de 16 bits y enva el resultado al Requerida
16-BIT canal de destino.
BINARY S
FIXD D
@FIXD
841 S: Primer canal
fuente
D: Canal de
destino

DOUBLE Convierte los datos de coma flotante de doble precisin especificados (64 Salida 621
FLOATING TO FIXLD(842) bits) en datos binarios con signo de 32 bits y enva el resultado a los Requerida
32-BIT canales de destino.
BINARY S
FIXLD
@FIXLD D
842
S: Primer canal
fuente
D: Primer canal
de destino
16-BIT Convierte los datos binarios con signo de 16 bits especificados en datos Salida 623
BINARY TO DBL(843) de coma flotante de doble precisin (64 bits) y enva el resultado a los Requerida
DOUBLE canales de destino.
FLOATING S
DBL D
@DBL
843 S: Canal fuente
D: Primer canal
de destino

67
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de ejecucin
32-BIT Convierte los datos binarios con signo de 32 bits especificados en datos Salida 624
BINARY TO DBLL(844) de coma flotante de doble precisin (64 bits) y enva el resultado a los Requerida
DOUBLE canales de destino.
FLOATING S
DBLL D
@DBLL
844 S: Primer canal
fuente
D: Primer canal
de destino

DOUBLE Aade los valores de coma flotante de doble precisin especificados (64 Salida 626
FLOATING- +D(845) bits cada uno) y enva el resultado a los canales de resultado. Requerida
POINT ADD
+D Au
@+D Ad
845
R
Au: Primer canal
de sumando
Ad: Primer canal
de nmero adicion
R: Primer canal
de resultado

DOUBLE Resta los valores de coma flotante de doble precisin especificados (64 Salida 628
FLOATING- D(846) bits cada uno) y enva el resultado a los canales de resultado. Requerida
POINT SUB-
TRACT Mi
D Su
@D
846 R
Mi: Primer canal
deminuendo
Su: Primer canal
de sustraendo
R: Primer canal
de resultado
DOUBLE Multiplica los valores de coma flotante de doble precisin especificados Salida 630
FLOATING- *D(847) (64 bits cada uno) y enva el resultado a los canales de resultado. Requerida
POINT MULTI-
PLY Md
*D Mr
@*D
847 R
Md: Primer canal
de multiplicando
Mr: Primer canal
de multiplicador
R: Primer canal
de resultado
DOUBLE Divide los valores de coma flotante de doble precisin especificados Salida 632
FLOATING- /D(848) (64 bits cada uno) y enva el resultado a los canales de resultado. Requerida
POINT DIVIDE
/D Dd
@/D Dr
848
R
Dd: Primer canal
de dividendo
Dr: Primer canal
de divisor
R: Primer canal
de resultado

68
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de ejecucin
DOUBLE Convierte los datos de coma flotante de doble precisin especificados Salida 634
DEGREES TO RADD(849) (64 bits) de grados a radianes y enva el resultado a los canales de des- Requerida
RADIANS tino.
S
RADD
@RADD R
849
S: Primer canal
fuente
R: Primer canal
de resultado
DOUBLE Convierte los datos de coma flotante de doble precisin especificados Salida 636
RADIANS TO DEGD(850) (64 bits) de radianes en grados y enva el resultado a los canales de des- Requerida
DEGREES tino.
S
DEGD
@DEGD R
850
S: Primer canal
fuente
R: Primer canal
de resultado
DOUBLE SINE Calcula el seno del ngulo (radianes) de los datos de coma flotante de Salida 637
SIND SIND(851) doble precisin especificados (64 bits) y enva el resultado a los canales Requerida
@SIND de resultado.
S
851
R
S: Primer canal
fuente
R: Primer canal
de resultado
DOUBLE Calcula el coseno del ngulo (radianes) de los datos de coma flotante de Salida 639
COSINE COSD(852) doble precisin especificados (64 bits) y enva el resultado a los canales Requerida
COSD de resultado.
@COSD S
852 R
S: Primer canal
fuente
R: Primer canal
de resultado
DOUBLE Calcula la tangente del ngulo (radianes) de los datos de coma flotante Salida 641
TANGENT TAND(853) de doble precisin especificados (64 bits) y enva el resultado a los cana- Requerida
TAND les de resultado.
S
@TAND
853 R
S: Primer canal
fuente
R: Primer canal
de resultado
DOUBLE ARC Calcula el ngulo (en radianes) a partir del valor del seno de los datos de Salida 643
SINE ASIND(854) coma flotante de doble precisin especificados (64 bits) y enva el resul- Requerida
ASIND tado a los canales de resultado. (La funcin de arco seno es la inversa de
S la funcin de seno; devuelve el ngulo que produce un valor de seno
@ASIND
R dado entre -1 y 1.)
854

S: Primer canal
fuente
R: Primer canal
de resultado
DOUBLE ARC Calcula el ngulo (en radianes) a partir del valor del coseno de los datos Salida 645
COSINE ACOSD(855) de coma flotante de doble precisin especificados (64 bits) y enva el Requerida
ACOSD resultado a los canales de resultado. (La funcin de arco coseno es la
S inversa de la funcin de coseno; devuelve el ngulo que produce un valor
@ACOSD
R de coseno dado entre -1 y 1.)
855

S: Primer canal
fuente
R: Primer canal
de resultado

69
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de ejecucin
DOUBLE ARC Calcula el ngulo (en radianes) a partir del valor de la tangente de los Salida 647
TANGENT ATAND(856) datos de coma flotante de doble precisin especificados (64 bits) y enva Requerida
ATAND el resultado a los canales de resultado. (La funcin de arco tangente es la
@ATAND
S inversa a la funcin de tangente; devuelve el ngulo que produce un valor
856 R de tangente dado).

S: Primer canal
fuente
R: Primer canal
de resultado
DOUBLE Calcula la raz cuadrada de los datos de coma flotante de doble precisin Salida 649
SQUARE SQRTD(857) especificados (64 bits) y enva el resultado a los canales de resultado. Requerida
ROOT
S
SQRTD
@SQRTD R
857
S: Primer canal
fuente
R: Primer canal
de resultado
DOUBLE Calcula la exponencial natural (base e) de los datos de coma flotante de Salida 651
EXPONENT EXPD(858) doble precisin especificados (64 bits) y enva el resultado a los canales Requerida
EXPD de resultado.
@EXPD
S
858 R
S: Primer canal
fuente
R: Primer canal
de resultado
DOUBLE Calcula el logaritmo natural (base e) de los datos de coma flotante de Salida 653
LOGARITHM LOGD(859) doble precisin especificados (64 bits) y enva el resultado a los canales Requerida
LOGD de resultado.
@LOGD
S
859 R
S: Primer canal
fuente
R: Primer canal
de resultado
DOUBLE Eleva un nmero de coma flotante de doble precisin (64 bits) a la poten- Salida 655
EXPONEN- PWRD(860) cia de otro nmero de coma flotante de doble precisin y enva el resul- Requerida
TIAL POWER tado a los canales de resultado.
PWRD B
@PWRD E
860
R
B: Primer canal base
E: Primer canal de
exponente
R: Primer canal
de resultado
DOUBLE Mediante LD: Compara los datos de doble precisin especificados (64 bits) y crea una LD: 657
SYMBOL condicin de ejecucin ON si el resultado de la comparacin es verda- Opcional
COMPARISON Smbolo, opcin dero.
LD, AND u OR S1 Con las instrucciones de comparacin de smbolos de coma flotante es AND u OR:
+ S2 posible utilizar tres tipos de smbolos: LD (Load), AND y OR. Obligatoria
=D (335),
<>D (336), Mediante AND:
<D (337), Smbolo, opcin
<=D (338),
>D (339), S1
o >=D (340) S2

Mediante OR:

Smbolo, opcin

S1
S2
S1: Datos de comparacin 1
S2: Datos de comparacin 2

70
Funciones de las instrucciones Seccin 2-2

2-2-15 Instrucciones de proceso de datos de tabla


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin
Nemnico de ejecucin
SET STACK Define una pila de la longitud especificada que comienza en el canal Salida 666
SSET(630)
SSET especificado e inicializa los canales en la regin de datos, Requerida
@SSET TB ponindolos a cero.
630 Direccin de memoria
N de E/S interna
TB
TB: Primera m+(N1)
TB+1 N
direccin de pila
N: Nmero de TB+2 canales
canales TB+3 apilados
ltimo
canal de
la pila Puntero
de pila
m+(N1)

PUSH ONTO Escribe un canal de datos en la pila especificada. Salida 669


STACK PUSH(632) Requerida
Direccin de Direccin de
PUSH TB memoria de E/S
@PUSH memoria de E/S
interna interna
632 S
TB TB
TB+1 TB+1
TB: Primera
TB+2 TB+2
direccin de pila TB+3 PUSH(632) TB+3
S: Canal fuente

LAST IN Lee el ltimo canal de datos escritos en la pila especificada Salida 675
FIRST OUT LIFO(634)
(los datos ms recientes de la pila). Requerida
LIFO TB
@LIFO Puntero de Direccin de memo- Direccin de memo-
634 D pila ria de E/S interna ria de E/S interna
TB: Primera TB Datos TB
direccin de pila TB+1 ms TB+1
D: Canal de TB+2
recientes TB+2
destino TB+3 m1
TB+3
Puntero
de pila
m1 m1
A se
queda sin
cambiar.
LIFO (ltimo en entrar,
El puntero primero en salir)
disminuye.

FIRST IN Lee el primer canal de datos escritos en la pila especificada (los Salida 672
FIRST OUT FIFO(633) Requerida
datos ms antiguos de la pila).
FIFO TB
@FIFO Direccin de memo- Direccin de memo-
ria de E/S interna ria de E/S interna
633 D
TB Datos TB

TB: Primera Puntero TB+1 ms TB+1


direccin de pila de pila TB+2 antiguos TB+2
D: Canal de TB+3
m1
TB+3
destino Puntero
de pila
m1

FIFO (primero en entrar, primero en salir)

71
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de ejecucin
DIMENSION Define una tabla de registros declarando la longitud de cada registro Salida 678
RECORD DIM(631)
y el nmero de registros. Es posible definir hasta 16 tablas de Requerida
TABLE
N
DIM Nmero de tabla (N)
@DIM LR
631
NR Registro 1
TB
N: Nmero de
tabla Nmero de registros LR NR
LR: Longitud de canales
cada registro
NR: Nmero de
registros Nmero de
TB: Primer canal registro
de la tabla
SET RECORD Escribe la posicin del registro especificado (la direccin de memoria Salida 681
LOCATION SETR(635)
de E/S interna del principio del registro) en el registro de ndice Requerida
SETR N especificado.
@SETR Direccin de memoria
635 R Nmero de tabla (N) de E/S interna
SETR(635) escribe la direccin de
D memoria de E/S interna (m) del primer
N: Nmero de R canal del registro R en el registro de
tabla ndice D.
R: Nmero de
registro Nmero de
D: Registro de registro (R)
ndices de destino

GET Devuelve el nmero de registro del registro situado en la direccin de Salida 683
RECORD GETR(636) memoria de E/S interna contenida en el registro de ndice Requerida
NUMBER especificado.
GETR N
@GETR IR Nmero de tabla (N) Direccin de
636 memoria de E/S interna
D
N: Nmero de GETR(636) escribe el
tabla Nmero de nmero de registro del
IR: Registro de IR
registro (R) registro que incluye la
ndice direccin de memoria
D: Canal de de E/S (m) en D.
destino

DATA Busca un canal de datos dentro de un rango de canales. Salida 685


SEARCH SRCH(181) Requerida
SRCH Direccin de memoria
@SRCH
C de E/S interna
181 R1
R1 Buscar
Cd
C Cd
C: Primer canal
de control
R1: Primer canal
del rango R1+(C-1)
Cd: Datos de Coincidencia
comparacin

72
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de ejecucin
SWAP BYTES Cambia los bits de la izquierda y de la derecha en todos los Salida 687
SWAP(637)
SWAP canales del rango. Requerida
@SWAP N Intercambio de la posicin de los bytes.
637
R1
N: Nmero de R1
canales
R1: Primer canal N
del rango

FIND Busca el valor mximo del rango. Salida 689


MAXIMUM MAX(182) Requerida
MX Direccin de memoria
@MAX
C de E/S interna
182 R1 R1

D Canales C
C: Primer canal Valor
de control mx.
R1: Primer canal R1+(W 1)
del rango
D: Canal de
destino

FIND Busca el valor mnimo del rango. Salida 693


MINIMUM MIN(183)
Requerida
MIN Direccin de
C memoria de E/S interna
@MIN
R1
183 R1
D Canales C
C: Primer canal
de control Valor mn.
R1: Primer canal R1+(W1)
del rango
D: Canal de
destino

SUM Suma los bytes o canales del rango y enva el resultado a dos Salida 697
SUM SUM(184) Requerida
canales.
@SUM C
184
R1
D R1

C: Primer canal
de control
R1: Primer canal R1+(W1)
del rango )
D: Primer canal
de destino

FRAME Calcula el valor FCS ASCII para el rango especificado. Salida 700
CHECKSUM FCS(180) Requerida
FCS R1
@FCS C
180 R1 Unidades C

D
C: Primer canal Conversin ASCII
de control Clculo
R1: Primer canal Valor FCS
del rango
D: Primer canal
de destino

73
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin
Nemnico de ejecucin
STACK SIZE Cuenta la cantidad de datos apilados (nmero de canales) de la pila espe- Salida obliga- 704
READ (slo SNUM(638) cificada. toria
CS1-H, CJ1-
H, CJ1M o TB
CS1D)
SNUM
D
@SNUM TB: Primera
638 direccin de pila
D: Canal de
destino

STACK DATA Lee los datos del elemento de datos especificado de la pila. El valor de Salida obliga- 707
READ (slo SREAD(639) desplazamiento indica la posicin del elemento de datos deseado (cun- toria
CS1-H, CJ1- tos elementos de datos situados antes de la posicin del puntero actual).
H, CJ1M o TB
CS1D) C
SREAD
@SREAD D
639 TB: Primera
direccin de pila
C: Valor de
desplazamiento
D: Canal de
destino

STACK DATA Escribe los datos fuente en el elemento de datos especificado de la pila Salida obliga- 710
OVERWRITE SWRIT(640) (sobrescribiendo los datos existentes). El valor de desplazamiento indica toria
(slo CS1-H, la posicin del elemento de datos deseado (cuntos elementos de datos
CJ1-H, CJ1M TB situados antes de la posicin del puntero actual).
o CS1D)
SWRIT
C
@SWRIT S
640
TB: Primera
direccin de pila
C: Valor de
desplazamiento
S: Datos fuente

STACK DATA Inserta los datos fuente en la posicin especificada de la pila y desplaza Salida obliga- 713
INSERT (slo SINS(641) el resto de los datos de la pila situada debajo. El valor de desplazamiento toria
CS1-H, CJ1- indica la posicin del punto de insercin (cuntos elementos de datos
H, CJ1M o TB situados antes de la posicin del puntero actual).
CS1D) C
SINS
@SINS S
641
TB: Primera
direccin de pila
C: Valor de
desplazamiento
S: Datos fuente
STACK DATA Elimina los datos fuente en la posicin especificada de la pila y desplaza Salida obliga- 716
DELETE SDEL(642) el resto de los datos de la pila situada debajo. El valor de desplazamiento toria
(slo CS1-H, indica la posicin del punto de eliminacin (cuntos elementos de datos
CJ1-H, CJ1M TB situados antes de la posicin del puntero actual).
o CS1D) C
SDEL
@SDEL D
642
TB: Primera
direccin de pila
C: Valor de
desplazamiento
D: Canal de
destino

74
Funciones de las instrucciones Seccin 2-2

2-2-16 Instrucciones de control de datos


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
PID CONTROL Ejecuta el control PID de acuerdo con los parmetros especif Salida 720
PID PID(190) Requerida
Parmetros (C a C+8)
190 S
C
D Entrada de PV (S) Control PID

S: Canal de entrada
C: Primer canal de
parmetro
D: Canal de salida Variable manipulada (D)

PID CONTROL Ejecuta el control PID de acuerdo con los parmetros especificados. Salida obliga- 731
WITH PIDAT(191) Las constantes PID pueden ajustarse automticamente con toria
AUTOTUNING PIDAT(191).
PIDAT S
191 C
(Slo CS1-H,
CJ1-H o CJ1M) D

S: Canal de entrada
C: Primer canal de
parmetro
D: Canal de salida

LIMIT Controla los datos de salida en funcin de si los datos de entrada Salida 741
CONTROL LMT(680) Requerida
estn o no dentro de los lmites superior e inferior.
LMT S
@LMT
680 C
D
S: Canal de entrada Lmite
C: Primer canal de superior C+1
lmite
D: Canal de salida

Lmite
inferior C

DEAD BAND Controla los datos de salida en funcin de si los datos de entrada Salida 743
CONTROL BAND(681) Requerida
estn o no dentro del rango de banda muerta.
BAND S Salida
@BAND
681 C
D
Lmite inferior (C)
S: Canal de entrada
C: Primer canal de
lmite Entrada
D: Canal de salida
Lmite superior (C+1)

75
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DEAD ZONE Suma la desviacin especificada a los datos de entrada Salida 746
CONTROL ZONE(682) Requerida
y enva el resultado. Salida
ZONE S
@ZONE
682 C
Desviacin positiva (C+1)
D
S: Canal de Entrada
entrada
C: Primer canal de
lmite
D: Canal de salida Desviacin
negativa (C)

TIME-PROPOR- Introduce la relacin ON/OFF o la variable manipulada del canal espe- Salida 749
TIONAL TPO (685)
cificado, convierte la relacin ON/OFF en una salida proporcional de Requerida
OUTPUT
S tiempo en funcin de los parmetros especificados y genera la salida
TPO
del resultado de la salida especificada.
685 C
(Unidades de la R
serie CS/CJ Ver.
2.0 posterior S: Canal de
solamente) entrada
C: Primer canal
de parmetro
R: Bit de salida de
impulsos

SCALING Convierte datos binarios sin signo en datos BCD sin signo, de Salida 757
SCL SCL(194) acuerdo con la funcin lineal especificada. Requerida
@SCL
S La conversin a escala se
194 R (BCD sin signo) ejecuta de acuerdo con la
P1 funcin lineal definida por los
puntos A y B.
R
S: Canal fuente Punto B P (BCD)
P1: Primer canal Valor
de parmetro P1 + 1 (BIN) convertido
Punto A
R: Canal de P1 +2 (BCD)
resultado Valor
P1 +3 (BIN) convertido
S (binario sin signo)

76
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
SCALING 2 Convierte datos binarios con signo en datos BCD con signo, de Salida 762
SCL2 SCL2(486) acuerdo con la funcin lineal especificada. Se puede introducir un Requerida
@SCL2 desplazamiento cuando se define la funcin lineal.
486
S
P1 Desplazamiento positivo Desplazamiento negativo
R (BCD con signo) R (BCD con signo)
R
S: Canal fuente
P1: Primer canal
de parmetro Y
R: Canal de
resultado Desplaza- Y
miento X
X

S (binario con signo) S (binario


con signo)
Desplaza-
miento

Desplazamiento de 0000
P1 Desplazamiento (Binario con signo) R (BCD con signo)
P1 + 1 Y (Binario con signo)
P1 + 2 X (BCD con signo)

Y
Desplazamiento = 0000 hex.
X
S (binario
con signo)

77
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
SCALING 3 Salida 766
SCL3(487) Convierte datos BCD con signo en datos binarios con signo, de
SCL3 acuerdo con la funcin lineal especificada. Se puede introducir un Requerida
@SCL3
S desplazamiento cuando se define la funcin lineal.
487
P1 Desplazamiento positivo Desplazamiento negativo

R R (binario con signo) R (binario con signo)


S: Canal fuente
P1: Primer canal Conversin mx.
de parmetro Conversin
R: Canal de mx.
resultado
Y Y

X X
Desplaza-
Conversin miento Desplaza- S (BCD con signo)
miento
mn.
S (BCD con signo)
Conversin mn.

Desplazamiento de 0000

R (binario con signo)

Conversin
mx.

X
S (BCD con signo)

Conversin mn.

AVERAGE Calcula el valor medio de un canal de entrada para el nmero Salida 769
AVG AVG(195) especificado de ciclos. Requerida
195 S S: Canal fuente
N
R
S: Canal fuente
N: Nmero de
ciclos N: Nmero de ciclos
R: Canal de
resultado

R+1 Puntero
Indicador vlido de media Media
R +2

R +3

N valores

R+N+1

78
Funciones de las instrucciones Seccin 2-2

2-2-17 Instrucciones de subrutina


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
SUBROUTINE Salida 773
CALL SBS(091) Llama a la subrutina con el nmero de subrutina especificado
y ejecuta dicho programa. Requerida
SBS N
@SBS Condicin de ejecucin ON
091 N: Nmero de
subrutina

Programa
principal

Programa de
subrutina
(SBN(092) a
RET(093))

Fin del programa

MACRO Llama a la subrutina con el nmero de subrutina especificado y Salida 779


MCRO MCRO(099) Requerida
ejecuta dicho programa utilizando los parmetros de entrada en S a
@MCRO S+3 y los parmetros de salida en D a D+3.
099
N
S MCRO(099)

D
N: Nmero de
subrutina
S: Primer canal
de parmetro de Ejecucin de
subrutina entre
entrada SBN(092) y
RET(093).
D: Primer canal MCRO(099)
de parmetro de
salida
La subrutina utiliza A600a
A603 como entradas y A604
a A607 como salidas.

SUBROUTINE Indica el principio del programa de subrutina con el nmero de Salida 783
ENTRY SBN(092) subrutina especificado. No requerida
SBN N
092
N: Nmero de
subrutina o

Regin de subrutina

SUBROUTINE Indica el final del programa de subrutina. Salida 786


RETURN RET(093) No requerida
RET
093

79
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
GLOBAL Llama a la subrutina con el nmero de subrutina especificado y eje- Salida 786
SUBROUTINE GSBS(750) cuta dicho programa. No requerida
CALL (slo CS1-
H, CJ1-H, CJ1M N
o CS1D)
GSBS N: Nmero de
subrutina
750
GLOBAL Indica el principio del programa de subrutina con el nmero de subru- Salida 794
SUBROUTINE GSBN(751) tina especificado. No requerida
ENTRY (slo
CS1-H, CJ1-H, N
CJ1M o CS1D)
GSBN N: Nmero de
subrutina
751
GLOBAL Indica el final del programa de subrutina. Salida 797
SUBROUTINE GRET(752) No requerida
RETURN (slo
CS1-H, CJ1-H,
CJ1M o CS1D)
GRET
752

2-2-18 Instrucciones de control de interrupcin


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
SET INTERRUPT Selecciona el proceso de interrupcin para interrupciones de E/S o Salida 798
MASK MSKS(690) interrupciones programadas. Tanto las tareas de interrupcin de E/S Requerida
(No se admite en como las programadas estn enmascaradas (deshabilitadas) cuando el
las CPUs CS1D N PLC se conecta por primera vez. MSKS(690) se puede utilizar para
para sistemas desenmascarar o enmascarar las interrupciones de E/S y seleccionar los
de CPU doble). S
intervalos de tiempo para interrupciones programadas.
MSKS N: Identificador Unidad de entrada de interrupcin 0 a 3
@MSKS de interrupcin
690 S: Datos de Interrupcin
interrupcin
de E/S Enmascarar (1) o
desenmascarar (0)
entradas de
interrupcin 0 a 7.

Intervalo de tiempo
Interrupcin
programada
Seleccionar intervalo de
tiempo de interrupcin
programada.

READ Lee las selecciones de procesamiento de interrupcin actual que se Salida 804
INTERRUPT MSKR(692) realizaron con MSKS(690). Requerida
MASK
(No se admite en N
las CPUs CS1D D
para sistemas
de CPU doble). N: Identificador
MSKR de interrupcin
@MSKR D: Canal de
692 destino

80
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
CLEAR Salida 809
INTERRUPT CLI(691) Borra o retiene las entradas de interrupcin registradas para
Requerida
(No se admite en interrupciones de E/S o selecciona la hora para la primera de
las CPUs CS1D N las interrupciones
para sistemas S N=0a3
de CPU doble).
N: Identificador
CLI Entrada de
@CLI de interrupcin Entrada de
S: Datos de interrup- interrup-
691 interrupcin cin n cin n
Estado Estado
interno interno

Interrupcin registrada borrada Interrupcin registrada retenida


N=4a5
MSKS(690)
Ejecucin de tarea de
interrupcin programada.

Hora de la primera
interrupcin programada

DISABLE Deshabilita la ejecucin de todas las tareas de interrupcin Salida 814


INTERRUPTS DI(693) excepto la interrupcin de alimentacin OFF. Requerida
DI
@DI
693

Deshabilita la ejecucin
de todas las tareas de
interrupcin (excepto la
interrupcin de
alimentacin OFF).

ENABLE Habilita la ejecucin de todas las tareas de interrupcin que se Salida 816
INTERRUPTS EI(694) deshabilitaron con DI(693). No requerida
EI
694

Deshabilita la ejecucin
de todas las tareas de
interrupcin (excepto la
interrupcin de
alimentacin OFF).

Habilita la ejecucin
de todas las tareas
de interrupcin
deshabilitadas.

81
Funciones de las instrucciones Seccin 2-2

2-2-19 Instrucciones de contador de alta velocidad y salida de impulsos


(slo CJ1M-CPU21/22/23)
Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
MODE CON- INI(880) se utiliza para iniciar y detener la comparacin del Salida 823
INI
TROL valor objetivo, para cambiar el valor actual (PV) de alta veloci- Requerida
INI P dad, para cambiar el valor actual de una entrada de interrup-
@INI cin (modo contador), para cambiar el valor actual de una
C
880 salida de impulsos o para detener la salida de impulsos.
NV

P: Especificador
de puerto
C: Datos de
control
NV: Primer canal
con el nuevo valor
actual (PV)
HIGH-SPEED PRV(881) se utiliza para leer el valor actual (PV) de alta veloci- Salida 827
PRV
COUNTER PV dad, una salida de impulsos o una entrada de interrupcin Requerida
READ P (modo contador).
PRV
@PRV C
881 D

P: Especificador
de puerto
C:Datos de
control
D: Primer canal
de destino
COUNTER Lee la entrada de frecuencia de impulsos de un contador de alta velo- Salida 833
FREQUENCY PRV2 cidad y convierte la frecuencia en una velocidad de rotacin (nmero Requerida
CONVERT C1 de revoluciones) o convierte el valor actual del contador en el nmero
PRV2 total de revoluciones. El resultado se enva a los canales de destino en
883 C2 forma de valor hexadecimal de 8 dgitos. Los impulsos slo pueden
proceder del contador de alta velocidad 0.
(CPU CJ1M Ver. D
2.0 posterior
solamente) C1:Datos de
control
C2: Impul-
sos/revolucin
D: Primer canal
de destino

COMPARISON CTBL(882) se utiliza para realizar comparaciones de rangos o de Salida 837


TABLE LOAD CTBL valores objetivo del valor actual (PV) de alta velocidad. Requerida
CTBL P
@CTBL
C
882
TB

P: Especificador
de puerto
C:Datos de
control
TB: Primer canal
de la tabla de
comparacin
SPEED OUTPUT SPED(885) se utiliza para especificar la frecuencia y llevar a cabo la Salida 841
SPED salida de impulsos sin aceleracin ni deceleracin.
SPED Requerida
@SPED P
885
M
F

P: Especificador
de puerto
M:Modo de salida
F:Primer canal de
la frecuencia de
impulsos

82
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
SET PULSES PULS(886) se utiliza para establecer el nmero de impulsos de la Salida 846
PULS salida.
PULS Requerida
@PULS P
886
T
N

P: Especificador
de puerto
T: Tipo de
impulso
N: Nmero de
impulsos
PULSE OUTPUT PLS2(887) se utiliza para establecer la frecuencia de impulsos y las Salida 849
PLS2 velocidades de aceleracin o deceleracin, as como para llevar a
PLS2 Requerida
@PLS2 P cabo la salida de impulsos con aceleracin o deceleracin (con distin-
tas velocidades de aceleracin o deceleracin). Slo es posible el
887 M posicionamiento.
S
F

P: Especificador
de puerto
M: Modo de
salida
S:Primer canal de
la tabla de
opciones
F: Primer canal
de la frecuencia
de inicio
ACCELERA- ACC(888) se utiliza para establecer la frecuencia de impulsos y las Salida 855
TION CONTROL ACC velocidades de aceleracin o deceleracin, as como para llevar a Requerida
ACC P cabo la salida de impulsos con aceleracin o deceleracin (con la
@ACC misma velocidad de aceleracin o deceleracin). Tanto el posiciona-
888 M miento como el control de velocidad son posibles.
S

P: Especificador
de puerto
M:Modo de salida
S:Primer canal de
la tabla de
opciones
ORIGIN ORG(889) se utiliza para realizar bsquedas de origen y vueltas a Salida 862
SEARCH ORG ste. Requerida
ORG P
@ORG
C
889
P: Especificador
de puerto
C:Datos de
control
PULSE WITH PWM(891) se utiliza para enviar impulsos con una relacin ON/OFF Salida 865
VARIABLE PWM variable. Requerida
DUTY FACTOR P
PWM
@ F
891 D

P: Especificador
de puerto
F: Frecuencia
D: Tiempo de
conexin relativo

83
Funciones de las instrucciones Seccin 2-2

2-2-20 Instrucciones de paso


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
STEP DEFINE STEP(008) funciona de las dos maneras siguientes, dependiendo de Salida 868
STEP STEP(008) su posicin y de si se ha especificado o no un bit de control. Requerida
008 (1) Inicia un paso especfico.
B
(2) Finaliza el rea de programacin de pasos (ejecucin de pasos).
B: Bit

STEP START SNXT(009) se utiliza de las tres formas siguientes: Salida 868
SNXT SNXT(009) (1) Para iniciar la ejecucin de una programacin de pasos. Requerida
009 B (2) Para continuar con el bit de control de pasos siguiente.
(3) Para finalizar la ejecucin de una programacin de pasos.
B: Bit

2-2-21 Instrucciones de Unidades de E/S bsicas


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
I/O REFRESH Refresca los canales de E/S especificados. Salida 885
IORF IORF(097) Requerida
Unidad de E/S o
@IORF rea de bit de E/S o
St Unidad de E/S
097 rea de bit de unidad especial
E de E/S especial
St: Canal inicial Refresco
St
E: Canal final de E/S

7-SEGMENT Salida 888


DECODER SDEC(078) Convierte el contenido hexadecimal del los dgitos designados en
un cdigo de 8 bits de display de 7 segmentos y lo sita en los Requerida
SDEC
@SDEC S 8 bits de mayor o menor peso de los canales de destino
especificados.
078 Di
D Di
Nmero de dgitos
S: Canal fuente
Primer dgito
Di: Indicador de para convertir
dgito
D: Primer canal
de destino

8 bits de la derecha (0)

7 segmentos

84
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DIGITAL Lee el valor establecido en un interruptor digital externo (o un interruptor Salida 890
SWITCH INPUT DSW (210) manual) conectado a una Unidad de entrada o una Unidad de salida, Requerida
DSW I y almacena los datos BCD de 4 dgitos u 8 dgitos en los canales espe-
210 cificados.
(CPUs de la O
serie CS/CJ Ver. D
2.0 posterior
solamente) C1
C2
E: Canal de entrada
de datos (D0 a D3)
O: Canal de salida
D: Primer canal
de resultado
C1: Nmero de
dgitos
C2: Canal del
sistema

TEN KEY INPUT Lee datos numricos de un teclado de diez teclas conectado a una Salida 896
TKY TKY (211) Unidad de entrada y almacena hasta 8 dgitos de datos BCD en los Requerida
211 I canales especificados.
(CPUs de la
serie CS/CJ Ver. D1
2.0 posterior
solamente) D2

I: Canal de
entrada de
datos
D1: Primer canal
registro
D2: Canal de
entrada de
tecla
HEXADECIMAL Lee datos numricos de un teclado hexadecimal conectado a una Uni- Salida 899
KEY INPUT HKY (212) dad de entrada y una Unidad de salida, y almacena hasta 8 dgitos de Requerida
HKY datos hexadecimales en los canales especificados.
I
212
(CPUs de la O
serie CS/CJ Ver.
2.0 posterior D
solamente) C
I: Canal de
entrada de
datos
S: Canal de
salida
D: Primer canal
registro
C: Canal del
sistema

MATRIX INPUT Introduce un mximo de 64 seales de una matriz 8 8 conectada a Salida 904
MTR MTR (213) una Unidad de entrada y una Unidad de salida (mediante 8 puntos de Requerida
213 I entrada y 8 puntos de salida) y almacena los datos de 64 bits en los 4
(CPUs de la canales de destino.
serie CS/CJ Ver. O
2.0 posterior
solamente) D
C
I: Canal de
entrada de
datos
S: Canal de
salida
D: Primer canal
de destino
C: Canal del
sistema

85
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
7-SEGMENT Convierte los datos de origen (BCD de 4 dgitos u 8 dgitos) en datos de Salida 908
DISPLAY 7SEG (214) visualizacin de 7 segmentos y produce la salida de los datos en el Requerida
OUTPUT
S canal de salida especificado.
7SEG
214 O
(CPUs de la
serie CS/CJ Ver. C
2.0 posterior
solamente) D
S: Primer canal
fuente
S: Canal de salida
C: Datos de control
D: Canal del
sistema

INTELLIGENT Lee el contenido del rea de memoria para la Unidad de E/S Salida 913
I/O READ IORD(222)
especial o la Unidad de bus de CPU (ver nota). Requerida
IORD C
@IORD S
222 S
D
C: Datos de
S+1
control
S: Fuente y n- Nmero de unidad de la
mero de canales
de transferencia Unidad de E/S especial
D: Destino y n-
mero de canales
de transferencia
Nmero
desig-
nado de
canales
ledos.

Nota: CPUs de la serie CS/CJ Ver. 2.0 o posterior (incluidas las CPUs
CS1-H, CJ1-H y CJ1M a partir del nmero de lote 030418 o
posterior) pueden leer en Unidades de bus de CPU.
INTELLIGENT Enva el contenido del rea de memoria de E/S de la CPU a la Salida 917
I/O WRITE IOWR(223) Requerida
Unidad de E/S especial o la Unidad de bus de CPU (ver nota).
IOWR C
@IOWR
S D
223
D+1
D
C: Datos de control Nmero de unidad de la
S: Fuente y Unidad de E/S especial
nmero de canales
de transferencia
D: Destino y
nmero de canales
de transferencia
Nmero
designado
de canales
escritos.

Nota: CPUs de la serie CS/CJ Ver. 2.0 o posterior (incluidas las CPUs
CS1-H, CJ1-H y CJ1M a partir del nmero de lote 030418 o
posterior) pueden escribir en Unidades de bus de CPU.
CPU BUS UNIT Refresco inmediato de la E/S de la Unidad de bus de CPU con el Salida 921
I/O REFRESH DLNK(226) nmero de Unidad especificado. obligatoria
(slo CS1-H,
CJ1-H, CJ1M o N
CS1D)
DLNK N: Nmero de
@DLNK Unidad
226

86
Funciones de las instrucciones Seccin 2-2

2-2-22 Instrucciones de comunicaciones serie


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
PROTOCOL Llama y ejecuta una secuencia de comunicaciones registrada en una Salida 928
MACRO PMCR(260) tarjeta o Unidad de comunicaciones serie (slo series CS) o Unidad Requerida
PMCR de comunicaciones serie.
@PMCR C1 CPU Unidad de comunicaciones serie
260 C2 Puerto
S
S
R a
C1: Canal de control 1
C2: Canal de control 2
S: Primer canal de
envo
R: Primer canal de
recepcin
R
Dispositivo
a externo

TRANSMIT Pone en salida el nmero especificado de bytes de datos desde el Salida 937
TXD TXD(236) puerto RS-232C incorporado en la CPU o el puerto serie de una Requerida
@TXD tarjeta de comunicaciones serie (versin 1.2 o posterior).
236
S
C
N
S: Primer canal
fuente
C: Canal de
control
N: Nmero de
bytes 0000 a
0100 hex
(0 a 256 decimal)

RECEIVE Lee el nmero especificado de bytes de datos desde el puerto Salida 944
RXD RXD(235) RS-232C incorporado en la CPU o el puerto serie de una tarjeta de Requerida
@RXD comunicaciones serie (versin 1.2 o posterior).
D
235
C
N
D: Primer canal de
destino
C: Canal de control
N: Nmero de
bytes para almace-
nar 0000 a 0100
hex (0 a 256
decimal)

TRANSMIT VIA Transmite el nmero especificado de bytes de datos desde el puerto Salida 952
SERIAL COM- TXDU(256) serie de una Unidad de comunicaciones serie cuya versin de unidad Requerida
MUNICATIONS es 1.2 o posterior. Los datos se ponen en salida en modo sin protocolo
UNIT S con el cdigo de inicio y cdigo de fin (en su caso) especificados en el
TXDU rea de configuracin DM asignada.
@TXDU
C
256 N
S: Primer canal
fuente
C: Primer canal
de control
N: Nmero de
bytes 0000 a
0256 BCD

87
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
RECEIVE VIA Lee el nmero especificado de bytes de datos desde el puerto serie de Salida 960
SERIAL RXDU(255) una Unidad de comunicaciones serie cuya versin de unidad es 1.2 o Requerida
COMMUNICA- posterior. Los datos se leen en modo sin protocolo con el cdigo de ini-
TIONS UNIT D cio y cdigo de fin (en su caso) especificados en el rea de configura-
RXDU cin DM asignada.
C
@RXDU
255 N
D: Primer canal
de destino
C: Primer canal
de control
N: Nmero de
bytes a alma-
cenar 0000 a
0256 BCD

CHANGE Cambia los parmetros de comunicaciones de un puerto serie de la Salida 968


SERIAL PORT STUP(237) CPU, de la Unidad de comunicaciones serie (Unidad de bus de CPU) o Requerida
SETUP de la tarjeta de comunicaciones serie. STUP(237) habilita as el modo
STUP C de protocolo para que se pueda cambiar durante el funcionamiento del
@STUP PLC.
S
237
C: Canal de
control (puerto)
S: Primer canal
fuente

2-2-23 Instrucciones de red


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
NETWORK Salida 991
SEND SEND(090) Enva datos a un nodo de la red.
Requerida
SEND S Nodo local Nodo de destino
@SEND
15 0 15 0
090 D
S n: D
C Nmero
de n
S: Primer canal canales
fuente de
D: Primer canal envo
de destino
C: Primer canal
de control

NETWORK Salida 997


RECEIVE RECV(098) Solicita la transmisin de datos desde un nodo de la red y
recibe los datos. Requerida
RECV S
@RECV
D Nodo local Nodo fuente
098
15 0 15 0
C
D S
S: Primer canal m n
fuente
D: Primer canal
de destino
C: Primer canal
de control

88
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DELIVER Enva comandos FINS y recibe la respuesta. Salida 1003
COMMAND CMND(490) Requerida
CMND S Nodo local Nodo de destino
@CMND
490 D 15 0
S
C Datos de Comando
S: Primer canal comando
de comando (S1) (n bytes) Interpretar
D: Primer canal + n
de respuesta 2
C: Primer canal
de control

15 0
D Respuesta
Datos
de res- Ejecutar
(D1) puesta
+ m (m bytes)
2

EXPLICIT Enva un mensaje explcito con un cdigo de servicio. Salida 1013


MESSAGE EXPLT (720) Requerida
SEND
EXPLT
S
720 D
(CPUs de la serie C
CS/CJ Ver. 2.0
posterior sola- S: Primer canal
mente) de mensaje
de envo
D: Primer canal
de mensaje
recibido
C: Primer canal
de control

EXPLICIT GET Lee informacin de estado con un mensaje explcito (Get Attribute Salida 1021
ATTRIBUTE EGATR (721) Single, Service Code: 0E hexadecimal). Requerida
EGATR S
721
(CPUs de la serie D
CS/CJ Ver. 2.0
posterior sola-
C
mente) S: Primer canal
de mensaje
de envo
D: Primer canal
de mensaje
recibido
C: Primer canal
de mensaje
de control

EXPLICIT SET Escribe informacin de estado con un mensaje explcito (Set Attribute Salida 1028
ATTRIBUTE ESATR (722) Single, Service Code: 0E hexadecimal) Requerida
ESATR
S
722
(CPUs de la serie C
CS/CJ Ver. 2.0
posterior sola- S: Primer canal
mente) de mensaje
de envo
C: Primer canal
de control

89
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
EXPLICIT Lee datos en la CPU local desde una CPU remota de la red. (La CPU Salida 1034
WORD READ ECHRD (723) remota debe ser compatible con mensajes explcitos.) Requerida
ECHRD
S
723
(CPUs de la serie D
CS/CJ Ver. 2.0
posterior sola- C
mente) S: Primer canal
fuente en
CPU remota
D: Primer canal
de destino en
CPU local
C: Primer canal
de control

EXPLICIT Escribe datos de la CPU local en una CPU remota de la red. (La CPU Salida 1038
WORD WRITE ECHWR (724)
remota debe ser compatible con mensajes explcitos.) Requerida
ECHWR S
724
D
(CPUs de la serie
CS/CJ Ver. 2.0 C
posterior sola-
mente) S: Primer canal
fuente en
CPU local
D: Primer canal
de destino en
CPU remota
C: Primer canal de
control

90
Funciones de las instrucciones Seccin 2-2

2-2-24 Instrucciones de memoria de archivo


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin
Nemnico de ejecucin
READ DATA Salida 1045
FREAD(700) Lee los datos especificados desde el archivo de datos especificado en
FILE Requerida
la memoria de archivos en el rea de datos especificada en la CPU.
FREAD
@FREAD C Direccin de inicio
de lectura Archivo
700 S1 especificada en especificado
S2 S1+2 y S1+3 en S2 CPU
D
C: Canal de control Nmero de
S1: Primer canal canales
fuente especificados
S2: Nombre de en S1 y S1+1
archivo
D: Primer canal de
destino Tarjeta de memoria o
Nmero de
memoria de archivos de canales
EM (especificada por el escritos en
cuarto dgito de C). D y D+1.
Archivo
especificado en S2 CPU

Nmero de
canales

Tarjeta de memoria o memoria de archivos de


EM (especificada por el cuarto dgito de C).

WRITE DATA Salida 1052


FILE FWRIT(701)
Sobrescribe o anexiona datos en el archivo de datos especificado de
la memoria de archivos, con los datos especificados del rea de Requerida
FWRIT datos de la CPU. Si el archivo especificado no existe, se crear un
@FWRIT C
nuevo archivo con ese nombre.
701 D1 CPU Canal de
Archivo especificado en D2
inicio
D2 Direccin especificado
de inicio en D1+2 y
D1+3
S especifi-
Nmero de
cada canales especifica-
C: Canal de en S dos en D1 y D1+1
control
D1: Primer canal Sobrescribir
de destino
D2: Nombre de Tarjeta de memoria o memoria de
archivo archivos de EM (especificada por
S: Primer canal el cuarto dgito de C).
fuente
CPU
Archivo especificado en D2
Direccin Fin de
de inicio archivo Datos
especifi- existentes
cada Nmero de
en S canales especifica-
dos en D1 y D1+1

Apndice
Tarjeta de memoria o memoria de
archivos de EM (especificada por
el cuarto dgito de C).
Comienzo Archivo
CPU especificado Nuevo archivo
de archivo en D2
Direccin creado
de inicio
especifi- Nmero de canales
cada especificados en
en S D1 y D1+1

Tarjeta de memoria o memoria de archivos de


EM (especificada por el cuarto dgito de C).

91
Funciones de las instrucciones Seccin 2-2

2-2-25 Instrucciones de visualizacin


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
DISPLAY Lee las 16 palabras especificadas de ASCII extendido y muestra el Salida 1058
MESSAGE MSG(046) mensaje en un dispositivo perifrico, como una consola de programa- Requerida
MSG cin.
@MSG
N
046 M
N: Nmero de
mensaje
M: Primer canal
de mensaje

2-2-26 Instrucciones de reloj


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
CALENDAR Aade la hora a los datos del calendario de los Salida 1061
ADD CADD(730) canales especificados. Requerida
CADD
@CADD C C Minutos Segundos
730 T C+1 Da Hora
R C+2 Ao Mes

C: Primer canal
de calendario
T: Primer canal
de hora T Minutos Segundos
R: Primer canal T+1 Horas
de resultado

R Minutos Segundos
R+1 Da Hora
R+2 Ao Mes

CALENDAR Quita la hora a los datos del calendario de los Salida 1065
SUBTRACT CSUB(731)
canales especificados. Requerida
CSUB C
@CSUB C Minutos Segundos
731 T C+1 Da Hora
R C+2 Ao Mes
C: Primer canal
de calendario
T: Primer canal
de hora T Minutos Segundos
R: Primer canal Horas
de resultado T+1

R Minutos Segundos
R+1 Da Hora
R+2 Ao Mes

92
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
HOURS TO Convierte los datos de tiempo en formato horas/minutos/segundos Salida 1068
SECONDS SEC(065) en el tiempo equivalente en segundos. Requerida
SEC S
@SEC
065 D
Minutos Segundos
S: Primer canal Horas
fuente
D: Primer canal
de destino

Segundos

SECONDS TO Convierte los datos de segundos al tiempo Salida 1070


HOURS HMS(066) equivalente en formato horas/minutos/segundos. Requerida
HMS S
@HMS
066 D
Segundos
S: Primer canal
fuente
D: Primer canal
de destino

Minutos Segundos
Horas

CLOCK Cambia la configuracin del reloj interno por la de los canales fuente Salida 1073
ADJUSTMENT DATE(735) especificados. Requerida
DATE S
@DATE CPU
735 S: Primer canal
fuente
Reloj interno

Minutos Segundos
Nueva
configur Da Hora
Ao Mes
00 Da de la semana

2-2-27 Instrucciones de depuracin


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
TRACE Cuando se ejecuta TRSM(045), el estado de un bit o canal preselec- Salida 1075
MEMORY TRSM(045) cionado se muestrea y almacena en la memoria de seguimiento. No requerida
SAMPLING TRSM(045) se puede utilizar en cualquier sitio del programa y las
TRSM veces que se desee.
045

93
Funciones de las instrucciones Seccin 2-2

2-2-28 Instrucciones de diagnstico de fallo


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
FAILURE Genera o borra los errores no importantes definidos por el usuario. Salida 1079
ALARM FAL(006) Los errores no fatales no detienen el funcionamiento del PLC. Requerida
FAL Tambin genera errores no fatales con el sistema.
N
@FAL Indicador de error FAL en ON
La ejecucin Indicador ON de nmero FAL
006 S de FAL(006) correspondiente ejecutado
genera un Cdigo de error escrito en A400
N: Nmero FAL error no fatal Cdigo de error y hora escritos en el
S: Primer canal con nmero rea de registro de errores
de mensaje o FAL N.
cdigo de error El indicador ERR parpadea
para generar
Mensaje
mostrado en la
consola de
programacin

SEVERE Genera errores fatales definidos por el usuario. Los errores fatales detienen Salida 1087
FALS(007)
FAILURE el funcionamiento del PLC. Requerida
ALARM N Tambin genera errores fatales con el sistema.
FALS Indicador de error FALS en ON
S
La ejecucin Cdigo de error escrito en A400
007 Cdigo de error y hora/fecha
N: Nmero FALS deFALS(007)
escritos en el rea de registro de
S: Primer canal de genera un errores
mensaje o cdigo error fatal
de error para con el El indicador ERR se enciende
generar nmero
FALS N.
Mensaje mostrado
en la consola de
programacin

FAILURE Salida 1095


FPD(269) Diagnostica un fallo en un bloque de instrucciones mediante la
POINT supervisin del tiempo entre la ejecucin de FPD(269) y la ejecucin Requerida
DETECTION de una salida de diagnstico, y detecta cul de las entradas es la que
FPD C impide que una salida se ponga en ON.
269 T Funcin de supervisin de tiempo:
Inicia la temporizacin cuando la condicin de
R ejecucin A pasa a ON. Genera un error no
fatal si la salida B no se pone en ON durante
C: Canal de el tiempo de supervisin.
control
T: Tiempo de Condicin de
monitorizacin ejecucin A
R: Primer canal
registro T Bloque de
procesamien
R to de errores
(opcional)
Siguiente bloque
de instrucciones

Bloque de diagnstico lgico*


Condicin C de
ejecucin de
diagnstico lgico
Salida de diagnstico B

Funcin de diagnstico lgico


Determina qu entrada en C impide
que la salida B se ponga en ON.

94
Funciones de las instrucciones Seccin 2-2

2-2-29 Otras instrucciones


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
SET CARRY Pone en ON el indicador de acarreo (CY). Salida 1104
STC STC(040) Requerida
@STC
040
CLEAR CARRY Pone en OFF el indicador de acarreo (CY). Salida 1105
CLC CLC(041) Requerida
@CLC
041
SELECT EM Cambia el banco de EM actual. Salida 1106
BANK EMBC(281) Requerida
EMBC N
@EMBC
281 N: Nmero de
banco de EM
EXTEND Extiende el tiempo de ciclo mximo, pero slo para el ciclo en el que Salida 1108
MAXIMUM WDT(094) se ejecuta la instruccin. Requerida
CYCLE TIME
T
WDT
@WDT T: Seleccin de
094 temporizador
SAVE CONDI- Guarda el estado de los indicadores de condicin. Salida 1110
TION FLAGS CCS(282) Requerida
(slo CS1-H,
CJ1-H, CJ1M o
CS1D)
CCS
@CCS
282
LOAD CONDI- Lee el estado guardado de los indicadores de condicin. Salida 1112
TION FLAGS CCL(283) Requerida
(slo CS1-H,
CJ1-H, CJ1M o
CS1D)
CCL
@CCL
283
CONVERT Convierte una direccin de memoria del PLC de la serie CV en su Salida 1113
ADDRESS FRMCV(284) direccin equivalente de memoria del PLC de la serie CS/CJ. Requerida
FROM CV (slo
CS1-H, CJ1-H, S
CJ1M o CS1D) D
FRMCV
@FRMCV S: Canal que contiene
284 direccin de memoria
de serie CV
D: Registro de
ndices de destino

CONVERT Convierte una direccin de memoria del PLC de la serie CS/CJ en su Salida 1117
ADDRESS TO direccin equivalente de memoria del PLC de la serie CV. Requerida
CV (slo CS1-H, TOCV(285)
CJ1-H, CJ1M o
CS1D) S
TOCV D
@TOCV
285 S: Registro de ndi-
ce que contiene la
direccin de memo-
ria de la serie CS
D: Canal de destino

95
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
DISABLE PERI- Inhabilita el servicio de perifricos durante la ejecucin del programa Salida 1121
PHERAL SERVI- IOSP(287) en uno de los modos de procesamiento paralelo o el modo de Requerida
CING (slo prioridad de servicios de perifricos.
CPUs CS1D
para sistemas
de CPU indivi-
dual, CS1-H,
CJ1-H o CJ1M )
IOSP
@IOSP
287
ENABLE PERI- Habilita el servicio de perifricos inhabilitado por IOSP(287) para la Salida 1123
PHERAL SERVI- IORS(288) ejecucin del programa en uno de los modos de procesamiento No requerida
CING (slo CPU paralelo o el modo de prioridad de servicios de perifricos.
CS1D para sis-
temas de
CPU individual,
CS1-H, CJ1-H o
CJ1M)
IORS
288

2-2-30 Instrucciones de programacin de bloques


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
BLOCK Define un rea de programacin de bloques. Para cada BPRG(096) Salida 1128
PROGRAM BPRG(096) Requerida
debe haber un BEND(801) correspondiente.
BEGIN
BPRG N
096 N: Nmero de
programa de
bloques
Programa de bloques

Ejecutado cuando la
condicin de ejecucin
es ON.

BLOCK Define un rea de programacin de bloques. Para cada BPRG(096) Programa de 1128
PROGRAM END debe haber un BEND(801) correspondiente. bloques
BEND Requerida
801
BLOCK Programa de 1131
PROGRAM BPPS Detiene y reinicia el programa de bloques especificado desde bloques
(811) otro programa de bloques.
PAUSE Requerida
BPPS N
811 N: Nmero de
programa de
bloques
a

a BPPS(811)
ejecutado para
programa de
bloques n.

Programa de bloques n.
a Una vezque se ha detenido,
este programa de bloques
no se ejecutar aunque el
bit a est en ON.

96
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
BLOCK BPRS Detiene y reinicia el programa de bloques especificado desde otro Programa de 1131
PROGRAM (812) programa de bloques. bloques
RESTART Requerida
BPRS N
812 N: Nmero de
programa de
bloques
a

a BPRS(812) ejecutado
para programa de
bloques n.

Programa de bloques n. Este


a programa de bloques no se
ejecutar mientras el bit a
est en ON.
CONDITIONAL EXIT(806) EXIT(806) sin un bit de operando sale del programa si la condicin Programa de 1137
BLOCK EXIT de ejecucin est en ON. bloques
EXIT B: Operando de Requerida
806 bit Condicin Condicin de
de ejecucin ejecucin ON
OFF

"A" ejecutado. "A" ejecutado.

Condicin
de ejecucin

"B" ejecutado.

Bloque finalizado.

CONDITIONAL EXIT(806)B Programa de 1137


BLOCK EXIT EXIT(806) sin un bit de operando sale del programa si la condicin bloques
de ejecucin est en ON.
EXIT B: Operando de Requerida
806 bit Bit de Bit de operando
operando OFF ON
(ON para EXIT (OFF para EXIT
NOT) NOT)

"A" ejecutado. "A" ejecutado.

"B" ejecutado.

Bloque finalizado.

CONDITIONAL EXIT NOT(806) EXIT(806) sin un bit de operando sale del programa si la condicin de Programa de 1137
BLOCK EXIT B ejecucin est en OFF. bloques
NOT Requerida
EXIT NOT B: Operando de
806 bit

97
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
CONDITIONAL IF(802) Programa de 1133
BLOCK Si la condicin de ejecucin est en ON, se ejecutarn las bloques
instrucciones entre IF(802) y ELSE(803) y si la condicin de ejecucin
BRANCHING est en OFF, se ejecutarn las instrucciones entre ELSE(803) e Requerida
IF IEND(804).
802 Condicin
Condicin de
de ejecucin ejecucin ON?

"A" ejecutado "B" ejecutado


(entre IF y ELSE). (despus de ELSE).

CONDITIONAL IF(802) Programa de 1133


BLOCK Si el bit de operando est en ON, se ejecutarn las instrucciones bloques
B entre IF(802) y ELSE(803). Si el bit de operando est en OFF,
BRANCHING Requerida
se ejecutarn las instrucciones entre ELSE(803) e IEND(804).
IF
B: Operando de
802 bit
Bit de
operando
ON?
IF R (IF NOT R)

"A" ejecutado "B" ejecutado


(entre IF y ELSE). (despus de ELSE).

CONDITIONAL IF(802) NOT Si el bit de operando est en ON se ejecutarn las instrucciones entre Programa de 1133
BLOCK BRAN- B IF(802) y ELSE(803) y si el bit de operando est en OFF, se ejecutarn bloques
CHING (NOT) las instrucciones entre ELSE(803) e IEND(804). Requerida
IF NOT
B: Operando de
802 bit
CONDITIONAL --- Si se omite la instruccin ELSE(803) y el bit de operando est en ON, Programa de 1133
BLOCK BRAN- se ejecutarn las instrucciones entre IF(802) e IEND(804). bloques
CHING (ELSE) Requerida
ELSE
803
CONDITIONAL --- Si el bit de operando est en OFF, slo se ejecutarn las instrucciones Programa de 1133
BLOCK BRAN- despus de IEND(804). bloques
CHING END Requerida
IEND
804

98
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
ONE CYCLE WAIT(805) Si la condicin de ejecucin est en ON para WAIT(805), se saltar Programa de 1140
AND WAIT el resto de las instrucciones en el programa de bloques. bloques
WAIT Requerida
Condicin de Condicin Condicin de
805 ejecucin de ejecucin ejecucin
OFF OFF ON

"A"
ejecutado.

Condicin "B" ejecutado.


de ejecucin

"C" "C" "C" ejecutado.


ejecutado. ejecutado.

Esperar

ONE CYCLE WAIT(805) Si el bit de operando est en OFF (ON para WAIT NOT(805)), se omiti- Programa de 1140
AND WAIT B rn el resto de la instrucciones en el programa de bloques. En el ciclo bloques
WAIT siguiente, no se ejecutar ninguna parte del programa de bloques, Requerida
excepto la condicin de ejecucin para WAIT(805) o WAIT(805) NOT.
805 B: Operando de
Cuando la condicin de ejecucin se ponga en ON (OFF para
bit WAIT(805) NOT), se ejecutarn las instrucciones desde WAIT(805) o
WAIT(805) NOT hasta el final del programa.
ONE CYCLE WAIT(805) NOT Si el bit de operando est en OFF (ON para WAIT NOT(805)), se omiti- Programa de 1140
AND WAIT B rn el resto de la instrucciones en el programa de bloques. En el ciclo bloques
(NOT) siguiente, no se ejecutar ninguna parte del programa de bloques, Requerida
WAIT NOT excepto la condicin de ejecucin para WAIT(805) o WAIT(805) NOT.
B: Operando de
805 bit Cuando la condicin de ejecucin se ponga en ON (OFF para
WAIT(805) NOT), se ejecutarn las instrucciones desde WAIT(805) o
WAIT(805) NOT hasta el final del programa.
TIMER WAIT TIMW(813) Retrasa la ejecucin del programa de bloques hasta que haya Programa de 1144
TIMW N transcurrido el tiempo especificado. La ejecucin contina desde la bloques
813 SV instruccin siguiente a TIMW(813)/TIMWX(816) cuando termine el Requerida
(BCD) temporizador.
SV: 0 a 999,9 s para BCD y
N: Nmero de 0 a 6.553,5 s para binario
TIMWX temporizador
816 SV: Valor selec-
(Binario) cionado
(Slo CS1-H, "A"
CJ1-H, CJ1M o TIMWX(816) ejecutado.
CS1D) N
SV
SV preselec-
Tiempo transcurrido.
N: Nmero de cionado.
temporizador
SV: Valor "B" ejecutado.
seleccionado
BEND
"C" ejecutado.
C

99
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
COUNTER CNTW(814) Retrasa la ejecucin del resto del programa de bloques hasta alcanzar el Programa de 1147
WAIT N contaje especificado. La ejecucin continuar desde la instruccin siguiente
bloques
CNTW SV a CNTW(814)/CNTWX(818) cuando el contador finalice la operacin. Requerida
814 SV: 0 a 9.999 veces para BCD y
(BCD) 0 a 65.535 veces para binario
N: Nmero de
CNTWX contador
818 SV: Valor
(Binario) "A"
seleccionado ejecutado.
(Slo CS1-H,
I: Entrada de
CJ1-H, CJ1M o
CS1D) contaje
CNTWX(818)
SV
N preselec- Tiempo transcurrido.
SV cionado.
"B" ejecutado.

N: Nmero de
contador
SV: Valor selec- "C" "C" "C" ejecutado.
cionado C ejecutado. ejecutado.
I: Entrada de
contaje

HIGH-SPEED TMHW(815) Retrasa la ejecucin del resto del programa de bloques hasta que haya Programa de 1150
TIMER WAIT N transcurrido el tiempo especificado. La ejecucin continuar desde la bloques
TMHW SV instruccin siguiente a TMHW(815)/TMHWX(818) cuando termine el Requerida
815 temporizador. SV: 0 a 99,99 s para BCD y
(BCD) 0 a 655,35 s para binario
N: Nmero de
temporizador
TMHWX SV: Valor selec-
817 cionado "A"
(Binario) ejecutado.
(Slo CS1-H, TMHWX(817)
CJ1-H, CJ1M o N
CS1D) SV
SV
preselec- Tiempo transcurrido.
N: Nmero de cionado.
temporizador "B" ejecutado.
SV: Valor
seleccionado
BEND
"C" ejecutado.
C

100
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
LOOP --- Programa de 1153
LOOP(809) designa el comienzo del programa de lazo.
LOOP bloques
809 Requerida
Condicin Condicin Condicin Condicin
de de de de
ejecucin ejecucin ejecucin ejecucin
ON OFF OFF OFF

Condicin de ejecucin

Lazo repetido

LEND LEND(810) LEND(810) o LEND(810) NOT especifica el final del lazo. Cuando no Programa de 1153
LEND se alcanza LEND(810) o LEND(810) NOT, la ejecucin del programa bloques
810 enlazar con el LOOP(809) anterior hasta que el bit de operando para Requerida
LEND(810) o LEND(810) NOT se ponga en ON u OFF (respectiva-
mente) o hasta que la condicin de ejecucin para LEND(810) se
ponga en ON.
LEND LEND(810) Programa de 1153
Si el bit de operando est en OFF para LEND(810) (o en ON para bloques
LEND B LEND(810) NOT), se repite la ejecucin del lazo empezando por la
810 instruccin siguiente a LOOP(809). Si el bit de operando est en ON Requerida
B: Operando de para LEND(810) (o en OFF para LEND(810) NOT), el lazo finaliza y la
bit ejecucin contina con la instruccin siguiente a LEND(810) o
LEND(810) NOT. Bit de Bit de Bit de Bit de
operando operando operando operando
ON OFF OFF OFF

Lazo repetido

Nota: El estado del bit de operando se debe invertir


para LEND(810) NOT.

LEND NOT LEND(810) NOT LEND(810) o LEND(810) NOT especifica el final del lazo. Cuando no Programa de 1153
LEND NOT se alcanza LEND(810) o LEND(810) NOT, la ejecucin del programa bloques
810 B: Operando de enlazar con el LOOP(809) anterior hasta que el bit de operando para Requerida
bit LEND(810) o LEND(810) NOT se ponga en ON u OFF (respectiva-
mente) o hasta que la condicin de ejecucin para LEND(810) se
ponga en ON.

101
Funciones de las instrucciones Seccin 2-2

2-2-31 Instrucciones de procesamiento de cadenas de texto


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
MOV STRING Salida 1159
MOV$(664) Transfiere una cadena de texto.
MOV$ Requerida
@MOV$ S
664
D
S: Primer canal
fuente
D: Primer canal
de destino

CONCATE- Vincula una cadena de texto a otra. Salida 1161


NATE STRING +$(656) Requerida
+$
@+$ S1 +
656 S2
D
S1: Cadena de
texto 1
S2: Cadena de
texto 2
D: Primer canal
de destino
GET STRING Toma un nmero designado de caracteres situados a la izquierda Salida 1164
LEFT LEFT$(652)
(principio) de una cadena de texto. Requerida
LEFT$ S1
@LEFT$
652 S2
D
S1: Primer canal
de cadena de
texto
S2: Nmero de
caracteres
D: Primer canal
de destino

GET STRING Salida 1166


RIGHT RGHT$(653) Lee un nmero designado de caracteres situados a la derecha
Requerida
RGHT$ (final) de una cadena de texto.
@RGHT$ S1
00
653 S2
D
S1: Primer canal
de cadena de
texto
S2: Nmero de
caracteres
D: Primer canal
de destino
GET STRING Lee un nmero designado de caracteres situados en el centro de Salida 1168
MIDDLE MID$(654) Requerida
una cadena de texto.
MID$
@MID$ S1
654 S2
S3

D
S1: Primer canal
de cadena de texto
S2: Nmero de
caracteres
S3: Posicin de
inicio
D: Primer canal de
destino

102
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
FIND IN STRING Encuentra una cadena de texto designada dentro de otra cadena. Salida 1171
FIND FIND$(660) Requerida
@FIND$ Datos encontrados
S1
660
S2
D
S1: Primer canal
de la cadena de
texto fuente
S2: Primer canal
de la cadena de
texto encontrada
D: Primer canal
de destino
STRING Calcula la longitud de una cadena de texto. Salida 1173
LENGTH LEN$(650) Requerida
LEN$ 1 2
@LEN$ S
3 4
650 D 5
S: Primer canal
de cadena de
texto
D: Primer canal
de destino
REPLACE IN Salida 1175
STRING RPLC$(654) Sustituye una cadena de texto por otra designada en una posicin
tambin designada. Requerida
RPLC$ S1
@RPLC$
661 S2
S3
S4
D
S1: Primer canal
de cadena de
texto
S2: Sustitucin del
primer canal de la
cadena de texto
S3: Nmero de
caracteres
S4: Posicin de
inicio
D: Primer canal de
destino

DELETE Elimina una cadena de texto designada del centro de otra cadena. Salida 1178
STRING DEL$(658) Requerida
DEL$ Nmero de caracteres para
@DEL$ S1 eliminar (designado por S2).
658 S2

S3
G
D
S1: Primer canal
de cadena de
texto
S2: Nmero de
caracteres
S3: Posicin de
inicio
D: Primer canal
de destino

103
Funciones de las instrucciones Seccin 2-2

Instruccin Smbolo/ Funcin Posicin Pgina


Cdigo operando Condicin de
Nemnico ejecucin
EXCHANGE Sustituye una cadena de texto designada por otra. Salida 1180
STRING XCHG$(665)
Requerida
XCHG$ Ex1 Ex1
@XCHG$ Ex1
665 Ex2
Ex1: Primer canal Ex2 Ex2
de intercambio 1
Ex2: Primer canal
de intercambio 2

CLEAR STRING Borra una cadena de texto completa y la sustituye por NUL Salida 1182
CLR$ CLR$(666) (00 hex). Requerida
@CLR$ S S A B S
666 C D
NUL NUL
S: Primer canal de
cadena de texto

INSERT INTO Elimina una cadena de texto designada del centro de otra cadena. Salida 1184
STRING INS$(657) Requerida
INS$ S1
@INS$ NUL
657 S2

S3
Caracteres
D insertados
S1: Primer canal
de la cadena de
texto base
S2: Primer canal
de la cadena de
texto insertada
S3: Posicin de
inicio
D: Primer canal
de destino

Comparacin Las instrucciones de comparacin de cadenas (=$, <>$, <$, <=$, >$, LD: No 1187
de cadenas Smbolo >=$) comparan dos cadenas de texto desde el principio, expresadas requerida
LD, AND, OR + en valores del cdigo ASCII. Si el resultado de la comparacin es ver- AND, OR:
=$, <>$, <$, <=$, S1 dadero, se crear una condicin de ejecucin ON para LOAD, AND o Obligatoria
>$, >=$ para OR.
S2
670 (=$)
671 (<>$)
672 (<$) AND
673 (<=$) Smbolo
674 (>$)
675 (>=$) S1
S2

OR
Smbolo
S1
S2
S1: Cadena de
texto 1
S2: Cadena de
texto 2

104
Funciones de las instrucciones Seccin 2-2

2-2-32 Instrucciones de control de tareas


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
TASK ON Convierte la tarea especificada en ejecutable. Salida 1192
TKON TKON(820) Requerida
@TKON El nmero de la tarea El nmero de la tarea especificada
N
820 especificada es superior al de la es inferior al de la tarea local
N: Nmero de tarea tarea local (m<n). (m>n).

Tarea m Tarea m

Se
vuelve
Se vuelve ejecu-
ejecutable table en
en ese el
ciclo. siguiente
ciclo.

Tarea n Tarea n

TASK OFF Pone la tarea especificada en modo de espera. Salida 1196


TKOF(821)
TKOF Requerida
@TKOF N El nmero de la tarea El nmero de la tarea
821 especificada es superior al de especificada es inferior al de la
N: Nmero de tarea la tarea local (m<n). tarea local (m>n).

Tarea m Tarea m

En En modo
modo de de
espera espera
durante durante el
ese siguiente
ciclo. ciclo.
Tarea n Tarea n

105
Funciones de las instrucciones Seccin 2-2

2-2-33 Instrucciones de conversin de modelo (CPUs Ver. 3.0 posterior


solamente)
Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
BLOCK Salida 1201
TRANSFER Transfiere el nmero especificado de canales consecutivos.
XFERC(565) Requerida
XFERC
@XFERC N
Canales N
565 S a a
D S+(N1) D+(N1)

N: Nmero de
canales
S: Primer canal
fuente
D: Primer canal
de destino

SINGLE WORD Transfiere el canal de origen a un canal de destino, que se calcula Salida 1203
DISTRIBUTE DISTC(566) aadiendo un valor de desplazamiento a la direccin base. Tambin Requerida
DISTC se pueden escribir datos en una pila (operacin de escritura en pila).
@DISTC S S Bs Of
566 Bs
Of
S: Canal fuente
Bs: Direccin
base de destino
Of: Desplazamiento
Bs+n

DATA COLLECT Salida 1206


COLLC(567) Transfiere el canal de origen (que se calcula aadiendo un valor de
COLLC desplazamiento a la direccin base) al canal de destino. Tambin Requerida
@COLLC Bs puede leer datos de una pila en orden FIFO o LIFO (Operacin de
lectura de pila).
567
Of Bs Of
D

Bs: Direccin
base de fuente Bs+n
Of: Desplazamiento
D: Canal de
destino

MOVE BIT Transfiere el bit especificado. Salida 1211


MOVBC MOVBC(568) Requerida
@MOVBC S
568
C
D
S: Canal o datos
fuente
C: Canal de control
D: Canal de
destino

BIT COUNTER Salida 1212


BCNTC(621) Cuenta el nmero total de bits en ON de los canales especificados.
BCNTC Requerida
@BCNTC Canales N
N
621 Cuenta el nmero
S de bits en ON.
a
R
N: Nmero de S+(N 1) Resultado
canales (BCD) BCD
S: Primer canal
fuente R
R: Canal de
resultado

106
Funciones de las instrucciones Seccin 2-2

2-2-34 Instrucciones especiales de bloque de funciones


Instruccin Smbolo/ Funcin Posicin Pgina
Cdigo operando Condicin de
Nemnico ejecucin
GET VARIA- Transmite el tipo de variable de comando FINS (rea de datos) y la Salida 1214
BLE ID GETID(286) direccin de canal de la variable o direccin especificada. Normal- Requerida
GETID mente, esta instruccin se utiliza para obtener la direccin asignada de
@GETID
S una variable en un bloque de funciones.
286 D1
D2
S: Variable o
direccin
D1: Cdigo de ID
D2: Canal de
destino

107
Lista alfabtica de instrucciones por nemnico Seccin 2-3

2-3 Lista alfabtica de instrucciones por nemnico


A
Nemnico Instruccin Cdigo de Diferencial Diferencial Especificacin Pgina
funcin ascendente descendente de refresco
inmediato
ACC ACCELERATION 888 @ACC --- --- 855
CONTROL
ACOS ARC COSINE 464 @ACOS --- --- 589
ACOSD DOUBLE ARC 855 @ACOSD --- --- 645
COSINE
AND AND --- @AND %AND !AND 157
AND< AND LESS THAN 310 --- --- --- 275
AND <$ AND STRING LESS 672 --- --- --- 1187
THAN
AND<> AND NOT EQUAL 305 --- --- --- 275
AND <>$ AND STRING NOT 671 --- --- --- 1187
EQUAL
AND <>D AND DOUBLE 336 --- --- --- 657
FLOATING NOT
EQUAL
AND <> DT AND TIME NOT 342 --- --- --- 281
EQUAL
AND <>F AND FLOATING NOT 330 --- --- --- 600
EQUAL
AND <>L AND DOUBLE NOT 306 --- --- --- 275
EQUAL
AND <>S AND SIGNED NOT 307 --- --- --- 275
EQUAL
AND <>SL AND DOUBLE 308 --- --- --- 275
SIGNED NOT EQUAL
AND <D AND DOUBLE 337 --- --- --- 657
FLOATING LESS
THAN
AND < DT AND TIME LESS 343 --- --- --- 281
THAN
AND <F AND FLOATING LESS 331 --- --- --- 600
THAN
AND <L AND DOUBLE LESS 311 --- --- --- 275
THAN
AND <S AND SIGNED LESS 312 --- --- --- 275
THAN
AND <SL AND DOUBLE 313 --- --- --- 275
SIGNED LESS THAN
AND = AND EQUAL 300 --- --- --- 275
AND =$ AND STRING EQUALS 670 --- --- --- 1187
AND =D AND DOUBLE 335 --- --- --- 657
FLOATING EQUAL
AND =DT AND TIME EQUAL 341 --- --- --- 281
AND =F AND FLOATING 329 --- --- --- 600
EQUAL
AND =L AND DOUBLE EQUAL 301 --- --- --- 275
AND =S AND SIGNED EQUAL 302 --- --- --- 275
AND =SL AND DOUBLE 303 --- --- --- 275
SIGNED EQUAL
AND> AND GREATER THAN 320 --- --- --- 275
AND >$ AND STRING 674 --- --- --- 1187
GREATER THAN
AND >D AND DOUBLE 339 --- --- --- 657
FLOATING GREATER
THAN
AND > DT AND TIME GREATER 345 --- --- --- 281
THAN

108
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo de Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
AND >F AND FLOATING 333 --- --- --- 600
GREATER THAN
AND >L AND DOUBLE 321 --- --- --- 275
GREATER THAN
AND >S AND SIGNED 322 --- --- --- 275
GREATER THAN
AND >SL AND DOUBLE 323 --- --- --- 275
SIGNED GREATER
THAN
AND LD AND LOAD --- --- --- --- 164
AND NOT AND NOT --- --- --- !AND NOT 159
AND TST AND BIT TEST 350 --- --- --- 174
AND TSTN AND BIT TEST 351 --- --- --- 174
AND <= AND LESS THAN OR 315 --- --- --- 275
EQUAL
AND <=$ AND STRING LESS 673 --- --- --- 1187
THAN OR EQUAL
AND <=D AND DOUBLE 338 --- --- --- 657
FLOATING LESS
THAN OR EQUAL
AND <=DT AND TIME LESS 344 --- --- --- 281
THAN OR EQUAL
AND <=F AND FLOATING LESS 332 --- --- --- 600
THAN OR EQUAL
AND <=L AND DOUBLE LESS 316 --- --- --- 275
THAN OR EQUAL
AND <=S AND SIGNED LESS 317 --- --- --- 275
THAN OR EQUAL
AND <=SL AND DOUBLE 318 --- --- --- 275
SIGNED LESS THAN
OR EQUAL
AND >= AND GREATER THAN 325 --- --- --- 275
OR EQUAL
AND >=$ AND STRING 675 --- --- --- 1187
GREATER THAN OR
EQUALS
AND >=D AND DOUBLE 340 --- --- --- 657
FLOATING GREATER
THAN OR EQUAL
AND >=DT AND TIME GREATER 346 --- --- --- 281
THAN OR EQUAL
AND >=F AND FLOATING 334 --- --- --- 600
GREATER THAN OR
EQUAL
AND >=L AND DOUBLE 326 --- --- --- 275
GREATER THAN OR
EQUAL
AND >=S AND SIGNED 327 --- --- --- 275
GREATER THAN OR
EQUAL
AND >=SL AND DOUBLE 328 --- --- --- 275
SIGNED GREATER
THAN OR EQUAL
ANDL DOUBLE LOGICAL 610 @ANDL --- --- 519
AND
ANDW LOGICAL AND 034 @ANDW --- --- 517
APR ARITHMETIC 069 @APR --- --- 540
PROCESS
ASC ASCII CONVERT 086 @ASC --- --- 486
ASFT ASYNCHRONOUS 017 @ASFT --- --- 349
SHIFT REGISTER
ASIN ARC SINE 463 @ASIN --- --- 587
ASIND DOUBLE ARC SINE 854 @ASIND --- --- 643

109
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo de Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
ASL ARITHMETIC SHIFT 025 @ASL --- --- 354
LEFT
ASLL DOUBLE SHIFT LEFT 570 @ASLL --- --- 355
ASR ARITHMETIC SHIFT 026 @ASR --- --- 357
RIGHT
ASRL DOUBLE SHIFT 571 @ASRL --- --- 358
RIGHT
ATAN ARC TANGENT 465 @ATAN --- --- 591
ATAND DOUBLE ARC 856 @ATAND --- --- 647
TANGENT
AVG AVERAGE 195 --- --- --- 769

B
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
BAND DEAD BAND 681 @BAND --- --- 743
CONTROL
BCD BINARY-TO-BCD 024 @BCD --- --- 469
BCDL DOUBLE BINARY-TO- 059 @BCDL --- --- 470
BCD
BCDS SIGNED BINARY-TO- 471 @BCDS --- --- 505
BCD
BCMP UNSIGNED BLOCK 068 @BCMP --- --- 304
COMPARE
BCMP2 EXPANDED BLOCK 502 @BCMP2 --- --- 306
COMPARE
BCNT BIT COUNTER 067 @BCNT --- --- 556
BCNTC BIT COUNTER 621 @BCNTC --- --- 1212
BDSL DOUBLE SIGNED 473 @BDSL --- --- 507
BINARY-TO-BCD
BEND BLOCK PROGRAM 801 --- --- --- 1128
END
BIN BCD-TO-BINARY 023 @BIN --- --- 466
BINL DOUBLE BCD-TO- 058 @BINL --- --- 467
DOUBLE BINARY
BINS SIGNED BCD-TO- 470 @BINS --- --- 499
BINARY
BISL DOUBLE SIGNED 472 @BISL --- --- 502
BCD-TO-BINARY
BPPS BLOCK PROGRAM 811 --- --- --- 1131
PAUSE
BPRG BLOCK PROGRAM 096 --- --- --- 1128
BEGIN
BPRS BLOCK PROGRAM 812 --- --- --- 1131
RESTART
BREAK BREAK LOOP 514 --- --- --- 232
BSET BLOCK SET 071 @BSET --- --- 331

C
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
CADD CALENDAR ADD 730 @CADD --- --- 1061
CCL LOAD CONDITION 283 @CCL --- --- 1112
FLAGS
CCS SAVE CONDITION 282 @CCS --- --- 1110
FLAGS
CJP CONDITIONAL JUMP 510 --- --- --- 223
CJPN CONDITIONAL JUMP 511 --- --- --- 223

110
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
CLC CLEAR CARRY 041 @CLC --- --- 1105
CLI CLEAR INTERRUPT 691 @CLI --- --- 809
CLR$ CLEAR STRING 666 @CLR$ --- --- 1182
CMND DELIVER COMMAND 490 @CMND --- --- 1003
CMP COMPARE 020 --- --- !CMP 287
CMPL DOUBLE COMPARE 060 --- --- --- 290
CNR RESET TIMER/ 545 @CNR --- --- 267
COUNTER
CNRX RESET TIMER/ 548 @CNRX --- --- 267
COUNTER
CNT COUNTER --- --- --- --- 260
CNTX COUNTER 546 --- --- --- 260
CNTR REVERSIBLE 012 --- --- --- 263
COUNTER
CNTRX REVERSIBLE 548 --- --- --- 263
COUNTER
CNTW COUNTER WAIT 814 --- --- --- 1147
CNTWX COUNTER WAIT 818 --- --- --- 1147
COLL DATA COLLECT 081 @COLL --- --- 338
COLLC DATA COLLECT 567 @COLLC --- --- 1206
COLM LINE TO COLUMN 064 @COLM --- --- 496
COM COMPLEMENT 029 --- --- --- 531
COML DOUBLE 614 @COML --- --- 533
COMPLEMENT
COS COSINE 461 @COS --- --- 583
COSD DOUBLE COSINE 852 @COSD --- --- 639
CPS SIGNED BINARY 114 --- --- !CPS 293
COMPARE
CPSL DOUBLE SIGNED 115 --- --- --- 296
BINARY COMPARE
CSUB CALENDAR 731 @CSUB --- --- 1065
SUBTRACT
CTBL COMPARISON TABLE 882 @CTBL --- --- 837
LOAD

D
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
DATE CLOCK ADJUSTMENT 735 @DATE --- --- 1073
DBL 16-BIT BINARY TO 843 @DBL --- --- 623
DOUBLE FLOATING
DBLL 32-BIT BINARY TO 844 @DBLL --- --- 624
DOUBLE FLOATING
DEG RADIANS-TO 459 @DEG --- --- 579
DEGREES
DEGD DOUBLE RADIANS TO 850 @RADD --- --- 634
DEGREES
DEL$ DELETE STRING 658 @DEL$ --- --- 1178
DI DISABLE 693 @DI --- --- 814
INTERRUPTS
DIFD DIFFERENTIATE 014 --- --- !DIFD 184
DOWN
DIFU DIFFERENTIATE UP 013 --- --- !DIFU 184
DIM DIMENSION RECORD 631 @DIM --- --- 678
TABLE
DIST SINGLE WORD 080 @DIST --- --- 336
DISTRIBUTE

111
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
DISTC SINGLE WORD 566 @DISTC --- --- 1203
DISTRIBUTE
DLNK CPU BUS UNIT I/O 226 @DLNK --- --- 921
REFRESH
DMPX DATA ENCODER 077 @DMPX --- --- 482
DOWN CONDITION OFF 522 --- --- --- 173
DSW DIGITAL SWITCH 210 --- --- --- 890
INPUT

E
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
ECHRD EXPLICIT WORD 723 @ECHRD --- --- 1034
READ
ECHWR EXPLICIT WORD 724 @ECHWR --- --- 1038
WRITE
EGATR EXPLICIT GET 721 @EGATR --- --- 1021
ATTRIBUTE
EI ENABLE 694 --- --- --- 816
INTERRUPTS
ELSE ELSE 803 --- --- --- 1133
EMBC SELECT EM BANK 281 @EMBC --- --- 1106
END END 001 --- --- --- 197
ESATR EXPLICIT SET 722 @ESATR --- --- 1028
ATTRIBUTE
EXIT NOT CONDITIONAL BLOCK 806 --- --- --- 1137
(operando) EXIT NOT
EXIT (condi- CONDITIONAL BLOCK 806 --- --- --- 1137
cin de entrada) EXIT
EXIT CONDITIONAL BLOCK 806 --- --- --- 1137
(operando) EXIT
EXP EXPONENT 467 @EXP --- --- 595
EXPD DOUBLE EXPONENT 858 @EXPD --- --- 651
EXPLT EXPLICIT MESSAGE 720 @EXPLT --- --- 1013
SEND

F
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
FAL FAILURE ALARM 006 @FAL --- --- 1079
FALS SEVERE FAILURE 007 --- --- --- 1087
ALARM
FCS FRAME CHECKSUM 180 @FCS --- --- 700
FDIV FLOATING POINT 079 @FDIV --- --- 552
DIVIDE
FIFO FIRST IN FIRST OUT 633 @FIFO --- --- 672
FIND$ FIND IN STRING 660 @FIND$ --- --- 1171
FIX FLOATING TO 16-BIT 450 @FIX --- --- 563
FIXD DOUBLE FLOATING 841 @FIXD --- --- 620
TO 16-BIT BINARY
FIX FLOATING TO 32-BIT 451 @FIXL --- --- 565
FIXLD DOUBLE FLOATING 842 @FIXLD --- --- 621
TO 32-BIT BINARY
FLT 16-BIT TO FLOATING 452 @FLT --- --- 566
FLTL 32-BIT TO FLOATING 453 @FLTL --- --- 568
FOR FOR-NEXT LOOPS 512 --- --- --- 229

112
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
FPD FAILURE POINT 269 --- --- --- 1095
DETECTION
FREAD READ DATA FILE 700 @FREAD --- --- 1045
FRMCV CONVERT ADDRESS 284 @FRMCV --- --- 1113
FROM CV
FSTR FLOATING POINT TO 448 @FSTR --- --- 604
ASCII
FWRIT WRITE DATA FILE 701 @FWRIT --- --- 1052
FVAL ASCII TO FLOATING 449 @FVAL --- --- 609
POINT

G
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
GETID GET VARIABLE ID 286 @GETID --- --- 1214
GETR GET RECORD 636 @GETR --- --- 683
NUMBER
GRET GLOBAL 752 --- --- --- 797
SUBROUTINE
RETURN
GRY GRAY CODE 474 @GRY --- --- 511
CONVERSION
GSBN GLOBAL 751 --- --- --- 794
SUBROUTINE ENTRY
GSBS GLOBAL 750 @GSBS --- --- 786
SUBROUTINE CALL

H
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
HEX ASCII TO HEX 162 @HEX --- --- 490
HKY HEXADECIMAL KEY 212 --- --- --- 899
INPUT
HMS SECONDS TO HOURS 066 @HMS --- --- 1070

I
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
IEND IF END 804 --- --- --- 1133
IF NOT IF NOT 802 --- --- --- 1133
(operando)
IF (condicin de IF 802 --- --- --- 1133
entrada)
IF (operando) IF 802 --- --- --- 1133
IL INTERLOCK 002 --- --- --- 201
ILC INTERLOCK CLEAR 003 --- --- --- 201
INI MODE CONTROL 880 @INI --- --- 823
INS$ INS$ 657 @INS$ --- --- 1184
IORD INTELLIGENT I/O 222 @IORD --- --- 913
READ
IORF I/O REFRESH 097 @IORF --- --- 885
IORS ENABLE PERIPHE- 288 --- --- --- 1123
RAL SERVICING
IOSP DISABLE 287 @IOSP --- --- 1121
PERIPHERAL
SERVICING
IOWR INTELLIGENT I/O 223 @IOWR --- --- 917
WRITE

113
Lista alfabtica de instrucciones por nemnico Seccin 2-3

J
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
JME JUMP END 005 --- --- --- 219
JME0 MULTIPLE JUMP END 516 --- --- --- 227
JMP JUMP 004 --- --- --- 219
JMP0 MULTIPLE JUMP 515 --- --- --- 227

K
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
KEEP KEEP 011 --- --- !KEEP 180

L
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
LD LOAD --- @LD %LD !LD 153
LD < LOAD LESS THAN 310 --- --- --- 275
LD <$ LOAD STRING LESS 672 --- --- --- 1187
THAN
LD <D LOAD DOUBLE 337 --- --- --- 657
FLOATING LESS
THAN
LD <DT LOAD TIME LESS 343 --- --- --- 281
THAN
LD <F LOAD FLOATING 331 --- --- --- 600
LESS THAN
LD <> LOAD NOT EQUAL 305 --- --- --- 275
LD <>$ LOAD STRING NOT 671 --- --- --- 1187
EQUAL
LD <>D LOAD DOUBLE 336 --- --- --- 657
FLOATING NOT
EQUAL
LD <>DT LOAD TIME NOT 342 --- --- --- 281
EQUAL
LD <>F LOAD FLOATING NOT 330 --- --- --- 600
EQUAL
LD <>L LOAD DOUBLE NOT 306 --- --- --- 275
EQUAL
LD <>S LOAD SIGNED NOT 307 --- --- --- 275
EQUAL
LD <>SL LOAD DOUBLE 308 --- --- --- 275
SIGNED NOT EQUAL
LD <L LOAD DOUBLE LESS 311 --- --- --- 275
THAN
LD <S LOAD SIGNED LESS 312 --- --- --- 275
THAN
LD <SL LOAD DOUBLE 313 --- --- --- 275
SIGNED LESS THAN
LD = LOAD EQUAL 300 --- --- --- 275
LD =$ LOAD STRING 670 --- --- --- 1187
EQUALS
LD =D LOAD DOUBLE 335 --- --- --- 657
FLOATING EQUAL
LD =DT LOAD TIME EQUAL 341 --- --- --- 281
LD =F LOAD FLOATING 329 --- --- --- 600
EQUAL
LD =L LOAD DOUBLE 301 --- --- --- 275
EQUAL
LD =S LOAD SIGNED EQUAL 302 --- --- --- 275

114
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
LD =SL LOAD DOUBLE 303 --- --- --- 275
SIGNED EQUAL
LD > LOAD GREATER 320 --- --- --- 275
THAN
LD >$ LOAD STRING 674 --- --- --- 1187
GREATER THAN
LD >D LOAD DOUBLE 339 --- --- --- 657
FLOATING GREATER
THAN
LD >DT LOAD TIME GREATER 345 --- --- --- 281
THAN
LD >F LOAD FLOATING 333 --- --- --- 600
GREATER THAN
LD >L LOAD DOUBLE 321 --- --- --- 275
GREATER THAN
LD >S LOAD SIGNED 322 --- --- --- 275
GREATER THAN
LD >SL LOAD DOUBLE 323 --- --- --- 275
SIGNED GREATER
THAN
LD NOT LOAD NOT --- --- --- !LD NOT 155
LD TST LOAD BIT TEST 350 --- --- --- 174
LD TSTN LOAD BIT TEST 351 --- --- --- 174
LD <= LOAD LESS THAN OR 315 --- --- --- 275
EQUAL
LD <=$ LOAD STRING LESS 673 --- --- --- 1187
THAN OR EQUAL
LD <=D LOAD DOUBLE 338 --- --- --- 657
FLOATING LESS
THAN OR EQUAL
LD <=DT LOAD TIME LESS 344 --- --- --- 281
THAN OR EQUAL
LD <=F LOAD FLOATING 332 --- --- --- 600
LESS THAN OR
EQUAL
LD <=L LOAD DOUBLE LESS 316 --- --- --- 275
THAN OR EQUAL
LD <=S LOAD SIGNED LESS 317 --- --- --- 275
THAN OR EQUAL
LD <=SL LOAD DOUBLE SIG- 318 --- --- --- 275
NED LESS THAN OR
EQUAL
LD >= LOAD GREATER 325 --- --- --- 275
THAN OR EQUAL
LD >=$ LOAD STRING 675 --- --- --- 1187
GREATER THAN OR
EQUALS
LD >=D LOAD DOUBLE 340 --- --- --- 657
FLOATING GREATER
THAN OR EQUAL
LD >=DT LOAD TIME GREATER 346 --- --- --- 281
THAN OR EQUAL
LD >=F LOAD FLOATING 334 --- --- --- 600
GREATER THAN OR
EQUAL
LD >=L LOAD DOUBLE 326 --- --- --- 275
GREATER THAN OR
EQUAL
LD >=S LOAD SIGNED 327 --- --- --- 275
GREATER THAN OR
EQUAL
LD >=SL LOAD DOUBLE 328 --- --- --- 275
SIGNED GREATER
THAN OR EQUAL

115
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
LEFT$ GET STRING LEFT 652 @LEFT$ --- --- 1164
LEN$ STRING LENGTH 650 @LEN$ --- --- 1173
LEND NOT LOOP END NOT 810 --- --- --- 1153
(operando)
LEND LOOP END 810 --- --- --- 1153
(condicin de
entrada)
LEND LOOP END 810 --- --- --- 1153
(operando)
LIFO LAST IN FIRST OUT 634 @LIFO --- --- 675
LINE COLUMN TO LINE 063 @LINE --- --- 494
LMT LIMIT CONTROL 680 @LMT --- --- 741
LOG LOGARITHM 468 @LOG --- --- 597
LOGD DOUBLE LOGARITHM 859 @LOGD --- --- 653
LOOP LOOP 809 --- --- --- 1153

M
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
MX FIND MAXIMUM 182 @MAX --- --- 689
MCMP MULTIPLE COMPARE 019 @MCMP --- --- 299
MCRO MACRO 099 @MCRO --- --- 779
MID$ GET STRING MIDDLE 654 @MID$ --- --- 1168
MILC MULTI-INTERLOCK 519 --- --- --- 205
CLEAR
MILH MULTI-INTERLOCK 517 --- --- --- 205
DIFFERENTIATION
HOLD
MILR MULTI-INTERLOCK 518 --- --- --- 205
DIFFERENTIATION
RELEASE
MIN FIND MINIMUM 183 @MIN --- --- 693
MLPX DATA DECODER 076 @MLPX --- --- 477
MOV MOVE 021 @ MOV --- !MOV 315
MOV$ MOVE STRING 664 @MOV$ --- --- 1159
MOVB MOVE BIT 082 @MOVB --- --- 321
MOVBC MOVE BIT 568 @MOVBC --- --- 1211
MOVD MOVE DIGIT 083 @MOVD --- --- 323
MOVL DOUBLE MOVE 498 @MOVL --- --- 318
MOVR MOVE TO REGISTER 560 @MOVR --- --- 340
MOVRW MOVE TIMER/ 561 --- --- --- 342
COUNTER PV TO
REGISTER
MSG DISPLAY MESSAGE 046 @MSG --- --- 1058
MSKR READ INTERRUPT 692 @MSKR --- --- 804
MASK
MSKS SET INTERRUPT 690 @MSKS --- --- 798
MASK
MTIM MULTI-OUTPUT 543 --- --- --- 254
TIMER
MTIMX MULTI-OUTPUT 554 --- --- --- 254
TIMER
MTR MATRIX INPUT 213 --- --- --- 904
MVN MOVE NOT 022 @MVN --- --- 317
MVNL DOUBLE MOVE NOT 499 @MVNL --- --- 320

116
Lista alfabtica de instrucciones por nemnico Seccin 2-3

N
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
NASL SHIFT N-BITS LEFT 580 @NASL --- --- 381
NASR SHIFT N-BITS RIGHT 581 @NASR --- --- 387
NEG 2S COMPLEMENT 160 @NEG --- --- 472
NEGL DOUBLE 2S 161 @NEGL --- --- 474
COMPLEMENT
NEXT FOR-NEXT LOOPS 513 --- --- --- 229
NOP NO OPERATION 000 --- --- --- 198
NOT NOT 520 --- --- --- 172
NSFL SHIFT N-BIT DATA 578 @NSFL --- --- 377
LEFT
NSFR SHIFT N-BIT DATA 579 @NSFR --- --- 379
RIGHT
NSLL DOUBLE SHIFT 582 @NSLL --- --- 384
N-BITS LEFT
NSRL DOUBLE SHIFT 583 @NSRL --- --- 389
N-BITS RIGHT

O
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
OR OR --- @OR %OR !OR 161
OR < OR LESS THAN 310 --- --- --- 275
OR <$ OR STRING LESS 672 --- --- --- 1187
THAN
OR <> OR NOT EQUAL 305 --- --- --- 275
OR <>$ OR STRING NOT 671 --- --- --- 1187
EQUAL
OR <>D OR DOUBLE 336 --- --- --- 657
FLOATING NOT
EQUAL
OR <>DT OR TIME NOT EQUAL 342 --- --- --- 281
OR <>F OR FLOATING NOT 330 --- --- --- 600
EQUAL
OR <>L OR DOUBLE NOT 306 --- --- --- 275
EQUAL
OR <>S OR SIGNED NOT 307 --- --- --- 275
EQUAL
OR <>SL OR DOUBLE SIGNED 308 --- --- --- 275
NOT EQUAL
OR <D OR DOUBLE 337 --- --- --- 657
FLOATING LESS
THAN
OR <DT OR TIME LESS THAN 343 --- --- --- 281
OR <F OR FLOATING LESS 331 --- --- --- 600
THAN
OR <L OR DOUBLE LESS 311 --- --- --- 275
THAN
OR <S OR SIGNED LESS 312 --- --- --- 275
THAN
OR <SL OR DOUBLE SIGNED 313 --- --- --- 275
LESS THAN
OR = OR EQUAL 300 --- --- --- 275
OR =$ OR STRING EQUALS 670 --- --- --- 1187
OR =D OR DOUBLE 335 --- --- --- 657
FLOATING EQUAL
OR =DT OR TIME EQUAL 341 --- --- --- 281
OR =F OR FLOATING EQUAL 329 --- --- --- 600

117
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
OR =L OR DOUBLE EQUAL 301 --- --- --- 275
OR =S OR SIGNED EQUAL 302 --- --- --- 275
OR =SL OR DOUBLE SIGNED 303 --- --- --- 275
EQUAL
OR > OR GREATER THAN 320 --- --- --- 275
OR >$ OR STRING GREATER 674 --- --- --- 1187
THAN
OR >D OR DOUBLE 339 --- --- --- 657
FLOATING GREATER
THAN
OR >DT OR TIME GREATER 345 --- --- --- 281
THAN
OR >F OR FLOATING 333 --- --- --- 600
GREATER THAN
OR >L OR DOUBLE 321 --- --- --- 275
GREATER THAN
OR >S OR SIGNED 322 --- --- --- 275
GREATER THAN
OR >SL OR DOUBLE SIGNED 323 --- --- --- 275
GREATER THAN
OR LD OR LOAD --- --- --- --- 166
OR NOT OR NOT --- --- --- !OR NOT 163
OR TST OR BIT TEST 350 --- --- --- 174
OR TSTN OR BIT TEST 351 --- --- --- 174
OR <= OR LESS THAN OR 315 --- --- --- 275
EQUAL
OR <=$ OR STRING LESS 673 --- --- --- 1187
THAN OR EQUALS
OR <=D OR DOUBLE 338 --- --- --- 657
FLOATING LESS
THAN OR EQUAL
OR <=DT OR TIME LESS THAN 344 --- --- --- 281
OR EQUAL
OR <=F OR FLOATING LESS 332 --- --- --- 600
THAN OR EQUAL
OR <=L OR DOUBLE LESS 316 --- --- --- 275
THAN OR EQUAL
OR <=S OR SIGNED LESS 317 --- --- --- 275
THAN OR EQUAL
OR <=SL OR DOUBLE SIGNED 318 --- --- --- 275
LESS THAN OR
EQUAL
OR >= OR GREATER THAN 325 --- --- --- 275
OR EQUAL
OR >=$ OR STRING GREATER 675 --- --- --- 1187
THAN OR EQUALS
OR >=D OR DOUBLE 340 --- --- --- 657
FLOATING GREATER
THAN OR EQUAL
OR >=DT OR TIME GREATER 346 --- --- --- 281
THAN OR EQUAL
OR >=F OR FLOATING 334 --- --- --- 600
GREATER THAN OR
EQUAL
OR >=L OR DOUBLE 326 --- --- --- 275
GREATER THAN OR
EQUAL
OR >=S OR SIGNED 327 --- --- --- 275
GREATER THAN OR
EQUAL
OR >=SL OR DOUBLE SIGNED 328 --- --- --- 275
GREATER THAN OR
EQUAL

118
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
ORG ORIGIN SEARCH 889 @ORG --- --- 862
ORW LOGICAL OR 035 @ORW --- --- 520
ORWL DOUBLE LOGICAL OR 611 @ORWL --- --- 522
OUT OUTPUT --- --- --- !OUT 177
OUTB SINGLE BIT OUTPUT 534 @OUTB --- !OUTB 195
OUT NOT OUTPUT NOT --- --- --- !OUT NOT 178

P
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
PID PID CONTROL 190 --- --- --- 720
PIDAT PID CONTROL WITH 191 --- --- --- 731
AUTOTUNING
PMCR PROTOCOL MACRO 260 @PMCR --- --- 928
PRV HIGH-SPEED 881 @PRV --- --- 827
COUNTER PV READ
PRV2 COUNTER 883 @PRV2 --- --- 833
FREQUENCY
CONVERT
PULS SET PULSES 886 @PULS --- --- 846
PLS2 PULSE OUTPUT 887 @PLS2 --- --- 849
PUSH PUSH ONTO STACK 632 @PUSH --- --- 669
PWM PULSE WITH VARIA- 891 @PWM --- --- 865
BLE DUTY FACTOR
PWR EXPONENTIAL 840 @PWR --- --- 599
POWER
PWRD DOUBLE EXPONEN- 860 @PWRD --- --- 655
TIAL POWER

R
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
RAD DEGREES TO 458 @RAD --- --- 597
RADIANS
RADD DOUBLE DEGREES 849 @RADD --- --- 634
TO RADIANS
RECV NETWORK RECEIVE 098 @RECV --- --- 997
RET SUBROUTINE 093 --- --- --- 786
RETURN
RGHT$ GET STRING RIGHT 653 @RGHT$ --- --- 1166
RLNC ROTATE LEFT 574 @RLNC --- --- 367
WITHOUT CARRY
RLNL DOUBLE ROTATE 576 @RLNL --- --- 369
LEFT WITHOUT
CARRY
ROL ROTATE LEFT 027 @ROL --- --- 360
ROLL DOUBLE ROTATE 572 @ROLL --- --- 362
LEFT
ROOT BCD SQUARE ROOT 072 @ROOT --- --- 536
ROR ROTATE RIGHT 028 @ROR --- --- 364
RORL DOUBLE ROTATE 573 @RORL --- --- 365
RIGHT
ROTB BINARY ROOT 620 @ROTB --- --- 534
RPLC$ REPLACE IN STRING 661 @RPLC$ --- --- 1175
RRNC ROTATE RIGHT 575 @RRNC --- --- 371
WITHOUT CARRY

119
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
RRNL DOUBLE ROTATE 577 @RRNL --- --- 372
RIGHT WITHOUT
CARRY
RSET RESET --- @RSET %RSET !RSET 187
RSTA MULTIPLE BIT RESET 531 @RSTA --- --- 189
RSTB SINGLE BIT RESET 533 @RSTB --- !RSTB 192
RXD RECEIVE 235 @RXD --- --- 944
RXDU RECEIVE VIA SERIAL 255 @RXDU --- --- 960
COMMUNICATIONS
UNIT

S
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
SBN SUBROUTINE ENTRY 092 --- --- --- 783
SBS SUBROUTINE CALL 091 @SBS --- --- 773
SCL SCALING 194 @SCL --- --- 757
SCL2 SCALING 2 486 @SCL2 --- --- 762
SCL3 SCALING 3 487 @SCL3 --- --- 766
SDEC 7-SEGMENT 078 @SDEC --- --- 928
DECODER
SDEL STACK DATA DELETE 642 @SDEL --- --- 716
SEC HOURS TO SECONDS 065 @SEC --- --- 1068
SEND NETWORK SEND 090 @SEND --- --- 991
SET SET --- @SET %SET !SET 187
SETA MULTIPLE BIT SET 530 @SETA --- --- 189
SETB SINGLE BIT SET 532 @SETB --- !SETB 192
SETR SET RECORD 635 @SETR --- --- 681
LOCATION
SFT SHIFT REGISTER 010 --- --- --- 345
SFTR REVERSIBLE SHIFT 084 @SFTR --- --- 346
REGISTER
SIGN 16-BIT TO 32-BIT 600 @SIGN --- --- 476
SIGNED BINARY
SIN SINE 460 @SIN --- --- 581
SIND DOUBLE SINE 851 @SIND --- --- 637
SINS STACK DATA INSERT 641 @SINS --- --- 713
SLD ONE DIGIT SHIFT 074 @SLD --- --- 374
LEFT
SNUM STACK SIZE READ 638 @SNUM --- --- 704
SNXT STEP START 009 --- --- --- 868
SPED SPEED OUTPUT 885 @SPED --- --- 841
SQRT SQUARE ROOT 466 @SQRT --- --- 593
SQRTD DOUBLE SQUARE 857 @SQRTD --- --- 649
ROOT
SRCH DATA SEARCH 181 @SRCH --- --- 685
SRD ONE DIGIT SHIFT 075 @SRD --- --- 376
RIGHT
SREAD STACK DATA READ 639 @SREAD --- --- 707
SSET SET STACK 630 @SSET --- --- 666
STC SET CARRY 040 @STC --- --- 1104
STEP STEP DEFINE 008 --- --- --- 868
STUP CHANGE SERIAL 237 @STUP --- --- 968
PORT SETUP
SUM SUM 184 @SUM --- --- 697

120
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
SWAP SWAP BYTES 637 @SWAP --- --- 687
SWRIT STACK DATA WRITE 640 @SWRIT --- --- 710

T
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
TAN TANGENT 462 @TAN --- --- 585
TAND DOUBLE TANGENT 853 @TAND --- --- 641
TCMP TABLE COMPARE 085 @TCMP --- --- 301
TIM TIMER --- --- --- --- 235
TIMH HIGH-SPEED TIMER 015 --- --- --- 240
TIMHX HIGH-SPEED TIMER 551 --- --- --- 240
TIML LONG TIMER 542 --- --- --- 251
TIMLX LONG TIMER 553 --- --- --- 251
TIMW TIMER WAIT 813 --- --- --- 1144
TIMWX TIMER WAIT 816 --- --- --- 1144
TIMX TIMER 505 --- --- --- 235
TKOF TASK OFF 821 @TKOF --- --- 1196
TKON TASK ON 820 @TKON --- --- 1192
TKY TEN KEY INPUT 211 @TKY --- --- 896
TMHH ONE-MS TIMER 540 --- --- --- 244
TMHHX ONE-MS TIMER 552 --- --- --- 244
TMHW HIGH-SPEED TIMER 815 --- --- --- 1150
WAIT
TMHWX HIGH-SPEED TIMER 817 --- --- --- 1150
WAIT
TOCV CONVERT ADDRESS 285 @TOCV --- --- 1117
TO CV
TPO TIME- 685 --- --- --- 749
PROPORTIONAL
OUTPUT
TRSM TRACE MEMORY 045 --- --- --- 1075
SAMPLING
TTIM ACCUMULATIVE 087 --- --- --- 247
TIMER
TTIMX ACCUMULATIVE 555 --- --- --- 247
TIMER
TXD TRANSMIT 236 @TXD --- --- 937
TXDU TRANSMIT VIA 256 @TXDU --- --- 952
SERIAL
COMMUNICATIONS
UNIT

U
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
UP CONDITION ON 521 --- --- --- 173

W
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
WAIT NOT ONE CYCLE AND 805 --- --- --- 1140
(operando) WAIT NOT
WAIT (condi- ONE CYCLE AND 805 --- --- --- 1140
cin de entrada) WAIT

121
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
WAIT ONE CYCLE AND 805 --- --- --- 1140
(operando) WAIT
WDT EXTEND MAXIMUM 094 @WDT --- --- 1108
CYCLE TIME
WSFT WORD SHIFT 016 @WSFT --- --- 352

X
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
XCGL DOUBLE DATA 562 @XCGL --- --- 334
EXCHANGE
XCHG DATA EXCHANGE 073 @XCHG --- --- 333
XCHG$ EXCHANGE STRING 665 @XCHG$ --- --- 1180
XFER BLOCK TRANSFER 070 @XFER --- --- 328
XFERC BLOCK TRANSFER 565 @XFERC --- --- 1201
XFRB MULTIPLE BIT 062 @XFRB --- --- 326
TRANSFER
XNRL DOUBLE EXCLUSIVE 613 @XNRL --- --- 529
NOR
XNRW EXCLUSIVE NOR 037 @XNRW --- --- 528
XORL DOUBLE EXCLUSIVE 612 @XORL --- --- 526
OR
XORW EXCLUSIVE OR 036 @XORW --- --- 524

Z
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
ZCP AREA RANGE 088 --- --- --- 310
COMPARE
ZCPL DOUBLE AREA 116 --- --- --- 313
RANGE COMPARE
ZONE DEAD ZONE 682 @ZONE --- --- 746
CONTROL

Smbolos
Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina
ascendente descendente de refresco
inmediato
7SEG 7-SEGMENT DISPLAY 214 --- --- --- 908
OUTPUT
+ SIGNED BINARY ADD 400 @+ --- --- 410
WITHOUT CARRY
+$ CONCATENATE 656 @+$ --- --- 1161
STRING
++ INCREMENT BINARY 590 @++ --- --- 393
++B INCREMENT BCD 594 @++B --- --- 401
++BL DOUBLE 595 @++BL --- --- 403
INCREMENT BCD
++L DOUBLE 591 @++L --- --- 395
INCREMENT BINARY
+B BCD ADD WITHOUT 404 @+B --- --- 418
CARRY
+BC BCD ADD WITH 406 @+BC --- --- 421
CARRY
+BCL DOUBLE BCD ADD 407 @+BCL --- --- 423
WITH CARRY
+BL DOUBLE BCD ADD 405 @+BL --- --- 419
WITHOUT CARRY

122
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
+C SIGNED BINARY ADD 402 @+C --- --- 414
WITH CARRY
+CL DOUBLE SIGNED 403 @+CL --- --- 416
BINARY ADD WITH
CARRY
+D DOUBLE FLOATING- 845 @+D --- --- 626
POINT ADD
+F FLOATING-POINT 454 @+F --- --- 570
ADD
+L DOUBLE SIGNED 401 @+L --- --- 412
BINARY ADD
WITHOUT CARRY
SIGNED BINARY 410 @ --- --- 424
SUBTRACT
WITHOUT CARRY
DECREMENT BINARY 592 @ --- --- 397
B DECREMENT BCD 596 @ B --- --- 405
BL DOUBLE 597 @ BL --- --- 407
DECREMENT BCD
L DOUBLE 593 @ L --- --- 399
DECREMENT BINARY
B BCD SUBTRACT 414 @B --- --- 435
WITHOUT CARRY
BC BCD SUBTRACT 416 @BC --- --- 440
WITH CARRY
BCL DOUBLE BCD 417 @BCL --- --- 441
SUBTRACT WITH
CARRY
BL DOUBLE BCD 415 @BL --- --- 436
SUBTRACT
WITHOUT CARRY
C SIGNED BINARY 412 @C --- --- 430
SUBTRACT WITH
CARRY
CL DOUBLE SIGNED 413 @CL --- --- 432
BINARY SUBTRACT
WITH CARRY
D DOUBLE FLOATING- 846 @D --- --- 628
POINT SUBTRACT
F FLOATING-POINT 455 @F --- --- 572
SUBTRACT
* SIGNED BINARY 420 @* --- --- 443
MULTIPLY
*B BCD MULTIPLY 424 @*B --- --- 450
*BL DOUBLE BCD 425 @*BL --- --- 452
MULTIPLY
*D DOUBLE FLOATING- 847 @*D --- --- 630
POINT MULTIPLY
*F FLOATING-POINT 456 @*F --- --- 574
MULTIPLY
*L DOUBLE SIGNED 421 @*L --- --- 445
BINARY MULTIPLY
*U UNSIGNED BINARY 422 @*U --- --- 447
MULTIPLY
*UL DOUBLE UNSIGNED 423 @*UL --- --- 449
BINARY MULTIPLY
L DOUBLE SIGNED 411 @L --- --- 426
BINARY SUBTRACT
WITHOUT CARRY
/ SIGNED BINARY 430 @/ --- --- 454
DIVIDE
/B BCD DIVIDE 434 @/B --- --- 462
/BL DOUBLE BCD DIVIDE 435 @/BL --- --- 464

123
Lista alfabtica de instrucciones por nemnico Seccin 2-3

Nemnico Instruccin Cdigo FUN Diferencial Diferencial Especificacin Pgina


ascendente descendente de refresco
inmediato
/D DOUBLE FLOATING- 848 @/D --- --- 632
POINT DIVIDE
/F FLOATING-POINT 457 @/F --- --- 576
DIVIDE
/L DOUBLE SIGNED 431 @/L --- --- 456
BINARY DIVIDE
/U UNSIGNED BINARY 432 @/U --- --- 458
DIVIDE
/UL DOUBLE UNSIGNED 433 @/UL --- --- 460
BINARY DIVIDE

124
Lista de instrucciones por cdigo de funcin Seccin 2-4

2-4 Lista de instrucciones por cdigo de funcin


Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina
funcin ascendente descendente de refresco
inmediato
--- LD LOAD @LD %LD !LD 153
--- LD NOT LOAD NOT --- --- !LD NOT 155
--- AND AND @AND %AND !AND 157
--- AND NOT AND NOT --- --- !AND NOT 159
--- OR OR @OR %OR !OR 161
--- OR NOT OR NOT --- --- !OR NOT 163
--- AND LD AND LOAD --- --- --- 164
--- OR LD OR LOAD --- --- --- 166
--- OUT OUTPUT --- --- !OUT 177
--- OUT NOT OUTPUT NOT --- --- !OUT NOT 178
--- SET SET @SET %SET !SET 187
--- RSET RESET @RSET %RSET !RSET 187
--- TIM TIMER --- --- --- 235
--- TIMX TIMER --- --- --- 235
--- CNT COUNTER --- --- --- 260
000 NOP NO OPERATION --- --- --- 198
001 END END --- --- --- 197
002 IL INTERLOCK --- --- --- 201
003 ILC INTERLOCK CLEAR --- --- --- 201
004 JMP JUMP --- --- --- 219
005 JME JUMP END --- --- --- 219
006 FAL FAILURE ALARM @FAL --- --- 1079
007 FALS SEVERE FAILURE --- --- --- 1087
ALARM
008 STEP STEP DEFINE --- --- --- 868
009 SNXT STEP START --- --- --- 868
010 SFT SHIFT REGISTER --- --- --- 345
011 KEEP KEEP --- --- !KEEP 180
012 CNTR REVERSIBLE --- --- --- 263
COUNTER
013 DIFU DIFFERENTIATE UP --- --- !DIFU 184
014 DIFD DIFFERENTIATE --- --- !DIFD 184
DOWN
015 TIMH HIGH-SPEED TIMER --- --- --- 240
016 WSFT WORD SHIFT @WSFT --- --- 352
017 ASFT ASYNCHRONOUS @ASFT --- --- 349
SHIFT REGISTER
019 MCMP MULTIPLE COMPARE @MCMP --- --- 299
020 CMP UNSIGNED COMPARE --- --- !CMP 287
021 MOV MOVE @ MOV --- !MOV 315
022 MVN MOVE NOT @MVN --- --- 317
023 BIN BCD-TO-BINARY @BIN --- --- 466
024 BCD BINARY-TO-BCD @BCD --- --- 469
025 ASL ARITHMETIC SHIFT @ASL --- --- 354
LEFT
026 ASR ARITHMETIC SHIFT @ASR --- --- 357
RIGHT
027 ROL ROTATE LEFT @ROL --- --- 360
028 ROR ROTATE RIGHT @ROR --- --- 364
029 COM COMPLEMENT @COM --- --- 531
034 ANDW LOGICAL AND @ANDW --- --- 517
035 ORW LOGICAL OR @ORW --- --- 520

125
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
036 XORW EXCLUSIVE OR @XORW --- --- 524
037 XNRW EXCLUSIVE NOR @XNRW --- --- 528
040 STC SET CARRY @STC --- --- 1104
041 CLC CLEAR CARRY @CLC --- --- 1105
045 TRSM TRACE MEMORY --- --- --- 1075
SAMPLING
046 MSG DISPLAY MESSAGE @MSG --- --- 1058
058 BINL DOUBLE BCD-TO- @BINL --- --- 467
DOUBLE BINARY
059 BCDL DOUBLE BINARY-TO- @BCDL --- --- 470
BCD
060 CMPL DOUBLE UNSIGNED --- --- --- 290
COMPARE
062 XFRB MULTIPLE BIT @XFRB --- --- 326
TRANSFER
063 LINE COLUMN TO LINE @LINE --- --- 494
064 COLM LINE TO COLUMN @COLM --- --- 496
065 SEC HOURS TO SECONDS @SEC --- --- 1068
066 HMS SECONDS TO HOURS @HMS --- --- 1070
067 BCNT BIT COUNTER @BCNT --- --- 556
068 BCMP UNSIGNED BLOCK @BCMP --- --- 304
COMPARE
069 APR ARITHMETIC @APR --- --- 540
PROCESS
070 XFER BLOCK TRANSFER @XFER --- --- 328
071 BSET BLOCK SET @BSET --- --- 331
072 ROOT BCD SQUARE ROOT @ROOT --- --- 536
073 XCHG DATA EXCHANGE @XCHG --- --- 333
074 SLD ONE DIGIT SHIFT @SLD --- --- 374
LEFT
075 SRD ONE DIGIT SHIFT @SRD --- --- 376
RIGHT
076 MLPX DATA DECODER @MLPX --- --- 477
077 DMPX DATA ENCODER @DMPX --- --- 482
078 SDEC 7-SEGMENT @SDEC --- --- 928
DECODER
079 FDIV FLOATING POINT @FDIV --- --- 552
DIVIDE
080 DIST SINGLE WORD @DIST --- --- 336
DISTRIBUTE
081 COLL DATA COLLECT @COLL --- --- 338
082 MOVB MOVE BIT @MOVB --- --- 321
083 MOVD MOVE DIGIT @MOVD --- --- 323
084 SFTR REVERSIBLE SHIFT @SFTR --- --- 346
REGISTER
085 TCMP TABLE COMPARE @TCMP --- --- 301
086 ASC ASCII CONVERT @ASC --- --- 486
087 TTIM ACCUMULATIVE --- --- --- 247
TIMER
088 ZCP AREA RANGE --- --- --- 310
COMPARE
090 SEND NETWORK SEND @SEND --- --- 991
091 SBS SUBROUTINE CALL @SBS --- --- 773
092 SBN SUBROUTINE ENTRY --- --- --- 783
093 RET SUBROUTINE --- --- --- 786
RETURN

126
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
094 WDT EXTEND MAXIMUM @WDT --- --- 1108
CYCLE TIME
096 BPRG BLOCK PROGRAM --- --- --- 1128
BEGIN
097 IORF I/O REFRESH @IORF --- --- 885
098 RECV NETWORK RECEIVE @RECV --- --- 997
099 MCRO MACRO @MCRO --- --- 779
114 CPS SIGNED BINARY --- --- !CPS 293
COMPARE
115 CPSL DOUBLE SIGNED --- --- --- 296
BINARY COMPARE
116 ZCPL DOUBLE AREA --- --- --- 313
RANGE COMPARE
160 NEG 2S COMPLEMENT @NEG --- --- 472
161 NEGL DOUBLE 2S @NEGL --- --- 474
COMPLEMENT
162 HEX ASCII TO HEX @HEX --- --- 490
180 FCS FRAME CHECKSUM @FCS --- --- 700
181 SRCH DATA SEARCH @SRCH --- --- 685
182 MX FIND MAXIMUM @MAX --- --- 689
183 MIN FIND MINIMUM @MIN --- --- 693
184 SUM SUM @SUM --- --- 697
190 PID PID CONTROL --- --- --- 720
191 PIDAT PID CONTROL WITH --- --- --- 731
AUTOTUNING
194 SCL SCALING @SCL --- --- 757
195 AVG AVERAGE --- --- --- 769
210 DSW DIGITAL SWITCH --- --- --- 890
INPUT
211 TKY TEN KEY INPUT @TKY --- --- 896
212 HKY HEXADECIMAL KEY --- --- --- 899
INPUT
213 MTR MATRIX INPUT --- --- --- 904
214 7SEG 7-SEGMENT DISPLAY --- --- --- 908
OUTPUT
222 IORD INTELLIGENT I/O @IORD --- --- 913
READ
223 IOWR INTELLIGENT I/O @IOWR --- --- 917
WRITE
226 DLNK CPU BUS UNIT I/O @DLNK --- --- 921
REFRESH
235 RXD RECEIVE @RXD --- --- 944
236 TXD TRANSMIT @TXD --- --- 937
255 RXDU RECEIVE VIA SERIAL @RXDU --- --- 960
COMMUNICATIONS
UNIT
256 TXDU TRANSMIT VIA @TXDU --- --- 952
SERIAL
COMMUNICATIONS
UNIT
237 STUP CHANGE SERIAL @STUP --- --- 968
PORT SETUP
260 PMCR PROTOCOL MACRO @PMCR --- --- 928
269 FPD FAILURE POINT --- --- --- 1095
DETECTION
281 EMBC SELECT EM BANK @EMBC --- --- 1106
282 CCS SAVE CONDITION @CCS --- --- 1110
FLAGS

127
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
283 CCL LOAD CONDITION @CCL --- --- 1112
FLAGS
284 FRMCV CONVERT ADDRESS @FRMCV --- --- 1113
FROM CV
285 TOCV CONVERT ADDRESS @TOCV --- --- 1117
TO CV
286 GETID GET VARIABLE ID @GETID --- --- 1214
287 IOSP DISABLE @IOSP --- --- 1121
PERIPHERAL
SERVICING
288 IORS ENABLE --- --- --- 1123
PERIPHERAL
SERVICING
300 AND = AND EQUAL --- --- --- 275
300 LD = LOAD EQUAL --- --- --- 275
300 OR = OR EQUAL --- --- --- 275
301 AND =L AND DOUBLE EQUAL --- --- --- 275
301 LD =L LOAD DOUBLE --- --- --- 275
EQUAL
301 OR =L OR DOUBLE EQUAL --- --- --- 275
302 AND =S AND SIGNED EQUAL --- --- --- 275
302 LD =S LOAD SIGNED EQUAL --- --- --- 275
302 OR =S OR SIGNED EQUAL --- --- --- 275
303 AND =SL AND DOUBLE --- --- --- 275
SIGNED EQUAL
303 LD =SL LOAD DOUBLE --- --- --- 275
SIGNED EQUAL
303 OR =SL OR DOUBLE SIGNED --- --- --- 275
EQUAL
305 AND<> AND NOT EQUAL --- --- --- 275
305 LD <> LOAD NOT EQUAL --- --- --- 275
305 OR <> OR NOT EQUAL --- --- --- 275
306 AND <>L AND DOUBLE NOT --- --- --- 275
EQUAL
306 LD <>L LOAD DOUBLE NOT --- --- --- 275
EQUAL
306 OR <>L OR DOUBLE NOT --- --- --- 275
EQUAL
307 AND <>S AND SIGNED NOT --- --- --- 275
EQUAL
307 LD <>S LOAD SIGNED NOT --- --- --- 275
EQUAL
307 OR <>S OR SIGNED NOT --- --- --- 275
EQUAL
308 AND <>SL AND DOUBLE --- --- --- 275
SIGNED NOT EQUAL
308 LD <>SL LOAD DOUBLE --- --- --- 275
SIGNED NOT EQUAL
308 OR <>SL OR DOUBLE SIGNED --- --- --- 275
NOT EQUAL
310 AND< AND LESS THAN --- --- --- 275
310 LD < LOAD LESS THAN --- --- --- 275
310 OR < OR LESS THAN --- --- --- 275
311 AND <L AND DOUBLE LESS --- --- --- 275
THAN
311 LD <L LOAD DOUBLE LESS --- --- --- 275
THAN
311 OR <L OR DOUBLE LESS --- --- --- 275
THAN

128
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
312 AND <S AND SIGNED LESS --- --- --- 275
THAN
312 LD <S LOAD SIGNED LESS --- --- --- 275
THAN
312 OR <S OR SIGNED LESS --- --- --- 275
THAN
313 AND <SL AND DOUBLE --- --- --- 275
SIGNED LESS THAN
313 LD <SL LOAD DOUBLE --- --- --- 275
SIGNED LESS THAN
313 OR <SL OR DOUBLE SIGNED --- --- --- 275
LESS THAN
315 AND <= AND LESS THAN OR --- --- --- 275
EQUAL
315 LD <= LOAD LESS THAN OR --- --- --- 275
EQUAL
315 OR <= OR LESS THAN OR --- --- --- 275
EQUAL
316 AND <=L AND DOUBLE LESS --- --- --- 275
THAN OR EQUAL
316 LD <=L LOAD DOUBLE LESS --- --- --- 275
THAN OR EQUAL
316 OR <=L OR DOUBLE LESS --- --- --- 275
THAN OR EQUAL
317 AND <=S AND SIGNED LESS --- --- --- 275
THAN OR EQUAL
317 LD <=S LOAD SIGNED LESS --- --- --- 275
THAN OR EQUAL
317 OR <=S OR SIGNED LESS --- --- --- 275
THAN OR EQUAL
318 AND <=SL AND DOUBLE --- --- --- 275
SIGNED LESS THAN
OR EQUAL
318 LD <=SL LOAD DOUBLE --- --- --- 275
SIGNED LESS THAN
OR EQUAL
318 OR <=SL OR DOUBLE SIGNED --- --- --- 275
LESS THAN OR
EQUAL
320 AND> AND GREATER THAN --- --- --- 275
320 LD > LOAD GREATER --- --- --- 275
THAN
320 OR > OR GREATER THAN --- --- --- 275
321 AND >L AND DOUBLE --- --- --- 275
GREATER THAN
321 LD >L LOAD DOUBLE --- --- --- 275
GREATER THAN
321 OR >L OR DOUBLE --- --- --- 275
GREATER THAN
322 AND >S AND SIGNED --- --- --- 275
GREATER THAN
322 LD >S LOAD SIGNED --- --- --- 275
GREATER THAN
322 OR >S OR SIGNED --- --- --- 275
GREATER THAN
323 AND >SL AND DOUBLE --- --- --- 275
SIGNED GREATER
THAN
323 LD >SL LOAD DOUBLE --- --- --- 275
SIGNED GREATER
THAN
323 OR >SL OR DOUBLE SIGNED --- --- --- 275
GREATER THAN

129
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
325 AND >= AND GREATER THAN --- --- --- 275
OR EQUAL
325 LD >= LOAD GREATER --- --- --- 275
THAN OR EQUAL
325 OR >= OR GREATER THAN --- --- --- 275
OR EQUAL
326 AND >=L AND DOUBLE --- --- --- 275
GREATER THAN OR
EQUAL
326 LD >=L LOAD DOUBLE --- --- --- 275
GREATER THAN OR
EQUAL
326 OR >=L OR DOUBLE --- --- --- 275
GREATER THAN OR
EQUAL
327 AND >=S AND SIGNED --- --- --- 275
GREATER THAN OR
EQUAL
327 LD >=S LOAD SIGNED --- --- --- 275
GREATER THAN OR
EQUAL
327 OR >=S OR SIGNED --- --- --- 275
GREATER THAN OR
EQUAL
328 AND >=SL AND DOUBLE --- --- --- 275
SIGNED GREATER
THAN OR EQUAL
328 LD >=SL LOAD DOUBLE --- --- --- 275
SIGNED GREATER
THAN OR EQUAL
328 OR >=SL OR DOUBLE SIGNED --- --- --- 275
GREATER THAN OR
EQUAL
329 AND =F AND FLOATING --- --- --- 600
EQUAL
329 LD =F LOAD FLOATING --- --- --- 600
EQUAL
329 OR =F OR FLOATING EQUAL --- --- --- 600
330 AND <>F AND FLOATING NOT --- --- --- 600
EQUAL
330 LD <>F LOAD FLOATING NOT --- --- --- 600
EQUAL
330 OR <>F OR FLOATING NOT --- --- --- 600
EQUAL
331 AND <F AND FLOATING LESS --- --- --- 600
THAN
331 LD <F LOAD FLOATING --- --- --- 600
LESS THAN
331 OR <F OR FLOATING LESS --- --- --- 600
THAN
332 AND <=F AND FLOATING LESS --- --- --- 600
THAN OR EQUAL
332 LD <=F LOAD FLOATING --- --- --- 600
LESS THAN OR
EQUAL
332 OR <=F OR FLOATING LESS --- --- --- 600
THAN OR EQUAL
333 AND >F AND FLOATING --- --- --- 600
GREATER THAN
333 LD >F LOAD FLOATING --- --- --- 600
GREATER THAN
333 OR >F OR FLOATING --- --- --- 600
GREATER THAN

130
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
334 AND >=F AND FLOATING --- --- --- 600
GREATER THAN OR
EQUAL
334 LD >=F LOAD FLOATING --- --- --- 600
GREATER THAN OR
EQUAL
334 OR >=F OR FLOATING --- --- --- 600
GREATER THAN OR
EQUAL
335 AND =D AND DOUBLE --- --- --- 657
FLOATING EQUAL
335 LD =D LOAD DOUBLE --- --- --- 657
FLOATING EQUAL
335 OR =D OR DOUBLE --- --- --- 657
FLOATING EQUAL
336 AND <>D AND DOUBLE --- --- --- 657
FLOATING NOT
EQUAL
336 LD <>D LOAD DOUBLE --- --- --- 657
FLOATING NOT
EQUAL
336 OR <>D OR DOUBLE --- --- --- 657
FLOATING NOT
EQUAL
337 AND <D AND DOUBLE --- --- --- 657
FLOATING LESS
THAN
337 LD <D LOAD DOUBLE --- --- --- 657
FLOATING LESS
THAN
337 OR <D OR DOUBLE --- --- --- 657
FLOATING LESS
THAN
338 AND <=D AND DOUBLE --- --- --- 657
FLOATING LESS
THAN OR EQUAL
338 LD <=D LOAD DOUBLE --- --- --- 657
FLOATING LESS
THAN OR EQUAL
338 OR <=D OR DOUBLE --- --- --- 657
FLOATING LESS
THAN OR EQUAL
339 AND >D AND DOUBLE --- --- --- 657
FLOATING GREATER
THAN
339 LD >D LOAD DOUBLE --- --- --- 657
FLOATING GREATER
THAN
339 OR >D OR DOUBLE --- --- --- 657
FLOATING GREATER
THAN
340 AND >=D AND DOUBLE --- --- --- 657
FLOATING GREATER
THAN OR EQUAL
340 LD >=D LOAD DOUBLE --- --- --- 657
FLOATING GREATER
THAN OR EQUAL
340 OR >=D OR DOUBLE --- --- --- 657
FLOATING GREATER
THAN OR EQUAL
341 AND =DT AND TIME EQUAL --- --- --- 281
341 LD =DT LOAD TIME EQUAL --- --- --- 281
341 OR =DT OR TIME EQUAL --- --- --- 281
342 AND <> DT AND TIME NOT --- --- --- 281
EQUAL

131
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
342 LD <>DT LOAD TIME NOT --- --- --- 281
EQUAL
342 OR <>DT OR TIME NOT EQUAL --- --- --- 281
343 AND < DT AND TIME LESS --- --- --- 281
THAN
343 LD <DT LOAD TIME LESS --- --- --- 281
THAN
343 OR <DT OR TIME LESS THAN --- --- --- 281
344 AND <=DT AND TIME LESS --- --- --- 281
THAN OR EQUAL
344 LD <=DT LD TIME LESS THAN --- --- --- 281
OR EQUAL
344 OR <=DT OR TIME LESS THAN --- --- --- 281
OR EQUAL
345 AND > DT AND TIME GREATER --- --- --- 281
THAN
345 LD >DT LOAD TIME GREATER --- --- --- 281
THAN
345 OR >DT OR TIME GREATER --- --- --- 281
THAN
346 AND >=DT AND TIME GREATER --- --- --- 281
THAN OR EQUAL
346 LD >=DT LOAD TIME GREATER --- --- --- 281
THAN OR EQUAL
346 OR >=DT OR TIME GREATER --- --- --- 281
THAN OR EQUAL
350 AND TST AND BIT TEST --- --- --- 174
350 LD TST LOAD BIT TEST --- --- --- 174
350 OR TST OR BIT TEST --- --- --- 174
351 AND TSTN AND BIT TEST NOT --- --- --- 174
351 LD TSTN LOAD BIT TEST NOT --- --- --- 174
351 OR TSTN OR BIT TEST NOT --- --- --- 174
400 + SIGNED BINARY ADD @+ --- --- 410
WITHOUT CARRY
401 +L DOUBLE SIGNED @+L --- --- 412
BINARY ADD
WITHOUT CARRY
402 +C SIGNED BINARY ADD @+C --- --- 414
WITH CARRY
403 +CL DOUBLE SIGNED @+CL --- --- 416
BINARY ADD WITH
CARRY
404 +B BCD ADD WITHOUT @+B --- --- 421
CARRY
405 +BL DOUBLE BCD ADD @+BL --- --- 419
WITHOUT CARRY
406 +BC BCD ADD WITH @+BC --- --- 421
CARRY
407 +BCL DOUBLE BCD ADD @+BCL --- --- 423
WITH CARRY
410 SIGNED BINARY @ --- --- 424
SUBTRACT
WITHOUT CARRY
411 L DOUBLE SIGNED @L --- --- 426
BINARY SUBTRACT
WITHOUT CARRY
412 C SIGNED BINARY @C --- --- 430
SUBTRACT WITH
CARRY
413 CL DOUBLE SIGNED @CL --- --- 432
BINARY SUBTRACT
WITH CARRY

132
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
414 B BCD SUBTRACT @B --- --- 435
WITHOUT CARRY
415 BL DOUBLE BCD @BL --- --- 436
SUBTRACT
WITHOUT CARRY
416 BC BCD SUBTRACT @BC --- --- 440
WITH CARRY
417 BCL DOUBLE BCD @BCL --- --- 441
SUBTRACT WITH
CARRY
420 * SIGNED BINARY @* --- --- 443
MULTIPLY
421 *L DOUBLE SIGNED @*L --- --- 445
BINARY MULTIPLY
422 *U UNSIGNED BINARY @*U --- --- 447
MULTIPLY
423 *UL DOUBLE UNSIGNED @*UL --- --- 449
BINARY MULTIPLY
424 *B BCD MULTIPLY @*B --- --- 450
425 *BL DOUBLE BCD @*BL --- --- 452
MULTIPLY
430 / SIGNED BINARY @/ --- --- 454
DIVIDE
431 /L DOUBLE SIGNED @/L --- --- 456
BINARY DIVIDE
432 /U UNSIGNED BINARY @/U --- --- 458
DIVIDE
433 /UL DOUBLE UNSIGNED @/UL --- --- 460
BINARY DIVIDE
434 /B BCD DIVIDE @/B --- --- 462
435 /BL DOUBLE BCD DIVIDE @/BL --- --- 464
448 FSTR FLOATING POINT TO @FSTR --- --- 604
ASCII
449 FVAL ASCII TO FLOATING @FVAL --- --- 609
POINT
450 FIX FLOATING TO 16-BIT @FIX --- --- 563
451 FIX FLOATING TO 32-BIT @FIXL --- --- 565
452 FLT 16-BIT TO FLOATING @FLT --- --- 566
453 FLTL 32-BIT TO FLOATING @FLTL --- --- 568
454 +F FLOATING-POINT @+F --- --- 570
ADD
455 F FLOATING-POINT @F --- --- 572
SUBTRACT
456 *F FLOATING-POINT @*F --- --- 574
MULTIPLY
457 /F FLOATING-POINT @/F --- --- 576
DIVIDE
458 RAD DEGREES TO @RAD --- --- 597
RADIANS
459 DEG RADIANS-TO @DEG --- --- 579
DEGREES
460 SIN SINE @SIN --- --- 581
461 COS COSINE @COS --- --- 583
462 TAN TANGENT @TAN --- --- 585
463 ASIN ARC SINE @ASIN --- --- 587
464 ACOS ARC COSINE @ACOS --- --- 589
465 ATAN ARC TANGENT @ATAN --- --- 591
466 SQRT SQUARE ROOT @SQRT --- --- 593
467 EXP EXPONENT @EXP --- --- 595
468 LOG LOGARITHM @LOG --- --- 597

133
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
470 BINS SIGNED BCD-TO- @BINS --- --- 499
BINARY
471 BCDS SIGNED BINARY-TO- @BCDS --- --- 505
BCD
472 BISL DOUBLE SIGNED @BISL --- --- 502
BCD-TO-BINARY
473 BDSL DOUBLE SIGNED @BDSL --- --- 507
BINARY-TO-BCD
474 GRY GRAY CODE @GRY --- --- 511
CONVERSION
486 SCL2 SCALING 2 @SCL2 --- --- 762
487 SCL3 SCALING 3 @SCL3 --- --- 766
490 CMND DELIVER COMMAND @CMND --- --- 1003
498 MOVL DOUBLE MOVE @MOVL --- --- 318
499 MVNL DOUBLE MOVE NOT @MVNL --- --- 320
502 BCMP2 EXPANDED BLOCK @BCMP2 --- --- 306
COMPARE
510 CJP CONDITIONAL JUMP --- --- --- 223
511 CJPN CONDITIONAL JUMP --- --- --- 223
512 FOR FOR-NEXT LOOPS --- --- --- 229
513 NEXT FOR-NEXT LOOPS --- --- --- 229
514 BREAK BREAK LOOP --- --- --- 232
515 JMP0 MULTIPLE JUMP --- --- --- 227
516 JME0 MULTIPLE JUMP END --- --- --- 227
517 MILH MULTI-INTERLOCK --- --- --- 205
DIFFERENTIATION
HOLD
518 MILR MULTI-INTERLOCK --- --- --- 205
DIFFERENTIATIONRE
LEASE
519 MILC MULTI-INTERLOCK --- --- --- 205
CLEAR
520 NOT NOT --- --- --- 172
521 UP CONDITION ON --- --- --- 173
522 DOWN CONDITION OFF --- --- --- 173
530 SETA MULTIPLE BIT SET @SETA --- --- 189
531 RSTA MULTIPLE BIT RESET @RSTA --- --- 189
532 SETB SINGLE BIT SET @SETB --- !SETB 192
533 RSTB SINGLE BIT RESET @RSTB --- !RSTB 192
534 OUTB SINGLE BIT OUTPUT @OUTB --- !OUTB 195
540 TMHH ONE-MS TIMER --- --- --- 244
542 TIML LONG TIMER --- --- --- 251
543 MTIM MULTI-OUTPUT --- --- --- 254
TIMER
545 CNR RESET TIMER/ @CNR --- --- 267
COUNTER
546 CNTX COUNTER --- --- --- 260
547 CNRX RESET TIMER/ --- --- --- 267
COUNTER
548 CNTRX REVERSIBLE --- --- --- 263
COUNTER
550 TIMX TIMER --- --- --- 235
551 TIMHX HIGH-SPEED TIMER --- --- --- 240
552 TMHHX ONE-MS TIMER --- --- --- 244
553 TIMLX LONG TIMER --- --- --- 251
554 MTIMX MULTI-OUTPUT --- --- --- 254
TIMER

134
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
555 TTIMX ACCUMULATIVE --- --- --- 247
TIMER
560 MOVR MOVE TO REGISTER @MOVR --- --- 340
561 MOVRW MOVE TIMER/ @MOVRW --- --- 342
COUNTER PV TO
REGISTER
562 XCGL DOUBLE DATA @XCGL --- --- 334
EXCHANGE
565 XFERC BLOCK TRANSFER @XFERC --- --- 1201
566 DISTC SINGLE WORD @DISTC --- --- 1203
DISTRIBUTE
567 COLLC DATA COLLECT @COLLC --- --- 1206
568 MOVBC MOVE BIT @MOVBC --- --- 1211
570 ASLL DOUBLE SHIFT LEFT @ASLL --- --- 355
571 ASRL DOUBLE SHIFT @ASRL --- --- 358
RIGHT
572 ROLL DOUBLE ROTATE @ROLL --- --- 362
LEFT
573 RORL DOUBLE ROTATE @RORL --- --- 365
RIGHT
574 RLNC ROTATE LEFT @RLNC --- --- 367
WITHOUT CARRY
575 RRNC ROTATE RIGHT @RRNC --- --- 371
WITHOUT CARRY
576 RLNL DOUBLE ROTATE @RLNL --- --- 369
LEFT WITHOUT
CARRY
577 RRNL DOUBLE ROTATE @RRNL --- --- 372
RIGHT WITHOUT
CARRY
578 NSFL SHIFT N-BIT DATA @NSFL --- --- 377
LEFT
579 NSFR SHIFT N-BIT DATA @NSFR --- --- 379
RIGHT
580 NASL SHIFT N-BITS LEFT @NASL --- --- 381
581 NASR SHIFT N-BITS RIGHT @NASR --- --- 387
582 NSLL DOUBLE SHIFT @NSLL --- --- 384
N-BITS LEFT
583 NSRL DOUBLE SHIFT @NSRL --- --- 389
N-BITS RIGHT
590 ++ INCREMENT BINARY @++ --- --- 393
591 ++L DOUBLE @++L --- --- 395
INCREMENT BINARY
592 DECREMENT BINARY @ --- --- 397
593 L DOUBLE @ L --- --- 399
DECREMENT BINARY
594 ++B INCREMENT BCD @++B --- --- 401
595 ++BL DOUBLE @++BL --- --- 403
INCREMENT BCD
596 B DECREMENT BCD @ B --- --- 405
597 BL DOUBLE @ BL --- --- 407
DECREMENT BCD
600 SIGN 16-BIT TO 32-BIT @SIGN --- --- 476
SIGNED BINARY
610 ANDL DOUBLE LOGICAL @ANDL --- --- 519
AND
611 ORWL DOUBLE LOGICAL OR @ORWL --- --- 522
612 XORL DOUBLE EXCLUSIVE @XORL --- --- 526
OR
613 XNRL DOUBLE EXCLUSIVE @XNRL --- --- 529
NOR

135
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
614 COML DOUBLE @COML --- --- 533
COMPLEMENT
620 ROTB BINARY ROOT @ROTB --- --- 534
621 BCNTC BIT COUNTER @BCNTC --- --- 1212
630 SSET SET STACK @SSET --- --- 666
631 DIM DIMENSION RECORD @DIM --- --- 678
TABLE
632 PUSH PUSH ONTO STACK @PUSH --- --- 669
633 FIFO FIRST IN FIRST OUT @FIFO --- --- 672
634 LIFO LAST IN FIRST OUT @LIFO --- --- 675
635 SETR SET RECORD @SETR --- --- 681
LOCATION
636 GETR GET RECORD @GETR --- --- 683
NUMBER
637 SWAP SWAP BYTES @SWAP --- --- 687
638 SNUM STACK SIZE READ @SNUM --- --- 704
639 SREAD STACK DATA READ @SREAD --- --- 707
640 SWRIT STACK DATA WRITE @SWRIT --- --- 710
641 SINS STACK DATA INSERT @SINS --- --- 713
642 SDEL STACK DATA DELETE @SDEL --- --- 716
650 LEN$ STRING LENGTH @LEN$ --- --- 1173
652 LEFT$ GET STRING LEFT @LEFT$ --- --- 1164
653 RGHT$ GET STRING RIGHT @RGHT$ --- --- 1166
654 MID$ GET STRING MIDDLE @MID$ --- --- 1168
656 +$ CONCATENATE @+$ --- --- 1161
STRING
657 INS$ INS$ @INS$ --- --- 1184
658 DEL$ DELETE STRING @DEL$ --- --- 1178
660 FIND$ FIND IN STRING @FIND$ --- --- 1171
661 RPLC$ REPLACE IN STRING @RPLC$ --- --- 1175
664 MOV$ MOV STRING @MOV$ --- --- 1159
665 XCHG$ EXCHANGE STRING @XCHG$ --- --- 1180
666 CLR$ CLEAR STRING @CLR$ --- --- 1182
670 AND =$ AND STRING EQUALS --- --- --- 1187
670 LD =$ LOAD STRING --- --- --- 1187
EQUALS
670 OR =$ OR STRING EQUALS --- --- --- 1187
671 AND <>$ AND STRING NOT --- --- --- 1187
EQUAL
671 LD <>$ LOAD STRING NOT --- --- --- 1187
EQUAL
671 OR <>$ OR STRING NOT --- --- --- 1187
EQUAL
672 AND <$ AND STRING LESS --- --- --- 1187
THAN
672 LD <$ LOAD STRING LESS --- --- --- 1187
THAN
672 OR <$ OR STRING LESS --- --- --- 1187
THAN
673 AND <=$ AND STRING LESS --- --- --- 1187
THAN OR EQUALS
673 LD <=$ LOAD STRING LESS --- --- --- 1187
THAN OR EQUAL
673 OR <=$ OR STRING LESS --- --- --- 1187
THAN OR EQUALS
674 AND >$ AND STRING --- --- --- 1187
GREATER THAN

136
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
674 LD >$ LOAD STRING --- --- --- 1187
GREATER THAN
674 OR >$ OR STRING GREATER --- --- --- 1187
THAN
675 AND >=$ AND STRING --- --- --- 1187
GREATER THAN OR
EQUALS
675 LD >=$ LOAD STRING --- --- --- 1187
GREATER THAN OR
EQUALS
675 OR >=$ OR STRING GREATER --- --- --- 1187
THAN OR EQUALS
680 LMT LIMIT CONTROL @LMT --- --- 741
681 BAND DEAD BAND @BAND --- --- 743
CONTROL
682 ZONE DEAD ZONE @ZONE --- --- 746
CONTROL
685 TPO TIME- --- --- --- 749
PROPORTIONAL
OUTPUT
690 MSKS SET INTERRUPT @MSKS --- --- 798
MASK
691 CLI CLEAR INTERRUPT @CLI --- --- 809
692 MSKR READ INTERRUPT @MSKR --- --- 804
MASK
693 DI DISABLE @DI --- --- 814
INTERRUPTS
694 EI ENABLE --- --- --- 816
INTERRUPTS
700 FREAD READ DATA FILE @FREAD --- --- 1045
701 FWRIT WRITE DATA FILE @FWRIT --- --- 1052
720 EXPLT EXPLICIT MESSAGE @EXPLT --- --- 1013
SEND
721 EGATR EXPLICIT GET @EGATR --- --- 1021
ATTRIBUTE
722 ESATR EXPLICIT SET @ESATR --- --- 1028
ATTRIBUTE
723 ECHRD EXPLICIT WORD @ECHRD --- --- 1034
READ
724 ECHWR EXPLICIT WORD @ECHWR --- --- 1038
CLEAR
730 CADD CALENDAR ADD @CADD --- --- 1061
731 CSUB CALENDAR @CSUB --- --- 1065
SUBTRACT
735 DATE CLOCK ADJUSTMENT @DATE --- --- 1073
750 GSBS GLOBAL @GSBS --- --- 786
SUBROUTINE CALL
751 GSBN GLOBAL --- --- --- 794
SUBROUTINE ENTRY
752 GRET GLOBAL --- --- --- 797
SUBROUTINE
RETURN
801 BEND BLOCK PROGRAM --- --- --- 1128
END
802 IF CONDITIONAL --- --- --- 1133
BRANCHING BLOCK
802 IF CONDITIONAL --- --- --- 1133
BRANCHING BLOCK
802 IF NOT CONDITIONAL --- --- --- 1133
BRANCHING BLOCK
NOT
803 ELSE ELSE --- --- --- 1133

137
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
804 IEND IF END --- --- --- 1133
805 WAIT ONE CYCLE AND --- --- --- 1140
WAIT
805 WAIT ONE CYCLE AND --- --- --- 1140
WAIT
805 WAIT NOT ONE CYCLE AND --- --- --- 1140
WAIT NOT
806 EXIT CONDITIONAL BLOCK --- --- --- 1137
EXIT
806 EXIT CONDITIONAL BLOCK --- --- --- 1137
EXIT
806 EXIT NOT CONDITIONAL BLOCK --- --- --- 1137
EXIT NOT
809 LOOP LOOP --- --- --- 1153
810 LEND LOOP END --- --- --- 1153
810 LEND LOOP END --- --- --- 1153
810 LEND NOT LOOP END NOT --- --- --- 1153
811 BPPS BLOCK PROGRAM --- --- --- 1131
PAUSE
812 BPRS BLOCK PROGRAM --- --- --- 1131
RESTART
813 TIMW TIMER WAIT --- --- --- 1144
814 CNTW COUNTER WAIT --- --- --- 1147
815 TMHW HIGH-SPEED TIMER --- --- --- 1150
WAIT
816 TIMWX TIMER WAIT --- --- --- 1144
817 TMHWX HIGH-SPEED TIMER --- --- --- 1150
WAIT
818 CNTWX COUNTER WAIT --- --- --- 1147
820 TKON TASK ON @TKON --- --- 1192
821 TKOF TASK OFF @TKOF --- --- 1196
840 PWR EXPONENTIAL @PWR --- --- 599
POWER
841 FIXD DOUBLE FLOATING @FIXD --- --- 620
TO 16-BIT BINARY
842 FIXLD DOUBLE FLOATING @FIXLD --- --- 621
TO 32-BIT BINARY
843 DBL 16-BIT BINARY TO @DBL --- --- 623
DOUBLE FLOATING
844 DBLL 32-BIT BINARY TO @DBLL --- --- 624
DOUBLE FLOATING
845 +D DOUBLE FLOATING- @+D --- --- 626
POINT ADD
846 D DOUBLE FLOATING- @D --- --- 628
POINT SUBTRACT
847 *D DOUBLE FLOATING- @*D --- --- 630
POINT MULTIPLY
848 /D DOUBLE FLOATING- @/D --- --- 632
POINT DIVIDE
849 RADD DOUBLE DEGREES @RADD --- --- 634
TO RADIANS
850 DEGD DOUBLE RADIANS TO @RADD --- --- 636
DEGREES
851 SIND DOUBLE SINE @SIND --- --- 637
852 COSD DOUBLE COSINE @COSD --- --- 639
853 TAND DOUBLE TANGENT @TAND --- --- 641
854 ASIND DOUBLE ARC SINE @ASIND --- --- 643
855 ACOSD DOUBLE ARC @ACOSD --- --- 645
COSINE

138
Lista de instrucciones por cdigo de funcin Seccin 2-4

Cdigo de Nemnico Instruccin Diferencial Diferencial Especificacin Pgina


funcin ascendente descendente de refresco
inmediato
856 ATAND DOUBLE ARC @ATAND --- --- 647
TANGENT
857 SQRTD DOUBLE SQUARE @SQRTD --- --- 649
ROOT
858 EXPD DOUBLE EXPONENT @EXPD --- --- 651
859 LOGD DOUBLE LOGARITHM @LOGD --- --- 653
860 PWRD DOUBLE @PWRD --- --- 655
EXPONENTIAL
POWER
880 INI MODE CONTROL @INI --- --- 823
881 PRV HIGH-SPEED @PRV --- --- 827
COUNTER PV READ
882 CTBL COMPARISON TABLE @CTBL --- --- 837
LOAD
883 PRV2 COUNTER @PRV2 --- --- 833
FREQUENCY
CONVERT
885 SPED SPEED OUTPUT @SPED --- --- 841
886 PULS SET PULSES @PULS --- --- 846
887 PLS2 PULSE OUTPUT @PLS2 --- --- 849
888 ACC ACCELERATION @ACC --- --- 855
CONTROL
889 ORG ORIGIN SEARCH @ORG --- --- 862
891 PWN PULSE WITH @PWN --- --- 865
VARIABLE DUTY
FACTOR

139
SECCIN 3
Instrucciones

Esta seccin describe cada una de las instrucciones que pueden utilizarse para programar PLCs de la serie CS/CJ. Las
instrucciones se describen por orden de funcin, tal y como estn clasificadas en la Seccin 2 Resumen de instrucciones.

3-1 Notacin y presentacin de las descripciones de las instrucciones . . . . . . . . . . . . . . . . . . . . . . . 148


3-2 Actualizacin de instrucciones y Nuevas instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
3-2-1 Actualizaciones para CPUs de la serie CS versin-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
3-2-2 Actualizaciones para CPUs CS1-H/CJ1-H. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
3-3 Instrucciones de la entrada de secuencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
3-3-1 LOAD: LD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
3-3-2 LOAD NOT: LD NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
3-3-3 AND: AND. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
3-3-4 AND NOT: AND NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
3-3-5 OR: OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
3-3-6 OR NOT: OR NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
3-3-7 AND LOAD: AND LD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
3-3-8 OR LOAD: OR LD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
3-3-9 Instrucciones de refresco diferencial e inmmediato . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
3-3-10 Temporizacin de operacin para instrucciones de E/S . . . . . . . . . . . . . . . . . . . . . . . . . 170
3-3-11 Bits TR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
3-3-12 NOT: NOT(520) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
3-3-13 CONDITION ON/OFF: UP(521) y DOWN(522) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
3-3-14 BIT TEST: TST(350) y TSTN(351) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
3-4 Instrucciones de la salida de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
3-4-1 OUTPUT: OUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
3-4-2 OUTPUT NOT: OUT NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
3-4-3 KEEP: KEEP(011) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
3-4-4 DIFFERENTIATE UP/DOWN: DIFU(013) y DIFD(014) . . . . . . . . . . . . . . . . . . . . . . 184
3-4-5 SET y RESET: SET y RSET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
3-4-6 MULTIPLE BIT SET/RESET: SETA(530)/RSTA(531) . . . . . . . . . . . . . . . . . . . . . . . . 189
3-4-7 SINGLE BIT SET/RESET: SETB(532)/RSTB(533) . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
3-4-8 SINGLE BIT OUTPUT: OUTB(534) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
3-5 Instrucciones del control de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
3-5-1 END: END(001) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
3-5-2 NO OPERATION: NOP(000). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
3-5-3 Resumen de instrucciones de enclavamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
3-5-4 INTERLOCK e INTERLOCK CLEAR: IL(002) e ILC(003) . . . . . . . . . . . . . . . . . . . . 201
3-5-5 MULTI-INTERLOCK DIFFERENTIATION HOLD,
MULTI-INTERLOCK DIFFERENTIATION RELEASE, y
MULTI-INTERLOCK CLEAR: MILH(517), MILR(518) y MILC(519) . . . . . . . . . . . 205
3-5-6 JUMP y JUMP END: JMP(004) y JME(005) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
3-5-7 CONDITIONAL JUMP: CJP(510)/CJPN(511) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
3-5-8 MULTIPLE JUMP y JUMP END: JMP0(515) y JME0(516) . . . . . . . . . . . . . . . . . . . . 227
3-5-9 FOR-NEXT LOOPS: FOR(512)/NEXT(513) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
3-5-10 BREAK LOOP: BREAK(514) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
3-6 Instrucciones de temporizador y contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
3-6-1 TIMER: TIM/TIMX(550) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
3-6-2 HIGH-SPEED TIMER: TIMH(015)/TIMHX(551) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
3-6-3 ONE-MS TIMER: TMHH(540)/TMHHX(552). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
3-6-4 ACCUMULATIVE TIMER: TTIM(087)/TTIMX(555) . . . . . . . . . . . . . . . . . . . . . . . . 247
3-6-5 LONG TIMER: TIML(542)/TIMLX(553). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
3-6-6 MULTI-OUTPUT TIMER: MTIM(543)/MTIMX(554) . . . . . . . . . . . . . . . . . . . . . . . . 254

141
3-6-7 COUNTER: CNT/CNTX(546). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
3-6-8 REVERSIBLE COUNTER: CNTR(012)/CNTRX(548) . . . . . . . . . . . . . . . . . . . . . . . . 263
3-6-9 RESET TIMER/COUNTER: CNR(545)/CNRX(547). . . . . . . . . . . . . . . . . . . . . . . . . . 267
3-6-10 Aplicaciones de ejemplo de temporizador y contador . . . . . . . . . . . . . . . . . . . . . . . . . . 269
3-6-11 Direccionamiento indirecto de nmeros de Temporizador/Contador. . . . . . . . . . . . . . . 272
3-7 Instrucciones de comparacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
3-7-1 Instrucciones de comparacin de entrada (300 hasta 328) . . . . . . . . . . . . . . . . . . . . . . . 275
3-7-2 Instrucciones de comparacin de tiempo (341 hasta 346) . . . . . . . . . . . . . . . . . . . . . . . 281
3-7-3 COMPARE: CMP(020) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
3-7-4 DOUBLE COMPARE: CMPL(060) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
3-7-5 SIGNED BINARY COMPARE: CPS(114) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
3-7-6 DOUBLE SIGNED BINARY COMPARE: CPSL(115) . . . . . . . . . . . . . . . . . . . . . . . . 296
3-7-7 MULTIPLE COMPARE: MCMP(019) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
3-7-8 TABLE COMPARE: TCMP(085) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
3-7-9 BLOCK COMPARE: BCMP(068). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
3-7-10 EXPANDED BLOCK COMPARE: BCMP2(502). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
3-7-11 AREA RANGE COMPARE: ZCP(088). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
3-7-12 DOUBLE AREA RANGE COMPARE: ZCPL(116). . . . . . . . . . . . . . . . . . . . . . . . . . . 313
3-8 Instrucciones de transferencia de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
3-8-1 MOVE: MOV(021). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
3-8-2 MOVE NOT: MVN(022) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
3-8-3 DOUBLE MOVE: MOVL(498) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
3-8-4 DOUBLE MOVE NOT: MVNL(499) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
3-8-5 MOVE BIT: MOVB(082). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
3-8-6 MOVE DIGIT: MOVD(083) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
3-8-7 MULTIPLE BIT TRANSFER: XFRB(062). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
3-8-8 BLOCK TRANSFER: XFER(070) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
3-8-9 BLOCK SET: BSET(071) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
3-8-10 DATA EXCHANGE: XCHG(073) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
3-8-11 DOUBLE DATA EXCHANGE: XCGL(562) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
3-8-12 SINGLE WORD DISTRIBUTE: DIST(080) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
3-8-13 DATA COLLECT: COLL(081) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
3-8-14 MOVE TO REGISTER: MOVR(560) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
3-8-15 MOVE TIMER/COUNTER PV TO REGISTER: MOVRW(561). . . . . . . . . . . . . . . . . 342
3-9 Instrucciones de desplazamiento de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
3-9-1 SHIFT REGISTER: SFT(010) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
3-9-2 REVERSIBLE SHIFT REGISTER: SFTR(084) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
3-9-3 ASYNCHRONOUS SHIFT REGISTER: ASFT(017). . . . . . . . . . . . . . . . . . . . . . . . . . 349
3-9-4 WORD SHIFT: WSFT(016). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
3-9-5 ARITHMETIC SHIFT LEFT: ASL(025). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
3-9-6 DOUBLE SHIFT LEFT: ASLL(570). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
3-9-7 ARITHMETIC SHIFT RIGHT: ASR(026) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
3-9-8 DOUBLE SHIFT RIGHT: ASRL(571) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
3-9-9 ROTATE LEFT: ROL(027). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
3-9-10 DOUBLE ROTATE LEFT: ROLL(572) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
3-9-11 ROTATE RIGHT: ROR(028) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
3-9-12 DOUBLE ROTATE RIGHT: RORL(573) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
3-9-13 ROTATE LEFT WITHOUT CARRY: RLNC(574) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
3-9-14 DOUBLE ROTATE LEFT WITHOUT CARRY: RLNL(576). . . . . . . . . . . . . . . . . . . . 369
3-9-15 ROTATE RIGHT WITHOUT CARRY: RRNC(575) . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
3-9-16 DOUBLE ROTATE RIGHT WITHOUT CARRY: RRNL(577) . . . . . . . . . . . . . . . . . . 372
3-9-17 ONE DIGIT SHIFT LEFT: SLD(074) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
3-9-18 ONE DIGIT SHIFT RIGHT: SRD(075). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
3-9-19 SHIFT N-BIT DATA LEFT: NSFL(578) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
3-9-20 SHIFT N-BIT DATA RIGHT: NSFR(579). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
3-9-21 SHIFT N-BITS LEFT: NASL(580) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
3-9-22 DOUBLE SHIFT N-BITS LEFT: NSLL(582) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384

142
3-9-23 SHIFT N-BITS RIGHT: NASR(581) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
3-9-24 DOUBLE SHIFT N-BITS RIGHT: NSRL(583) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
3-10 Instrucciones de aumento/disminucin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
3-10-1 INCREMENT BINARY: ++(590) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
3-10-2 DOUBLE INCREMENT BINARY: ++L(591) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
3-10-3 DECREMENT BINARY: (592). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
3-10-4 DOUBLE DECREMENT BINARY: L(593). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
3-10-5 INCREMENT BCD: ++B(594) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
3-10-6 DOUBLE INCREMENT BCD: ++BL(595) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
3-10-7 DECREMENT BCD: B(596) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
3-10-8 DOUBLE DECREMENT BCD: BL(597). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
3-11 Instrucciones matemticas de smbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
3-11-1 SIGNED BINARY ADD WITHOUT CARRY: +(400) . . . . . . . . . . . . . . . . . . . . . . . . . 410
3-11-2 DOUBLE SIGNED BINARY ADD WITHOUT CARRY: +L(401) . . . . . . . . . . . . . . . 412
3-11-3 SIGNED BINARY ADD WITH CARRY: +C(402). . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
3-11-4 DOUBLE SIGNED BINARY ADD WITH CARRY: +CL(403) . . . . . . . . . . . . . . . . . . 416
3-11-5 BCD ADD WITHOUT CARRY: +B(404). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
3-11-6 DOUBLE BCD ADD WITHOUT CARRY: +BL(405) . . . . . . . . . . . . . . . . . . . . . . . . . 419
3-11-7 BCD ADD WITH CARRY: +BC(406) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
3-11-8 DOUBLE BCD ADD WITH CARRY: +BCL(407). . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
3-11-9 SIGNED BINARY SUBTRACT WITHOUT CARRY: (410) . . . . . . . . . . . . . . . . . . . 424
3-11-10 DOUBLE SIGNED BINARY SUBTRACT WITHOUT CARRY: L(411) . . . . . . . . . 426
3-11-11 SIGNED BINARY SUBTRACT WITH CARRY: C(412) . . . . . . . . . . . . . . . . . . . . . . 430
3-11-12 DOUBLE SIGNED BINARY SUBTRACT WITH CARRY: CL(413) . . . . . . . . . . . . 432
3-11-13 BCD SUBTRACT WITHOUT CARRY: B(414) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
3-11-14 DOUBLE BCD SUBTRACT WITHOUT CARRY: BL(415) . . . . . . . . . . . . . . . . . . . 436
3-11-15 BCD SUBTRACT WITH CARRY: BC(416). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
3-11-16 DOUBLE BCD SUBTRACT WITH CARRY: BCL(417) . . . . . . . . . . . . . . . . . . . . . . 441
3-11-17 SIGNED BINARY MULTIPLY: *(420). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
3-11-18 DOUBLE SIGNED BINARY MULTIPLY: *L(421) . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
3-11-19 UNSIGNED BINARY MULTIPLY: *U(422) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
3-11-20 DOUBLE UNSIGNED BINARY MULTIPLY: *UL(423). . . . . . . . . . . . . . . . . . . . . . . 449
3-11-21 BCD MULTIPLY: *B(424). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
3-11-22 DOUBLE BCD MULTIPLY: *BL(425). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
3-11-23 SIGNED BINARY DIVIDE: /(430) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
3-11-24 DOUBLE SIGNED BINARY DIVIDE: /L(431) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
3-11-25 UNSIGNED BINARY DIVIDE: /U(432) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
3-11-26 DOUBLE UNSIGNED BINARY DIVIDE: /UL(433). . . . . . . . . . . . . . . . . . . . . . . . . . 460
3-11-27 BCD DIVIDE: /B(434). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
3-11-28 DOUBLE BCD DIVIDE: /BL(435) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
3-12 Instrucciones de conversin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
3-12-1 BCD-TO-BINARY: BIN(023) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
3-12-2 DOUBLE BCD-TO-DOUBLE BINARY: BINL(058) . . . . . . . . . . . . . . . . . . . . . . . . . . 467
3-12-3 BINARY-TO-BCD: BCD(024). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
3-12-4 DOUBLE BINARY-TO-DOUBLE BCD: BCDL(059) . . . . . . . . . . . . . . . . . . . . . . . . . 470
3-12-5 2S COMPLEMENT: NEG(160) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
3-12-6 DOUBLE 2S COMPLEMENT: NEGL(161) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
3-12-7 16-BIT TO 32-BIT SIGNED BINARY: SIGN(600) . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
3-12-8 DATA DECODER: MLPX(076) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
3-12-9 DATA ENCODER: DMPX(077) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
3-12-10 ASCII CONVERT: ASC(086) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
3-12-11 ASCII TO HEX: HEX(162) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
3-12-12 COLUMN TO LINE: LINE(063). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
3-12-13 LINE TO COLUMN: COLM(064) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
3-12-14 SIGNED BCD-TO-BINARY: BINS(470) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
3-12-15 DOUBLE SIGNED BCD-TO-BINARY: BISL(472) . . . . . . . . . . . . . . . . . . . . . . . . . . . 502
3-12-16 SIGNED BINARY-TO-BCD: BCDS(471). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505

143
3-12-17 DOUBLE SIGNED BINARY-TO-BCD: BDSL(473) . . . . . . . . . . . . . . . . . . . . . . . . . . 507
3-12-18 GRAY CODE CONVERT: GRY (474) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
3-13 Instrucciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
3-13-1 LOGICAL AND: ANDW(034) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
3-13-2 DOUBLE LOGICAL AND: ANDL(610) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
3-13-3 LOGICAL OR: ORW(035) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
3-13-4 DOUBLE LOGICAL OR: ORWL(611). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522
3-13-5 EXCLUSIVE OR: XORW(036). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524
3-13-6 DOUBLE EXCLUSIVE OR: XORL(612). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526
3-13-7 EXCLUSIVE NOR: XNRW(037) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
3-13-8 DOUBLE EXCLUSIVE NOR: XNRL(613) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
3-13-9 COMPLEMENT: COM(029) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
3-13-10 DOUBLE COMPLEMENT: COML(614) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
3-14 Instrucciones matemticas especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
3-14-1 BINARY ROOT: ROTB(620). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
3-14-2 BCD SQUARE ROOT: ROOT(072). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
3-14-3 ARITHMETIC PROCESS: APR(069). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
3-14-4 FLOATING POINT DIVIDE: FDIV(079) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552
3-14-5 BIT COUNTER: BCNT(067). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556
3-15 Instrucciones matemticas de coma flotante. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
3-15-1 FLOATING TO 16-BIT: FIX(450). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
3-15-2 FLOATING TO 32-BIT: FIXL(451) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
3-15-3 16-BIT TO FLOATING: FLT(452) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
3-15-4 32-BIT TO FLOATING: FLTL(453) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568
3-15-5 FLOATING-POINT ADD: +F(454). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570
3-15-6 FLOATING-POINT SUBTRACT: F(455) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
3-15-7 FLOATING-POINT MULTIPLY: *F(456) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574
3-15-8 FLOATING-POINT DIVIDE: /F(457). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576
3-15-9 DEGREES TO RADIANS: RAD(458) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578
3-15-10 RADIANS TO DEGREES: DEG(459) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
3-15-11 SINE: SIN(460) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
3-15-12 COSINE: COS(461) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583
3-15-13 TANGENT: TAN(462) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585
3-15-14 ARC SINE: ASIN(463) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587
3-15-15 ARC COSINE: ACOS(464) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589
3-15-16 ARC TANGENT: ATAN(465) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
3-15-17 SQUARE ROOT: SQRT(466) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593
3-15-18 EXPONENT: EXP(467) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595
3-15-19 LOGARITHM: LOG(468) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597
3-15-20 EXPONENTIAL POWER: PWR(840) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599
3-15-21 Instrucciones de comparacin de coma flotante de precisin simple. . . . . . . . . . . . . . . 600
3-15-22 FLOATING-POINT TO ASCII: FSTR(448) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604
3-15-23 ASCII TO FLOATING-POINT: FVAL(449) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
3-16 Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) . . . 613
3-16-1 DOUBLE FLOATING TO 16-BIT: FIXD(841). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620
3-16-2 DOUBLE FLOATING TO 32-BIT: FIXLD(842) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
3-16-3 16-BIT TO DOUBLE FLOATING: DBL(843) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623
3-16-4 32-BIT TO DOUBLE FLOATING: DBLL(844) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624
3-16-5 DOUBLE FLOATING-POINT ADD: +D(845) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626
3-16-6 DOUBLE FLOATING-POINT SUBTRACT: D(846) . . . . . . . . . . . . . . . . . . . . . . . . . 628
3-16-7 DOUBLE FLOATING-POINT MULTIPLY: *D(847). . . . . . . . . . . . . . . . . . . . . . . . . . 630
3-16-8 DOUBLE FLOATING-POINT DIVIDE: /D(848) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632
3-16-9 DOUBLE DEGREES TO RADIANS: RADD(849) . . . . . . . . . . . . . . . . . . . . . . . . . . . 634
3-16-10 DOUBLE RADIANS TO DEGREES: DEGD(850) . . . . . . . . . . . . . . . . . . . . . . . . . . . 636
3-16-11 DOUBLE SINE: SIND(851) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637
3-16-12 DOUBLE COSINE: COSD(852) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639
3-16-13 DOUBLE TANGENT: TAND(853) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641

144
3-16-14 DOUBLE ARC SINE: ASIND(854) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
3-16-15 DOUBLE ARC COSINE: ACOSD(855) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
3-16-16 DOUBLE ARC TANGENT: ATAND(856) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
3-16-17 DOUBLE SQUARE ROOT: SQRTD(857) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
3-16-18 DOUBLE EXPONENT: EXPD(858) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
3-16-19 DOUBLE LOGARITHM: LOGD(859) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
3-16-20 DOUBLE EXPONENTIAL POWER: PWRD(860) . . . . . . . . . . . . . . . . . . . . . . . . . . . 655
3-16-21 Instrucciones de entrada de coma flotante de doble precisin . . . . . . . . . . . . . . . . . . . . 657
3-17 Instrucciones de proceso de datos de tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 660
3-17-1 SET STACK: SSET(630) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666
3-17-2 PUSH ONTO STACK: PUSH(632) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669
3-17-3 FIRST IN FIRST OUT: FIFO(633) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672
3-17-4 LAST IN FIRST OUT: LIFO(634) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675
3-17-5 DIMENSION RECORD TABLE: DIM(631). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678
3-17-6 SET RECORD LOCATION: SETR(635) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681
3-17-7 GET RECORD NUMBER: GETR(636) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683
3-17-8 DATA SEARCH: SRCH(181) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685
3-17-9 SWAP BYTES: SWAP(637). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
3-17-10 FIND MAXIMUM: MAX(182) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689
3-17-11 FIND MINIMUM: MIN(183) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693
3-17-12 SUM: SUM(184) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697
3-17-13 FRAME CHECKSUM: FCS(180) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
3-17-14 STACK SIZE READ: SNUM(638) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704
3-17-15 STACK DATA READ: SREAD(639). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 707
3-17-16 STACK DATA OVERWRITE: SWRIT(640) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710
3-17-17 STACK DATA INSERT: SINS(641). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713
3-17-18 STACK DATA DELETE: SDEL(642) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
3-18 Instrucciones de control de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720
3-18-1 PID CONTROL: PID(190) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720
3-18-2 PID CONTROL WITH AUTOTUNING: PIDAT(191) . . . . . . . . . . . . . . . . . . . . . . . . . 731
3-18-3 LIMIT CONTROL: LMT(680) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 741
3-18-4 DEAD BAND CONTROL: BAND(681) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743
3-18-5 DEAD ZONE CONTROL: ZONE(682) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746
3-18-6 TIME-PROPORTIONAL OUTPUT: TPO (685) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 749
3-18-7 SCALING: SCL(194). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 757
3-18-8 SCALING 2: SCL2(486) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 762
3-18-9 SCALING 3: SCL3(487) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 766
3-18-10 AVERAGE: AVG(195) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769
3-19 Subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 773
3-19-1 SUBROUTINE CALL: SBS(091) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 773
3-19-2 MACRO: MCRO(099) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 779
3-19-3 SUBROUTINE ENTRY: SBN(092). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 783
3-19-4 SUBROUTINE RETURN: RET(093) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 786
3-19-5 GLOBAL SUBROUTINE CALL: GSBS(750) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 786
3-19-6 GLOBAL SUBROUTINE ENTRY: GSBN(751). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794
3-19-7 GLOBAL SUBROUTINE RETURN: GRET(752) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797
3-20 Instrucciones de control de interrupcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
3-20-1 SET INTERRUPT MASK: MSKS(690) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
3-20-2 READ INTERRUPT MASK: MSKR(692) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 804
3-20-3 CLEAR INTERRUPT: CLI(691) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809
3-20-4 DISABLE INTERRUPTS: DI(693) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 814
3-20-5 ENABLE INTERRUPTS: EI(694) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816
3-20-6 Resumen de control de interrupcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 818
3-21 Instrucciones de salida de impulsos/contador de alta velocidad. . . . . . . . . . . . . . . . . . . . . . . . . . 823
3-21-1 MODE CONTROL: INI(880) (slo CJ1M-CPU21/22/23) . . . . . . . . . . . . . . . . . . . . . . 823
3-21-2 HIGH-SPEED COUNTER PV READ: PRV(881) (slo CJ1M-CPU21/22/23) . . . . . . 827
3-21-3 COUNTER FREQUENCY CONVERT: PRV2(883). . . . . . . . . . . . . . . . . . . . . . . . . . . 833

145
3-21-4 REGISTER COMPARISON TABLE: CTBL(882) (slo CPUs CJ1M-CPU21/22/23) . 837
3-21-5 SPEED OUTPUT: SPED(885) (slo CPUs CJ1M-CPU21/22/23) . . . . . . . . . . . . . . . . 841
3-21-6 SET PULSES: PULS(886) (slo CPUs CJ1M-CPU21/22/23) . . . . . . . . . . . . . . . . . . . 846
3-21-7 PULSE OUTPUT: PLS2(887) (slo CPUs CJ1M-CPU21/22/23) . . . . . . . . . . . . . . . . . 849
3-21-8 ACCELERATION CONTROL: ACC(888) (slo CJ1M-CPU21/22/23) . . . . . . . . . . . . 855
3-21-9 ORIGIN SEARCH: ORG(889) (slo CJ1M-CPU21/22/23) . . . . . . . . . . . . . . . . . . . . . 862
3-21-10 PULSE WITH VARIABLE DUTY FACTOR: PWM(891) (slo CJ1M-CPU21/22/23) 865
3-22 Instrucciones de paso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 867
3-22-1 STEP DEFINE y STEP START: STEP(008)/SNXT(009) . . . . . . . . . . . . . . . . . . . . . . . 868
3-23 Instrucciones de Unidades de E/S bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
3-23-1 I/O REFRESH: IORF(097). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
3-23-2 7-SEGMENT DECODER: SDEC(078) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 888
3-23-3 DIGITAL SWITCH INPUT DSW(210) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890
3-23-4 TEN KEY INPUT TKY(211) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 896
3-23-5 HEXADECIMAL KEY INPUT HKY(212) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899
3-23-6 MATRIX INPUT: MTR (213) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904
3-23-7 7-SEGMENT DISPLAY OUTPUT 7SEG(214) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908
3-23-8 INTELLIGENT I/O READ: IORD(222) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 913
3-23-9 INTELLIGENT I/O WRITE: IOWR(223) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 917
3-23-10 CPU BUS UNIT I/O REFRESH: DLNK(226) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921
3-24 Instrucciones de comunicaciones serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926
3-24-1 Comunicaciones serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926
3-24-2 PROTOCOL MACRO: PMCR(260) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928
3-24-3 TRANSMIT: TXD(236) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937
3-24-4 RECEIVE: RXD(235) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944
3-24-5 TRANSMIT VIA SERIAL COMMUNICATIONS UNIT: TXDU(256). . . . . . . . . . . . 952
3-24-6 RECEIVE VIA SERIAL COMMUNICATIONS UNIT: RXDU(255) . . . . . . . . . . . . . 960
3-24-7 CHANGE SERIAL PORT SETUP: STUP(237) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968
3-25 Instrucciones de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973
3-25-1 Acerca de las operaciones SYSMAC NET Link/SYSMAC LINK . . . . . . . . . . . . . . . . 973
3-25-2 Instrucciones de mensaje explcito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 986
3-25-3 NETWORK SEND: SEND(090) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 991
3-25-4 NETWORK RECEIVE: RECV(098) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997
3-25-5 DELIVER COMMAND: CMND(490) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1003
3-25-6 EXPLICIT MESSAGE SEND: EXPLT (720) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1013
3-25-7 EXPLICIT GET ATTRIBUTE: EGATR (721) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1021
3-25-8 EXPLICIT SET ATTRIBUTE: ESATR (722) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028
3-25-9 EXPLICIT WORD READ: ECHRD (723) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034
3-25-10 EXPLICIT WORD WRITE: ECHWR (724) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1038
3-26 Instrucciones de memoria de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1042
3-26-1 Precauciones al utilizar tarjetas de memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1042
3-26-2 READ DATA FILE: FREAD(700) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1045
3-26-3 WRITE DATA FILE: FWRIT(701) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1052
3-27 Instrucciones de visualizacin: DISPLAY MESSAGE: MSG(046) . . . . . . . . . . . . . . . . . . . . . . . 1058
3-28 Instrucciones de reloj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1061
3-28-1 CALENDAR ADD: CADD(730) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1061
3-28-2 CALENDAR SUBTRACT: CSUB(731) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1065
3-28-3 HOURS TO SECONDS: SEC(065) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1068
3-28-4 SECONDS TO HOURS: HMS(066) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1070
3-28-5 CLOCK ADJUSTMENT: DATE(735). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073
3-29 Instrucciones de depuracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075
3-29-1 Muestreo de memoria de seguimiento: TRSM(045) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075
3-30 Instrucciones de diagnstico de fallo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1079
3-30-1 FAILURE ALARM: FAL(006) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1079
3-30-2 SEVERE FAILURE ALARM: FALS(007) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1087
3-30-3 FAILURE POINT DETECTION: FPD(269) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1095

146
3-31 Otras instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104
3-31-1 SET CARRY: STC(040) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104
3-31-2 CLEAR CARRY: CLC(041) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105
3-31-3 SELECT EM BANK: EMBC(281) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1106
3-31-4 EXTEND MAXIMUM CYCLE TIME: WDT(094) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108
3-31-5 SAVE CONDITION FLAGS: CCS(282) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1110
3-31-6 LOAD CONDITION FLAGS: CCL(283) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1112
3-31-7 CONVERT ADDRESS FROM CV: FRMCV(284) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1113
3-31-8 CONVERT ADDRESS TO CV: TOCV(285) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117
3-31-9 DISABLE PERIPHERAL SERVICING: IOSP(287) (slo CS1-H/CJ1-H/CJ1M) . . . . 1121
3-31-10 ENABLE PERIPHERAL SERVICING: IORS(288) (slo CS1-H/CJ1-H/CJ1M). . . . . 1123
3-32 Instrucciones de programacin de bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1124
3-32-1 introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1124
3-32-2 BLOCK PROGRAM BEGIN/END: BPRG(096)/BEND(801) . . . . . . . . . . . . . . . . . . . 1128
3-32-3 BLOCK PROGRAM PAUSE/RESTART: BPPS(811)/BPRS(812) . . . . . . . . . . . . . . . . 1131
3-32-4 Bifurcacin: IF(802), ELSE(803) y IEND(804). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1133
3-32-5 CONDITIONAL BLOCK EXIT (NOT): EXIT (NOT)(806). . . . . . . . . . . . . . . . . . . . . 1137
3-32-6 ONE CYCLE AND WAIT (NOT): WAIT(805)/WAIT(805) NOT . . . . . . . . . . . . . . . . 1140
3-32-7 TIMER WAIT: TIMW(813) y TIMWX(816). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1144
3-32-8 COUNTER WAIT: CNTW(814) y CNTWX(818). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1147
3-32-9 HIGH-SPEED TIMER WAIT: TMHW(815) y TMHWX(817). . . . . . . . . . . . . . . . . . . 1150
3-32-10 Control de lazo: LOOP(809)/LEND(810)/LEND(810) NOT . . . . . . . . . . . . . . . . . . . . 1153
3-33 Instrucciones de procesamiento de cadenas de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158
3-33-1 Resumen de proceso de cadenas de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158
3-33-2 MOV STRING: MOV$(664) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1159
3-33-3 CONCATENATE STRING: +$(656) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1161
3-33-4 GET STRING LEFT: LEFT$(652) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1164
3-33-5 GET STRING RIGHT: RGHT$(653) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1166
3-33-6 GET STRING MIDDLE: MID$(654) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1168
3-33-7 FIND IN STRING: FIND$(660) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1171
3-33-8 STRING LENGTH: LEN$(650) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1173
3-33-9 REPLACE IN STRING: RPLC$(661) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1175
3-33-10 DELETE STRING: DEL$(658) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1178
3-33-11 EXCHANGE STRING: XCHG$(665). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1180
3-33-12 CLEAR STRING: CLR$(666) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1182
3-33-13 INSERT INTO STRING: INS$(657) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1184
3-33-14 Instrucciones de comparacin de cadenas (670 hasta 675) . . . . . . . . . . . . . . . . . . . . . . 1187
3-34 Instrucciones de control de tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192
3-34-1 TASK ON: TKON(820) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192
3-34-2 TASK OFF: TKOF(821). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1196
3-35 Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) . . . . . . . . . . . . . . . . . . . . 1199
3-35-1 BLOCK TRANSFER: XFERC(565) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1201
3-35-2 SINGLE WORD DISTRIBUTE: DISTC(566) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1203
3-35-3 DATA COLLECT: COLLC(567) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1206
3-35-4 MOVE BIT: MOVBC(568) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1211
3-35-5 BIT COUNTER: BCNTC(621) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1212
3-35-6 GET VARIABLE ID: GETID(286) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1214

147
Notacin y presentacin de las descripciones de las instrucciones Seccin 3-1

3-1 Notacin y presentacin de las descripciones de las


instrucciones
Las instrucciones se describen en grupos segn su funcin. Consulte en la
2-3 Lista alfabtica de instrucciones por nemnico una relacin de instruccio-
nes ordenadas segn los nemnicos con el nmero de pgina en la que se
encuentra cada instruccin en esta seccin.
La descripcin de cada instruccin se organiza tal y como se describe en la
siguiente tabla.
Elemento Contenido
Nombre y nemnico La cabecera de cada seccin consiste en el nombre de la instruccin seguido del
nemnico con el cdigo de funcin entre parntesis. Ejemplo: MOVE BIT: MOVB(082)
Empleo El uso bsico de la instruccin se describe tras la cabecera de la seccin.
Smbolo de diagrama de rels y Se muestra el smbolo de diagrama de rels utilizado para representar la instruccin en el
nombres de operandos CX-Programmer, como en el ejemplo para la instruccin MOVE BIT que se da a continuacin.
Con el smbolo de diagrama de rels se proporciona tambin el nombre de cada operando.

MOVB(082)

S S: Canal o datos fuente

C C: Canal de control

D D: Canal de destino

Variaciones Variaciones Las variaciones que pueden usarse para controlar la ejecucin de la instruccin bajo
condiciones especiales se dan usando la forma nemnica. Cualquier variacin no
soportada por una instruccin se indica como "Incompatible" (Not supported).
Se ejecuta en cada ciclo con condicin ON: La instruccin se ejecuta siempre
que reciba una condicin de ejecucin en ON.
Se ejecuta una vez en el diferencial ascendente: La instruccin se ejecuta du-
rante el siguiente ciclo slo despus de que haya cambiado la condicin de eje-
cucin de OFF a ON.
Se ejecuta una vez en el diferencial descendente: La instruccin se ejecuta du-
rante el siguiente ciclo slo despus de que haya cambiado la condicin de eje-
cucin de ON a OFF.
Se ejecuta siempre: La instruccin no requiere una condicin de ejecucin y se
ejecuta cada ciclo.
Crea una condicin ON...: La instruccin se ejecuta cada ciclo para crear una
condicin de ejecucin para la siguiente instruccin.

Variaciones Se ejecuta en cada ciclo con condicin MOVB(082)


ON
Variaciones Variaciones Se ejecuta una vez en el diferencial @MOVB(082)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente

Especificacin Puede especificarse el refresco inmediato para algunas instrucciones para refrescar
de refresco la E/S cuando se ejecuta la instruccin. Si el refresco inmediato es compatible, la
inmediato especificacin se da mediante la forma nemnica. Si el refresco inmediato no es
compatible con una instruccin, se indica "Incompatible.

Especificacin de refresco inmediato Incompatible

reas de programa aplicables Se especifican las reas de programa en las que la instruccin puede utilizarse.
OK indica las reas en las que puede utilizarse la instruccin.

reas de pro- reas de pro- Subrutinas Tareas de


grama de bloques grama de pasos interrupcin
OK OK OK OK

148
Notacin y presentacin de las descripciones de las instrucciones Seccin 3-1

Elemento Contenido
Operandos Cuando sea necesario, se da el significado de los canales y bits utilizados en
operandos especficos, como en canales de control.
15 8 7 0
C m n

Bit fuente: 00 a 0F
(0 a 15 decimal)
Bit de destino: 00 a 0F
(0 a 15 decimal)

Especificaciones del operando Las direcciones de las reas de memoria que pueden utilizarse para cada operando
se relacionan en una tabla como la siguiente. Los caracteres utilizados en las cabe-
ceras de las columnas a la izquierda son las mismas que las utilizadas en el smbolo
de diagrama de rels. --- se utiliza para indicar cundo en rea no puede especifi-
carse para un operando.

rea S C D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea bit de Retencin H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767

Descripcin Se describe la funcin de la instruccin y los operandos utilizados en la instruccin.


Indicadores La tabla de indicadores indica el estado de los indicadores de condicin inmediata-
mente despus de la ejecucin de la instruccin. Los indicadores no listados no
estn afectados por la instruccin. OFF indica que un indicador se pone en OFF
inmediatamente despus de la ejecucin de la instruccin sin tener en consideracin
los resultados de la ejecucin de la instruccin.

Nombre Etiqueta Operacin


Indicador de error ER ON si los datos de control estn dentro de
los rangos.
OFF en el resto de los casos.
Indicador de igual = OFF
Indicador de N OFF
negativo

Precauciones Se facilitan las precauciones especiales a tener en cuenta para utilizar la instruccin.
Asegrese de leer y seguir estas precauciones.
Ejemplo Se facilita un ejemplo de la utilizacin de la instruccin con operandos especficos
para explicar en ms profundidad la funcin de la instruccin.

Constantes La introduccin de constantes para operandos se realiza como se muestra a


continuacin.
Descripciones y especificaciones de operandos
Operandos que especifican cadenas de bits (normalmente introducidos
como hexadecimal):
Slo se da la forma hexadecimal para operandos que especifican cade-
nas de bits, p. ej. slo se especifica #0000 a #FFFF como el operando S
para la instruccin MOV(021). No obstante, en CX-Programmer, pueden
introducirse cadenas de bits en forma decimal utilizando el prefijo "&".
Operandos que especifican valores numricos (normalmente introduci-
dos como decimal, incluyendo nmeros de salto):
Se dan las formas decimal y hexadecimal para operandos que especifi-

149
Notacin y presentacin de las descripciones de las instrucciones Seccin 3-1

can valores numricos, p. ej., #0000 a #FFFF y &0 a &65535 para el


operando N para la instruccin XFER(070).
Operandos que indican nmeros de control (excepto nmeros de salto):
Se da la forma decimal para nmeros de control, p. ej., se da 0 a 1023
para el operando N para la instruccin SBS(091).
Ejemplos
En los ejemplos se dan las constantes utilizando la notacin de CX-Program-
mer, p. ej., los operandos que especifican valores numricos se dan en forma
decimal con un prefijo "&", como se muestra en el siguiente ejemplo.

XFER
&10
D00100
D00200

En la siguiente tabla se indican los mtodos de introduccin para constantes


para dispositivos de programacin.
Operando CX- Consola de programacin
Programmer
Operandos que Introduccin Puede pulsarse la tecla Cont/# para introducir
especifican cadenas como deci- valores decimales de forma perdeterminada
de bits (normal- mal con un con un prefijo #. Posteriormente puede pul-
mente introducidos prefijo "&" o sarse la tecla CHG para alternar entre hexa-
como hexadecimal) como hexa- decimal (con prefijo #), decimal con signo (con
Operandos que decinal con +/) y decimal sin signo (con prefijo &),
especifican valores un prefijo "#".
numricos (normal- (Vase la
mente introducidos nota.)
como decimal)
Operandos que Introducidos Introducidos directamente en forma decimal.
indican nmeros de como deci- Si se aade automticamente el prefijo &,
control (excepto mal con un puede pulsarse la tecla CHG para alternar
nmeros de salto) prefijo #. entre decimal sin signo (con prefijo &), hexa-
(Vase la decimal (con prefijo #) y decimal sin signo
nota.) (con prefijo +/)
Si no se visualiza prefijo, el valor debe
introducirse en forma decimal.

Nota Cuando se introducen operandos en CX-Programmer, se visualizan los ran-


gos de introduccin junto con los prefijos apropiados.

Indicadores de condicin En esta seccin se utilizan etiquetas de la consola de programacin para indi-
cadores de condicin. Con CX-Programmer, los indicadores de condicin se
registran por adelantado como smbolos globales con P_ delante del nom-
bre del smbolo.
Indicador Etiqueta de consola de Etiqueta de CX-Programmer
programacin
Indicador de ER P_ER
error
Indicador de AER P_AER
error de acceso
Indicador de CY P_CY
acarreo
Indicador de > P_GT
mayor que
Indicador de = P_EQ
igual

150
Actualizacin de instrucciones y Nuevas instrucciones Seccin 3-2

Indicador Etiqueta de consola de Etiqueta de CX-Programmer


programacin
Indicador de < P_LT
menor que
Indicador de N P_N
negativo
Indicador de OF P_OF
desbordamiento
Indicador de UF P_UF
subdesborda-
miento
Indicador de >= P_GE
mayor o igual
que
Indicador de <> P_NE
distinto de
Indicador de <= P_LE
menor o igual
que
Indicador de ON P_On
siempre ON
Indicador de OFF P_Off
siempre OFF

3-2 Actualizacin de instrucciones y Nuevas instrucciones


En esta seccin se relacionan las actualizaciones de instrucciones para las
CPUs CS1 con el sufijo -EV1 y las CPUs CS1-H/CJ1-H CPU.

3-2-1 Actualizaciones para CPUs de la serie CS versin-1


Se han actualizado las siguientes instrucciones para las CPUs versin-1.
Para acceder a una informacin ms detallada, consulte el nmero de pgina
facilitado.
Las funciones soportadas slo por las CPUs versin-1 CPU se indican con
(-EV1 solamente)
Nombre Nemnico Cdigo de Funcin Actualizacin Pgina
funcin
READ DATA FILE FREAD 700 Ahora se soportan los El contenido de los datos de 1045
WRITE DATA FILE FWRIT 701 formatos de datos CSV y control ha sido modificado 1052
texto (.txt). aadiendo especificaciones
(Anteriormente slo se de formato de datos, de pre-
soportaban datos binarios). sencia de retornos de carro y
de posicin de retornos de
carro.
DELIVER COMMAND CMND 490 La CPU puede ahora enviar Se ha aadido la posibilidad 1003
comandos FINS a s misma. de enviar un comando FINS
(Anteriormente esto no era a la CPU ejecutando
posible). CMND(490).

3-2-2 Actualizaciones para CPUs CS1-H/CJ1-H


Nuevas instrucciones Se han aadido las siguientes instrucciones a las CPUs CS1-H y CJ1-H.
Instrucciones de la salida de secuencia
SINGLE BIT SET, SETB(532)
SINGLE BIT RESET, RSTB(533)
SINGLE BIT OUTPUT, OUTB(534)
Instrucciones de comparacin de datos
AREA RANGE COMPARE, ZCP(088)
DOUBLE AREA RANGE COMPARE, ZCPL(116)

151
Actualizacin de instrucciones y Nuevas instrucciones Seccin 3-2

Instrucciones de clculo y conversin en coma flotante


Instrucciones de comparacin de datos en coma flotante: =F, <>F, <F, <=F, >F, and
>=F (329 a 334)
FLOATING POINT TO ASCII, FSTR(448)
ASCII TO FLOATING POINT, VAL(449)
Instrucciones de clculo y conversin en coma flotante de doble
precisin
Instrucciones de comparacin de doble precisin: =D, <>D, <D, <=D, >D, y >=D
(335 a 340)
DOUBLE FLOATING TO 16-BIT BINARY, FIXD(841)
DOUBLE FLOATING TO 32-BIT BINARY, FIXLD(8420)
16-BIT BINARY TO DOUBLE FLOATING, DBL(843)
32-BIT BINARY TO DOUBLE FLOATING, DBLL(844)
DOUBLE FLOATING-POINT ADD, +D(845)
DOUBLE FLOATING-POINT SUBTRACT, D(846)
DOUBLE FLOATING-POINT MULTIPLY, *D(847)
DOUBLE FLOATING-POINT DIVIDE, /D(848)
DOUBLE DEGREES TO RADIANS, RADD(849)
DOUBLE RADIANS TO DEGREES, DEGD(850)
DOUBLE SINE, SIND(851)
DOUBLE COSINE, COSD(852)
DOUBLE TANGENT, TAND(853)
DOUBLE ARC SINE, ASIND(854)
DOUBLE ARC COSINE, ACOSD(855)
DOUBLE ARC TANGENT, ATAND(856)
DOUBLE SQUARE ROOT, SQRTD(857)
DOUBLE EXPONENT, EXPD(858)
DOUBLE LOGARITHM, LOGD(859)
DOUBLE EXPONENTIAL POWER, PWRD(860)
Instrucciones de proceso de datos de tabla
STACK SIZE READ, SNUM(638)
STACK DATA READ, SREAD(639)
STACK DATA WRITE, SWRIT(640)
STACK DATA INSERT, SINS(641)
STACK DATA DELETE, SDEL(642)
Instrucciones de control de datos
PID CONTROL WITH AUTOTUNING, PIDAT(191)
Instrucciones de subrutina
GLOBAL SUBROUTINE CALL, GSBS(750)
GLOBAL SUBROUTINE ENTRY, GSBN(751)
GLOBAL SUBROUTINE RETURN, GRET(752)
Instrucciones para Unidad de E/S
CPU BUS UNIT I/O REFRESH, DLNK(226)
Otras instrucciones
SAVE CONDITION FLAGS, CCS(282)
LOAD CONDITION FLAGS, CCL(283)
CONVERT ADDRESS FROM CV, FRMCV(284)
CONVERT ADDRESS TO CV, TOCV(285)
DISABLE PERIPHERAL SERVICING, IOSP(287)
ENABLE PERIPHERAL SERVICING, IORS(288)

Nuevas instrucciones Se han actaulizado las siguientes instrucciones para las CPUs CS1-H y CJ1-H.
Instrucciones matemticas especiales
ARITHMETIC PROCESS, APR(069)
Instrucciones de diagnstico de fallo
FAILURE ALARM, FAL(006)
SEVERE FAILURE ALARM, FALS(007)

152
Instrucciones de la entrada de secuencia Seccin 3-3

3-3 Instrucciones de la entrada de secuencia


3-3-1 LOAD: LD
Empleo Indica un inicio lgico y crea una condicin de ejecucin ON/OFF basada en
el estado ON/OFF del bit de operando especificado.

Smbolo de diagrama de Barra de bus Punto de inicio


rels de bloque

Variaciones
Variaciones Reinicia la lgica y crea ON en cada ciclo LD
cuando el bit de operando est en ON
Reinicia la lgica y crea ON una vez para @LD
diferencial ascendente
Reinicia la lgica y crea ON una vez para %LD
diferencial descendente
Especificacin de refresco inmediato (vase la nota). !LD
Variaciones Refresca el bit de entrada, reinicia la lgica y !@LD
combinadas crea ON una vez para diferencial ascendente
(vase la nota).
Refresca el bit de entrada, reinicia la lgica y !%LD
crea ON una vez para diferencial descendente
(vase la nota).

Nota Las CPUs CS1D para sistemas de CPU doble no admiten el refresco inmediato.

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Bit de operando LD
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A00000 hasta A95915
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea de indicador de TK0000 hasta TK0031
tarea
Indicadores de ER, CY, N, OF, UF, >, =, <, >=, <>, <=, A1, A0
condicin
Impulsos del reloj 0,02s, 0,1 s, 0,2 s, 1 s, 1 min
rea TR TR0 hasta TR15
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario

153
Instrucciones de la entrada de secuencia Seccin 3-3

rea Bit de operando LD


Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin LD se utiliza para el primer bit normalmente abierto de la barra de bus o para
el primer bit normalmente abierto de un bloque lgico. Si no hay especifica-
cin de refresco inmediato se lee el bit especificado en la memoria de E/S. Si
hay una especificacin de refresco inmediato, se lee y se utiliza el estado del
terminal de entrada de la Unidad de entrada bsica.
LD se utiliza en las siguientes circunstancias como una instruccin para indi-
car un inicio lgico.
Cundo se conecta directamente con la barra de bus.
Cuando se conectan bloques lgicos mediante AND LD u OR LD, p. ej., al
comienzo de un bloque lgico.
Las instrucciones AND LOAD y OR LOAD se utilizan para conectar en serie o
en paralelo bloques lgicos que comienzan por LD o LD NOT.
Se requiere al menos una instruccin LOAD o LOAD NOT para la condicin
de ejecucin cuando las instrucciones relacionadas con salida no pueden
conectarse directamente con la barra de bus. Si no hay instruccin LOAD o
LOAD NOT se producir un error de programacin en la comprobacin de
programa del dispositivo perifrico.
Cuando se conectan bloques lgicos mediante instrucciones AND LOAD u
OR LOAD, el nmero total de instrucciones AND LOAD/OR LOAD debe coin-
cidir con el nmero total de instrucciones LOAD/LOAD NOT menos 1. Si no
coinciden se producir un error de programacin. Si desea obtener ms deta-
lles, consulte 3-3-7 AND LOAD: AND LD y 3-3-8 OR LOAD: OR LD.

Indicadores No hay indicadores afectados por esta instruccin.

Precauciones Puede especificarse diferencial ascendente (@) o diferencial descendente


(%) para LD. Si se especifica diferencial ascendente (@), la condicin de eje-
cucin se pone en ON para un ciclo slo una vez que el estado del bit de ope-
rando cambie de OFF a ON. Si se especifica diferencial descendente (%), la
condicin de ejecucin se pone en ON para un ciclo slo una vez que el
estado del bit de operando cambie de ON a OFF.
Puede especificarse refresco inmediato (!) para LD. Una instruccin de
refresco inmediato actualiza el estado del bit de entrada justo antes de ejecu-
tar la instruccin para Unidades de entrada bsicas (pero no para Unidades
de entrada bsicas en bastidores esclavos o para Unidades de entrada multi-
punto C200H Grupo 2).
Para LD es posible combinar el refresco inmediato y diferencial ascendente o
descendente (!@ o !%). Si se especifica alguno de ellos, la entrada se
refresca desde la Unidad de entrada bsica justo antes de que se ejecute la
instruccin y la condicin de ejecucin se pone en ON para un ciclo sola-
mente una vez que el estado cambie de OFF a ON o de ON a OFF.

154
Instrucciones de la entrada de secuencia Seccin 3-3

Ejemplo

Instruccin Operando
AND LD
LD 000000 OR LD
LD 000001
LD 000002 OR LD
AND 000003
OR LD ---
AND LD ---
LD NOT 000004
AND 000005
OR LD ---
OUT 000100

3-3-2 LOAD NOT: LD NOT


Empleo Indica un inicio lgico y crea una condicin de ejecucin ON/OFF basada en
la inversin del estado ON/OFF del bit de operando especificado.

Smbolo de diagrama de Barra de bus Punto de inicio de bloque


rels

Variaciones
Variaciones Reinicia la lgica y crea ON en cada ciclo cuando el LD NOT
bit de operando est en OFF
Reinicia la lgica y crea ON una vez para diferencial @LD NOT
ascendente (vase la nota 1).
Reinicia la lgica y crea ON una vez para diferencial %LD NOT
descendente (vase la nota 1).
Especificacin de refresco inmediato (vase la nota 2). !LD NOT
Variaciones Refresca el bit de entrada, reinicia la lgica y crea !@LD NOT
combinadas ON una vez para diferencial ascendente (vase la
nota 3).
Refresca el bit de entrada, reinicia la lgica y crea !%LD NOT
ON una vez para diferencial descendente (vase la
nota 3).

Nota 1. Las siguientes variaciones slo son admitidas por las CPUs CS1-H, CJ1-H,
CJ1M o CS1D: @LD NOT, %LD NOT, !@LD NOT, y !%LD NOT.
2. Las CPUs CS1D para sistemas de CPU doble no admiten el refresco in-
mediato.
3. Las variaciones combinadas son soportadas por las CPUs CS1D para sis-
temas de CPU individual y las CPUs CS1-H, CJ1-H y CJ1M solamente.

155
Instrucciones de la entrada de secuencia Seccin 3-3

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Bit de operando LD NOT
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A00000 hasta A95915
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea de indicador de TK0000 hasta TK0031
tarea
Indicadores de ER, CY, N, OF, UF, >, =, <, >=, <>, <=, ON, OFF, AER
condicin
Impulsos del reloj 0,02 s, 0,1 s, 0,2 s, 1 s, 1 min
rea TR ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin LD NOTse utiliza para el primer bit normalmente cerrado de la barra de bus o
para el primer bit normalmente cerrado de un bloque lgico. Si no hay especi-
ficacin de refresco inmediato se lee e invierte el bit especificado en la memo-
ria de E/S. Si hay una especificacin de refresco inmediato, se lee, invierte y
utiliza el estado del terminal de entrada de la Unidad de entrada bsica.
LD NOT se utiliza en las siguientes circunstancias como una instruccin para
indicar un inicio lgico.
Cundo se conecta directamente con la barra de bus.
Cuando se conectan bloques lgicos mediante AND LD u OR LD. (Se uti-
liza al comienzo de un bloque lgico).
Las instrucciones AND LOAD y OR LOAD se utilizan para conectar en serie o
en paralelo bloques lgicos que comienzan por LD o LD NOT.
Se requiere al menos una instruccin LOAD o LOAD NOT para la condicin
de ejecucin cuando las instrucciones relacionadas con salida no pueden
conectarse directamente con la barra de bus. Si no hay instruccin LOAD o
LOAD NOT se producir un error de programacin en la comprobacin de
programa del dispositivo perifrico.
Cuando se conectan bloques lgicos mediante instrucciones AND LOAD u
OR LOAD, el nmero total de instrucciones AND LOAD/OR LOAD debe coin-

156
Instrucciones de la entrada de secuencia Seccin 3-3

cidir con el nmero total de instrucciones LOAD/LOAD NOT menos 1. Si no


coinciden se producir un error de programacin.

Indicadores No hay indicadores afectados por esta instruccin.

Precauciones Puede especificarse refresco inmediato (!) para LD NOT. Una instruccin de
refresco inmediato actualiza el estado del bit de entrada justo antes de ejecu-
tar la instruccin para Unidades de entrada bsicas (pero no para Unidades
de entrada bsicas en bastidores esclavos o para Unidades de entrada multi-
punto C200H Grupo 2).

Ejemplo

Instruccin Operando
LD 000000 AND LD
OR LD
LD 000001
LD 000002
AND 000003 OR LD
OR LD ---
AND LD ---
LD NOT 000004
AND 000005
OR LD ---
OUT 000100

3-3-3 AND: AND


Empleo Realiza una operacin AND lgica del estado del bit de operando especifi-
cado y la condicin de ejecucin actual.

Smbolo de diagrama de
rels
Variaciones
Variaciones Crea ON cada ciclo y el resultado de AND es ON AND
Crea ON una vez para diferencial ascendente @AND
Crea ON una vez para diferencial descendente %AND
Especificacin de refresco inmediato (vase la nota). !AND
Variaciones Refresca el bit de entrada y crea ON una vez !@AND
combinadas para diferencial ascendente (vase la nota).
Refresca el bit de entrada y crea ON una vez !%AND
para diferencial descendente (vase la nota).

Nota Las CPUs CS1D para sistemas de CPU doble no admiten el refresco inme-
diato.
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

157
Instrucciones de la entrada de secuencia Seccin 3-3

Especificaciones del
operando rea Bit de operando AND
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A00000 hasta A95915
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea de indicador de TK0000 hasta TK0031
tarea
Indicadores de ER, CY, N, OF, UF, >, =, <, >=, <>, <=, ON, OFF, AER
condicin
Impulsos del reloj 0,02 s, 0,1 s, 0,2 s, 1 s, 1 min
rea TR ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin AND se utiliza para un bit normalmente abierto conectado en serie. AND no
puede conectarse directamente a la barra de bus, y no puede utilizarse al
comienzo de un bloque lgico. Si no hay especificacin de refresco inmediato
se lee el bit especificado en la memoria de E/S. Si hay una especificacin de
refresco inmediato, se lee el estado del terminal de entrada de la Unidad de
entrada bsica.

Indicadores No hay indicadores afectados por esta instruccin.

Precauciones Puede especificarse diferencial ascendente (@) o diferencial descendente


(%) para AND. Si se especifica diferencial ascendente (@), la condicin de
ejecucin se pone en ON para un ciclo slo una vez que el estado del bit de
operando cambie de OFF a ON. Si se especifica diferencial descendente (%),
la condicin de ejecucin se pone en ON para un ciclo slo una vez que el
estado del bit de operando cambie de ON a OFF.
Puede especificarse refresco inmediato (!) para AND. Una instruccin de
refresco inmediato actualiza el estado del bit de entrada justo antes de ejecu-
tar la instruccin desde Unidades de entrada bsicas (pero no Unidades de
entrada bsicas en bastidores esclavos o Unidades de entrada multipunto
C200H Grupo 2).
Para AND es posible combinar el refresco inmediato y diferencial ascendente
o descendente (!@ o !%). Si se especifica alguno de ellos, la entrada se
refresca desde la Unidad de entrada bsica justo antes de que se ejecute la
instruccin y la condicin de ejecucin se pone en ON para un ciclo sola-
mente una vez que el estado cambie de OFF a ON o de ON a OFF.

158
Instrucciones de la entrada de secuencia Seccin 3-3

Ejemplo

Instruccin Operando
LD 000000
AND 000001
LD 000002
AND 000003
LD 000004
AND NOT 000005
OR LD ---
AND LD ---
OUT 000006

3-3-4 AND NOT: AND NOT


Empleo Invierte el estado del bit de operando especificado y realiza una operacin
AND lgica con la condicin de ejecucin actual.
Smbolo de diagrama de
rels
Variaciones
Variaciones Crea ON cada ciclo y el resultado de AND NOT es ON AND NOT
Crea ON una vez para diferencial ascendente (vase @AND NOT
la nota 1).
Crea ON una vez para diferencial descendente (vase %AND NOT
la nota 1).
Especificacin de refresco inmediato (vase la nota 2). !AND NOT
Variaciones Refresca el bit de entrada y crea ON una vez para !@AND NOT
combinadas diferencial ascendente (vase la nota 3).
Refresca el bit de entrada y crea ON una vez para !%AND NOT
diferencial descendente (vase la nota 3).

Nota 1. Las siguientes variaciones slo son admitidas por las CPUs CS1-H, CJ1-H,
CJ1M o CS1D: @AND NOT, %AND NOT, !@AND NOT, y !%AND NOT.
2. Las CPUs CS1D para sistemas de CPU doble no admiten el refresco in-
mediato.
3. Las variaciones combinadas son soportadas por las CPUs CS1D para sis-
temas de CPU individual y las CPUs CS1-H, CJ1-H y CJ1M solamente.
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Bit de operando AND NOT
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115

159
Instrucciones de la entrada de secuencia Seccin 3-3

rea Bit de operando AND NOT


rea Bit Auxiliar A00000 hasta A95915
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea de indicador de TK0000 hasta TK0031
tarea
Indicadores de ER, CY, N, OF, UF, >, =, <, >=, <>, <=, ON, OFF, AER
condicin
Impulsos del reloj 0,02 s, 0,1 s, 0,2 s, 1 s, 1 min
rea TR ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin AND NOT se utiliza para un bit normalmente cerrado conectado en serie.
AND NOT no puede conectarse directamente a la barra de bus, y no puede
utilizarse al comienzo de un bloque lgico. Si no hay especificacin de
refresco inmediato se lee el bit especificado en la memoria de E/S. Si hay una
especificacin de refresco inmediato, se lee el estado del terminal de entrada
de la Unidad de entrada bsica.

Indicadores No hay indicadores afectados por esta instruccin.


Precauciones Puede especificarse refresco inmediato (!) para AND NOT. Una instruccin de
refresco inmediato actualiza el estado del bit de entrada justo antes de ejecu-
tar la instruccin desde Unidades de entrada bsicas (pero no Unidades de
entrada bsicas en bastidores esclavos o Unidades de entrada multipunto
C200H Grupo 2).

Ejemplo

Instruccin Operando
LD 000000
AND 000001
LD 000002
AND 000003
LD 000004
AND NOT 000005

160
Instrucciones de la entrada de secuencia Seccin 3-3

Instruccin Operando
OR LD ---
AND LD ---
OUT 000006

3-3-5 OR: OR
Empleo Realiza una operacin OR lgica del estado ON/OFF del bit de operando
especificado y la condicin de ejecucin actual.

Smbolo de diagrama de Barra de bus


rels

Variaciones
Variaciones Crea ON cada ciclo y el resultado de OR es ON OR
Crea ON una vez para diferencial ascendente @OR
Crea ON una vez para diferencial descendente %OR
Especificacin de refresco inmediato (vase la nota). !OR
Variaciones Refresca el bit de entrada y crea ON una vez para !@OR
combinadas diferencial ascendente (vase la nota).
Refresca el bit de entrada y crea ON una vez para !%OR
diferencial descendente (vase la nota).

Nota Las CPUs CS1D para sistemas de CPU doble no admiten el refresco inme-
diato.

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Bit de operando OR
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A00000 hasta A95915
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea de indicador de TK0000 hasta TK0031
tarea
Indicadores de ER, CY, N, OF, UF, >, =, <, >=, <>, <=, ON, OFF, AER
condicin
Impulsos del reloj 0,02 s, 0,1 s, 0,2 s, 1 s, 1 min
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---

161
Instrucciones de la entrada de secuencia Seccin 3-3

rea Bit de operando OR


Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin OR se utiliza para un bit normalmente abierto conectado en paralelo. Se con-


figura un bit normalmente abierto para formar un OR lgico con un bloque
lgico que comience con una instruccin LOAD o LOAD NOT (conectada a la
barra de bus o al comienzo del bloque lgico). Si no hay especificacin de
refresco inmediato se lee el bit especificado en la memoria de E/S. Si hay una
especificacin de refresco inmediato, se lee el estado del terminal de entrada
de la Unidad de entrada bsica.

Indicadores No hay indicadores afectados por esta instruccin.

Precauciones Puede especificarse diferencial ascendente (@) o diferencial descendente


(%) para OR. Si se especifica diferencial ascendente (@), la condicin de eje-
cucin se pone en ON para un ciclo slo una vez que el estado del bit de ope-
rando cambie de OFF a ON. Si se especifica diferencial descendente (%), la
condicin de ejecucin se pone en ON para un ciclo slo una vez que el
estado del bit de operando cambie de ON a OFF.
Puede especificarse refresco inmediato (!) para OR. Una instruccin de
refresco inmediato actualiza el estado del bit de entrada justo antes de ejecu-
tar la instruccin desde Unidades de entrada bsicas (pero no Unidades de
entrada bsicas en bastidores esclavos o Unidades de entrada multipunto
C200H Grupo 2).
Para OR es posible combinar el refresco inmediato y diferencial ascendente o
descendente (!@ o !%). Si se especifica alguno de ellos, la entrada se
refresca desde la Unidad de entrada bsica justo antes de que se ejecute la
instruccin y la condicin de ejecucin se pone en ON para un ciclo sola-
mente una vez que el estado del bit de operando cambie de OFF a ON o de
ON a OFF.

Ejemplo

Instruccin Operando
LD 000000
AND 000001
AND 000002
OR 000003
AND 000004
LD 000005
AND 000006
OR NOT 000007
AND LD ---
OUT 000008

162
Instrucciones de la entrada de secuencia Seccin 3-3

3-3-6 OR NOT: OR NOT


Empleo Invierte el estado del bit especificado y realiza una operacin OR lgica con
la condicin de ejecucin actual.

Smbolo de diagrama de Barra de bus


rels

Variaciones
Variaciones Crea ON cada ciclo y el resultado de OR NOT es ON OR NOT
Crea ON una vez para diferencial ascendente (vase @OR NOT
la nota 1).
Crea ON una vez para diferencial descendente %OR NOT
(vase la nota 1).
Especificacin de refresco inmediato (vase la nota 2). !OR NOT
Variaciones Refresca el bit de entrada y crea ON una vez para !@OR NOT
combinadas diferencial ascendente (vase la nota 3).
Refresca el bit de entrada y crea ON una vez para !%OR NOT
diferencial descendente (vase la nota 3).

Nota 1. Las siguientes variaciones slo son admitidas por las CPUs CS1-H, CJ1-H,
CJ1M o CS1D: @OR NOT, %OR NOT, !@OR NOT, y !%OR NOT.
2. Las CPUs CS1D para sistemas de CPU doble no admiten el refresco in-
mediato.
3. Las variaciones combinadas son soportadas por las CPUs CS1D para sis-
temas de CPU individual y las CPUs CS1-H, CJ1-H y CJ1M solamente.

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Bit de operando OR NOT
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A00000 hasta A95915
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea de indicador de TK0000 hasta TK0031
tarea
Indicadores de condicin ER, CY, N, OF, UF, >, =, <, >=, <>, <=, A1, A0
Impulsos del reloj 0,02 s, 0,1 s, 0,2 s, 1 s, 1 min
rea TR ---
rea DM ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---

163
Instrucciones de la entrada de secuencia Seccin 3-3

rea Bit de operando OR NOT


Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin OR NOT se utiliza para un bit normalmente cerrado conectado en paralelo.


Se configura un bit normalmente cerrado para formar un OR lgico con un
bloque lgico que comience con una instruccin LOAD o LOAD NOT (conec-
tada a la barra de bus o al comienzo del bloque lgico). Si no hay especifica-
cin de refresco inmediato se lee el bit especificado en la memoria de E/S. Si
hay una especificacin de refresco inmediato, se lee el estado del terminal de
entrada de la Unidad de entrada bsica.

Indicadores No hay indicadores afectados por esta instruccin.

Precauciones Puede especificarse refresco inmediato (!) para OR NOT. Una instruccin de
refresco inmediato actualiza el estado del bit de entrada justo antes de ejecu-
tar la instruccin desde Unidades de entrada bsicas (pero no Unidades de
entrada bsicas en bastidores esclavos o Unidades de entrada multipunto
C200H Grupo 2).

Ejemplo

Instruccin Operando
LD 000000
AND 000001
AND 000002
OR 000003
AND 000004
LD 000005
AND 000006
OR NOT 000007
AND LD ---
OUT 000008

3-3-7 AND LOAD: AND LD


Empleo Ejecuta una AND lgica entre bloques lgicos.

Smbolo de diagrama de
Bloque lgico Bloque lgico
rels

Variaciones
Variaciones Crea ON cada ciclo y el resultado de AND es ON AND LD
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

164
Instrucciones de la entrada de secuencia Seccin 3-3

Descripcin AND LD conecta en serie el bloque lgico que se encuentra justo antes de
esta instruccin con otro bloque lgico.

LD
a Bloque lgico A

LD

a Bloque lgico B

AND LD Conexin en serie entre el bloque lgico A y el bloque lgico B.

El bloque lgico consiste en todas las instrucciones desde una instruccin


LOAD o LOAD NOT hasta justo antes de la siguiente instruccin LOAD o
LOAD NOT del mismo escaln.
En el siguiente diagrama se indican los dos bloques lgicos mediante lneas
de puntos. El estudio de este ejemplo muestra que una condicin de ejecu-
cin ON se producir cuando una de las condiciones de ejecucin del bloque
lgico izquierdo est en ON (es decir, cuando bien CIO 000000 o CIO 000001
est en ON) y una de las condiciones de ejecucin del bloque lgico derecho
est en ON (es decir, cuando bien CIO 000002 est en ON o CIO 000003
est en OFF).

Indicadores No hay indicadores afectados por esta instruccin.

Precauciones Pueden conectarse tres o ms bloques lgicos en serie utilizando esta ins-
truccin para conectar en primer lugar dos de los bloques lgicos y posterior-
mente conectar el siguiente y despus el resto por orden. Tambin es posible
continuar colocando esta instruccin despus de tres o ms bloques lgicos
para seguir conectndolos en serie.
Cuando se conectan bloques lgicos mediante instrucciones AND LOAD u
OR LOAD, el nmero total de instrucciones AND LOAD/OR LOAD debe coin-
cidir con el nmero total de instrucciones LOAD/LOAD NOT menos 1. Si no
coinciden se producir un error de programa.

Ejemplo

Ejemplo de codificacin (1)


Instruccin Operando
LD 000000
OR NOT 000001
LD NOT 000002
OR 000003
AND LD ---
LD 000004
OR 000005

165
Instrucciones de la entrada de secuencia Seccin 3-3

Instruccin Operando
AND LD ---
. .
. .
OUT 000500
Ejemplo de codificacin (2)
Instruccin Operando
LD 000000
OR NOT 000001
LD NOT 000002
OR 000003
LD 000004
OR 000005
. .
. .
AND LD ---
AND LD ---
. .
. .
OUT 000500

La instruccin AND LOAD puede utilizarse repetidamente. En el mtodo de


programacin (2) anterior, no obstante, el nmero de instrucciones AND
LOAD ya es uno menos que el nmero de instrucciones LOAD y LOAD NOT
antes de la primera instruccin AND LOAD.
En el mtodo (2), asegrese de que el nmero total de instrucciones LOAD y
LOAD NOT antes de AND LOAD no es superior a 8. Para utilizar nueve o ms
programe utilizando el mtodo (1). Si hay nueve o ms con el mtodo (2) se
producir un error de programa durante la comprobacin del programa que
lleva a cabo el dispositivo perifrico.
Codificacin
Direccin Instruccin Operando
000000 LD 000000
000001 OR 000001
000002 LD 000002
000003 OR NOT 000003
000004 AND LD ---
000005 OUT 000500
Segundo LD: Se utiliza para el primer bit del siguiente bloque conectado en serie al bloque
anterior.

3-3-8 OR LOAD: OR LD
Empleo Ejecuta una OR lgica entre bloques lgicos.

Smbolo de diagrama de
rels Bloque lgico

Bloque lgico

Variaciones
Variaciones Crea ON cada ciclo y el resultado de AND es ON OR LD
Especificacin de refresco inmediato Incompatible

166
Instrucciones de la entrada de secuencia Seccin 3-3

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK
Descripcin AND LD conecta en paralelo el bloque lgico que se encuentra justo antes de
esta instruccin con otro bloque lgico.

LD
a Bloque lgico A

LD
a Bloque lgico B

OR LD Conexin en paralelo entre el bloque lgico A y el bloque lgico B.

El bloque lgico consiste en todas las instrucciones desde una instruccin


LOAD o LOAD NOT hasta justo antes de la siguiente instruccin LOAD o
LOAD NOT del mismo escaln.
El siguiente diagrama requiere una instruccin OR LOAD entre el bloque
lgico superior y el bloque lgico inferior. Una condicin de ejecucin ON se
producir bien cuando CIO 000000 est en ON y CIO 000001 est en OFF o
cuando CIO 000002 y CIO 000003 estn ambos en ON. El cdigo nemnico
y la operacin de la instruccin OR LOAD son exactamente igual al caso de
la instruccin AND LOAD, excepto en que a la condicin de ejecucin actual
se le aplica OR con la ltima condicin de ejecucin no utilizada.

Indicadores No hay indicadores afectados por esta instruccin.

Precauciones Pueden conectarse tres o ms bloques lgicos en paralelo utilizando esta ins-
truccin para conectar en primer lugar dos de los bloques lgicos y posterior-
mente conectar el siguiente y despus el resto por orden. Tambin es posible
continuar colocando esta instruccin despus de tres o ms bloques lgicos
para seguir conectndolos en paralelo.
Cuando se conectan bloques lgicos mediante instrucciones AND LOAD u
OR LOAD, el nmero total de instrucciones AND LOAD/OR LOAD debe coin-
cidir con el nmero total de instrucciones LOAD/LOAD NOT menos 1. Si no
coinciden se producir un error de programa.

Ejemplo

167
Instrucciones de la entrada de secuencia Seccin 3-3

Ejemplo de codificacin (1)


Instruccin Operando
LD 000000
AND NOT 000001
LD NOT 000002
AND NOT 000003
OR LD ---
LD 000004
AND 000005
OR LD ---
. .
. .
OUT 000501

Ejemplo de codificacin (2)


Instruccin Operando
LD 000000
AND NOT 000001
LD NOT 000002
AND NOT 000003
LD 000004
AND 000005
. .
. .
OR LD ---
OR LD ---
. .
. .
OUT 000501

La instruccin OR LOAD puede utilizarse repetidamente. En el mtodo de


programacin (2) anterior, no obstante, el nmero de instrucciones OR LOAD
ya es uno menos que el nmero de instrucciones LOAD y LOAD NOT antes
de la primera instruccin OR LOAD.
En el mtodo (2), asegrese de que el nmero total de instrucciones LOAD y
LOAD NOT antes de OR LOAD no es superior a 8. Para utilizar nueve o ms
programe utilizando el mtodo (1). Si hay nueve o ms con el mtodo (2) se
producir un error de programa durante la comprobacin del programa que
lleva a cabo el dispositivo perifrico.
Codificacin
Direccin Instruccin Operando
000100 LD 000000
000101 AND NOT 000001
000102 LD 000002
000103 AND 000003
000104 OR LD ---
000105 OUT 000501

Segundo LD: Se utiliza para el primer bit del siguiente bloque conectado en serie al bloque
anterior.

168
Instrucciones de la entrada de secuencia Seccin 3-3

3-3-9 Instrucciones de refresco diferencial e inmmediato


Las instrucciones LOAD, AND, y OR disponen de variaciones de refresco
diferencial e inmediato adems de la formas normales, y hay dos combinacio-
nes disponibles.
Las instrucciones LOAD NOT, AND NOT, OR NOT, OUT, y OUT NOT dispo-
nen de variaciones de refresco inmediato adems de las formas normales.
La temporizacin de E/S para los datos manejados por instrucciones difiere
en los casos de instrucciones ordinarias y de diferencial, instrucciones de
refresco inmediato, e instrucciones de diferencial de refresco inmediato.
Las instrucciones de diferencial y ordinarias se ejecutan utilizando datos
introducidos por procesamientos de refresco de E/S anteriores y los resulta-
dos se entregan con el siguiente procesamiento de E/S. En este caso,
refresco de E/S se refiere a los datos intercambiados entre la memoria
interna de la CPU y la Unidad de E/S.
Adems del refresco de E/S anteriormente mencionado, una instruccin de
refresco inmediato intercambia datos con la Unidad de E/S para aquellos
canales a los que se accede mediante la instruccin. Una instruccin de
refresco inmediato refresca ocho bits simultneamente (los ocho bits ms a la
izquierda o ms a la derecha) adems del bit especificado.
Las instrucciones de refresco inmediato no pueden utilizarse para Unidades
en bastidores esclavos.
Variaciones de Nemnico Funcin Refresco de E/S
instrucciones
Ordinaria LD, AND, OR, LD NOT, El estado ON/OFF del bit especificado Refresco cclico
AND NOT, OR NOT es tomado por la CPU con refresco
cclico, y se refleja en la ejecucin de la
siguiente instruccin.
OUT, OUT NOT Despus de ejecutar la instruccin se
entrega el estado ON/OFF del bit espe-
cificado con el siguiente refresco cclico.
Diferencial @LD, @AND, @OR La instruccin se ejecuta una vez que el
ascendente bit especificado cambia de OFF a ON y
el estado ON se mantiene durante un
ciclo.
Diferencial %LD, %AND, %OR La instruccin se ejecuta una vez que el
descendente bit especificado cambia de ON a OFF y
el estado ON se mantiene durante un
ciclo.
Refresco inmediato !LD, !AND, !OR, !LD NOT, Los datos de entrada para el bit Antes de la ejecucin de
!AND NOT, !OR NOT especificado son tomados por la CPU y la instruccin
la instruccin se ejecuta.
!OUT, !OUT NOT Una vez se haya ejecutado la Despus de la ejecucin
instruccin se entregan los datos para de la instruccin
el bit especificado.
Diferencial !@LD, !@AND, !@OR Los datos de entrada para el bit especi- Antes de la ejecucin de
ascendente / refresco ficado son refrescados por la CPU y la la instruccin
inmediato instruccin se ejecuta una vez cuando
el bit cambia de OFF a ON y el estado
ON se mantiene durante un ciclo.
Diferencial !%LD, !%AND, !%OR Los datos de entrada para el bit especi-
descendente / ficado son refrescados por la CPU y la
refresco inmediato instruccin se ejecuta una vez cuando
el bit cambia de OFF a ON y el estado
ON se mantiene durante un ciclo.

169
Instrucciones de la entrada de secuencia Seccin 3-3

3-3-10 Temporizacin de operacin para instrucciones de E/S


El siguiente grfico muestra las diferencias en la temporizacin de operacio-
nes de instrucciones para un programa configurado desde LD y OUT.

Entrada
recibida
Entrada
recibida

Entrada
recibida

Entrada
recibida
Entrada
Entrada recibida
! recibida

Entrada
! recibida

Entrada
! recibida
Entrada recibida
Entrada
! ! recibida

Entrada
! recibida

Entrada
! recibida

! !

! !

! !

Procesa-
miento de
la CPU

Ejecucin de instruccin Refresco de E/S

3-3-11 Bits TR
Los bits TR se utilizan para retener temporalmente el estado ON/OFF de las
condiciones de ejecucin en un programa cuando se programa en cdigo
nemnico. No se utilizan cuando se programa directamente en programa de
diagrama de rels porque el procesamiento es ejecutado automticamente
por el dispositivo perifrico. El siguiente diagrama muestra una aplicacin
simple utilizando dos bits TR.

170
Instrucciones de la entrada de secuencia Seccin 3-3

Direccin Instruccin Operandos


000000 LD 000000
000001 OUT TR0
000002 AND 000001
000003 OUT TR1
000004 AND 000002
000005 OUT 000500
000006 LD TR1
000007 AND 000003
000008 OUT 000501
000009 LD TR0
000010 AND 000004
000011 OUT 000502
000012 LD TR0
000013 AND NOT 000005
000014 OUT 000503

Utilizacin de TR0 hasta TR0 hasta TR15 se utilizan solamente con instrucciones LOAD y OUTPUT.
TR15 No hay restricciones en el orden en que se utilizan las direcciones de bit.
A veces es posible simplificar un programa rescribindolo de tal manera que
no sean necesarios bits TR. El siguiente diagrama muestra un caso en el que
un bit TR es innecesario y uno en el que se requiere un bit TR.

(1)

(2)

En el bloque de instruccin (1), el estado ON/OFF en el punto A es el mismo


que para la salida CIO 00200, as que AND 000001 y OUT 000201 pueden
codificarse sin necesidad de un bit TR. En el bloque de instrucciones (2), los
estados del punto de bifurcacin y de la salida CIO 000202 no son necesaria-
mente los mismos, as que debe utilizarse un bit TR. En este caso, el nmero
de pasos del programa podra reducirse utilizando el bloque de instrucciones
(1) en lugar del bloque de instrucciones (2).

Consideraciones sobre Los bits TR se utilizan solamente para retener (OUT TR0 hasta TR15) y res-
TR0 hasta TR15 taurar (LD TR0 hasta TR15) el estado ON/OFF de los puntos de bifurcacin
en programas con varias bifurcaciones de salida. Por ello son distintos a los
bits generales, y no pueden utilizarse con instrucciones AND u OR ni con ins-
trucciones que incluyan NOT.

171
Instrucciones de la entrada de secuencia Seccin 3-3

Duplicacin de salida TR0 Una direccin de bit TR no puede repetirse en el mismo bloque en un pro-
hasta TR15 grama con varias bifurcaciones de salida, tal y como se muestra en el siguiente
diagrama. No obstante puede utilizarse de nuevo en un bloque diferente.

3-3-12 NOT: NOT(520)


Empleo Invierte la condicin de ejecucin.

Smbolo de diagrama de
NOT(520)
rels
Variaciones
Variaciones Invierte la condicin de ejecucin cada ciclo NOT(520)
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK
Descripcin NOT(520) se coloca entre una condicin de ejecucin y otra instruccin para
invertir la condicin de ejecucin.

Indicadores No hay indicadores afectados por NOT(520)

Precauciones NOT(520) es una instruccin intermedia, es decir, no puede utilizarse como


una instruccin de la derecha. Asegrese de programar una instruccin de la
derecha tras NOT(520).
Ejemplo NOT(520) invierte la condicin de ejecucin en el siguiente ejemplo

La siguiente tabla muestra la operacin de esta seccin del programa.

172
Instrucciones de la entrada de secuencia Seccin 3-3

Estado del bit de entrada Estado del bit de


salida
CIO 000000 CIO 000001 CIO 000002 CIO 000003
1 1 1 0
1 1 0 0
1 0 1 1
0 1 1 0
1 0 0 1
0 1 0 1
0 0 1 1
0 0 0 1

3-3-13 CONDITION ON/OFF: UP(521) y DOWN(522)


Empleo UP(521) pone en ON la condicin de ejecucin la siguiente instruccin durante
un ciclo cuando la condicin de ejecucin que recibe pasa de OFF a ON.
DOWN(522) pone en ON la condicin de ejecucin la siguiente instruccin
durante un ciclo cuando la condicin de ejecucin que recibe pasa de ON a OFF.

Smbolos de diagrama de
rels UP(521)

DOWN(522)

Variaciones
Variaciones Crea ON una vez para diferencial ascendente UP(521)
Especificacin de refresco inmediato Incompatible

Variaciones Crea ON una vez para diferencial descendente UP(522)


Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Descripcin UP(521) se coloca entre una condicin de ejecucin y otra instruccin para
convertir la condicin de ejecucin en una condicin de diferencial ascen-
dente. UP(521) causa que la instruccin que se conecta sea ejecutada una
vez justo cuando la condicin de ejecucin cambia de OFF a ON.
DOWN(522) se coloca entre una condicin de ejecucin y otra instruccin
para convertir la condicin de ejecucin en una condicin de diferencial des-
cendente. DOWN(522) causa que la instruccin que se conecta sea ejecu-
tada una vez justo cuando la condicin de ejecucin cambia de ON a OFF.
las instrucciones DIFU(013) y DIFD(014) tambin pueden utilizarse para el
mismo propsito, pero requieren bits de trabajo. UP(521) y DOWN(522) sim-
plican la programacin reduciendo el nmero de bits de trabajo y direcciones
de programa necesarias.

Indicadores No hay indicadores afectados por UP(521) y DOWN(522).

Precauciones UP(521) y DOWN(522) son instrucciones intermedias, es decir, no pueden


utilizarse como instrucciones de la derecha. Asegrese de programar una
instruccin de la derecha tras UP(521) o DOWN(522).
La operacin de UP(521) y DOWN(522) depende de la condicin de ejecu-
cin para la instruccin as como la condicin de ejecucin para la seccin de
programa cuando est programada en una seccin bloqueada del programa,

173
Instrucciones de la entrada de secuencia Seccin 3-3

una seccin saltada del programa o una subrutina. Encontrar ms detalles


en 3-5-4 INTERLOCK e INTERLOCK CLEAR: IL(002) e ILC(003), 3-5-6
JUMP y JUMP END: JMP(004) y JME(005) y 3-20 Instrucciones de control de
interrupcin.

Ejemplos Cuando CIO 000000 cambia de OFF a ON en el siguiente ejemplo,


CIO 000001 se pone en ON para un solo ciclo.

Tiempo
de ciclo

Tiempo
de ciclo

3-3-14 BIT TEST: TST(350) y TSTN(351)


Empleo LD TST(350), AND TST(350) y OR TST(350) se utilizan en el programa como
LD, AND y OR; la condicin de ejecucin est en ON cuando el bit especifi-
cado del canal especificado est en ON y en OFF cuando el bit est en OFF.
LD TSTN(351), AND TSTN(351) y OR TSTN(351) se utilizan en el programa
como LD, NOT, AND NOT y OR NOT; la condicin de ejecucin est en OFF
cuando el bit especificado del canal especificado est en ON y en ON cuando
el bit est en OFF.

Smbolos de diagrama de
rels TST(350)

S S: Canal fuente

N N: Nmero de bit

TSTN(351)

S S: Canal fuente

N N: Nmero de bit

Variaciones
Variaciones Ejecutado cada ciclo TST(350)
Especificacin de refresco inmediato Incompatible

Variaciones Ejecutado cada ciclo TSTN(351)


Especificacin de refresco inmediato Incompatible

174
Instrucciones de la entrada de secuencia Seccin 3-3

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de bit


El nmero de bit debe estar entre 0000 y 000F hexadecimal o entre &0000 y
&0015 decimal. Slo el bit ms a la izquierda (0 a F hexadecimal) de los con-
tenidos del canal es vlido cuando se especifica una direccin de canal.
Especificaciones del
operando rea S N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta #000F (bina-
rio) o bien &0 hasta &15
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indirecto ,IR0 hasta ,IR15
utilizando registros de 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047
ndice ,IR15
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin LD TST(350), AND TST(350) y OR TST(350) pueden utilizarse en el pro-


grama como LD, AND y OR; la condicin de ejecucin est en ON cuando el
bit especificado del canal especificado est en ON y en OFF cuando el bit
est en OFF. Al contrario que en el caso de LD, AND y OR, los bits de las
reas DM y EM pueden utilizarse como operandos en TST(350).
LD TSTN(351), AND TSTN(351) y OR TST(351) pueden utilizarse en el pro-
grama como LD, NOT, AND NOT y OR NOT; la condicin de ejecucin est
en OFF cuando el bit especificado del canal especificado est en ON y en ON
cuando el bit est en OFF. Al contrario que en el caso de LD NOT, AND NOT
y OR NOT, los bits de las reas DM y EM pueden utilizarse como operandos
en TSTN(351).

175
Instrucciones de la entrada de secuencia Seccin 3-3

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF o sin cambios (vase la nota).
Indicador de igual = OFF o sin cambios (vase la nota).
Indicador de negativo N OFF o sin cambios (vase la nota).

Nota En las CPUs CS1 y CJ1 estos estn en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Precauciones TST(350) y TSTN(351) son instrucciones intermedias, es decir, no pueden


utilizarse como instrucciones de la derecha. Asegrese de programar una
instruccin de la derecha tras TST(350) o TSTN(351).

Ejemplos LD TST(350) y LD TSTN(351)


En el siguiente ejemplo CIO 000001 se pone en ON cuando el bit 3 de
D00010 est en ON.

&3

En el siguiente ejemplo CIO 000001 se pone en ON cuando el bit 3 de


D00010 est en OFF

&3

AND TST(350) y AND TSTN(351)


En el siguiente ejemplo CIO 000001 se pone en ON cuando CIO 000000 y el
bit 3 de D00010 estn en ON.

&3

En el siguiente ejemplo CIO 000001 se pone en ON cuando CIO 000000 est


en ON y el bit 5 de D00010 est en OFF.

&5

176
Instrucciones de la salida de secuencia Seccin 3-4

OR TST(350) y OR TSTN(351)
En el siguiente ejemplo CIO 000001 se pone en ON cuando CIO 000000 o el
bit 3 de D00010 estn en ON.

&3

En el siguiente ejemplo CIO 000001 se pone en ON cuando CIO 000000 est


en ON o el bit 3 de D00010 est en OFF.

&3

3-4 Instrucciones de la salida de secuencia


3-4-1 OUTPUT: OUT
Empleo Enva el resultado (condicin de ejecucin) del procesamiento lgico al bit
especificado.
Smbolo de diagrama de
rels

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON OUT
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato (vase la nota). !OUT

Nota Las CPUs CS1D no admiten el refresco inmediato.

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK OK

Especificaciones del
operando rea Bit de operando OUT
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A44800 hasta A95915
rea Temporizador ---
rea Contador ---
rea TR TR0 hasta TR15

177
Instrucciones de la salida de secuencia Seccin 3-4

rea Bit de operando OUT


rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta ,IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Si no hay especificacin de refresco inmediato, el estado de la condicin de


ejecucin (flujo de seal) se escribe en el bit especificado de la memoria de
E/S. Si hay especificacin de refresco inmediato, el estado de la condicin de
ejecucin (flujo de seal) tambin se escribe en el terminal de salida de la
Unidad de salida bsica adicionalmente al bit de salida de la memoria de E/S.

Indicadores No hay indicadores afectados por esta instruccin.

Precauciones Puede especificarse refresco inmediato (!) para OUT y OUT NOT. Una ins-
truccin de refresco inmediato actualiza el estado del terminal de salida justo
despus de que la instruccin sea ejecutada para la Unidad de salida bsica
(pero no para Unidades de salida bsicas en bastidores esclavos o Unidades
de entrada multipunto C200H Grupo 2), al mismo tiempo que escribe el
estado de la condicin de ejecucin (flujo de seal) en el bit de salida especi-
ficado de la memoria de E/S.

Ejemplo

Instruccin Operando
LD 000000
OUT 000001
OUT NOT 000002

3-4-2 OUTPUT NOT: OUT NOT


Empleo Invierte el resultado (condicin de ejecucin) del procesamiento lgico y lo
enva al bit especificado.
Smbolo de diagrama de
rels

178
Instrucciones de la salida de secuencia Seccin 3-4

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON OUT NOT
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato (vase la nota). !OUT NOT

Nota Las CPUs CS1D no admiten el refresco inmediato.

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK OK

Especificaciones del
operando rea Bit de operando OUT
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A44800 hasta A95915
rea Temporizador ---
rea Contador ---
rea TR TR0 hasta TR15
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta ,IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Si no hay especificacin de refresco inmediato, el estado de la condicin de


ejecucin (flujo de seal) se invierte y escribe en un bit especificado de la
memoria de E/S. Si hay especificacin de refresco inmediato, el estado de la
condicin de ejecucin (flujo de seal) se invierte y tambin se escribe en el
terminal de salida de la Unidad de salida bsica adicionalmente al bit de
salida de la memoria de E/S.

Indicadores No hay indicadores afectados por esta instruccin.

Ejemplo

179
Instrucciones de la salida de secuencia Seccin 3-4

Instruccin Operando
LD 000000
OUT 000001
OUT NOT 000002

3-4-3 KEEP: KEEP(011)


Empleo Funciona como rel de enclavamiento.

Smbolo de diagrama de S (Set) KEEP(011)


rels
B B: Bit

R (Reset)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON KEEP(011)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato (vase la nota). !KEEP(011)

Nota Las CPUs CS1D no admiten el refresco inmediato.

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK OK

Especificaciones del
operando rea B
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A44800 hasta A95915
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

180
Instrucciones de la salida de secuencia Seccin 3-4

Descripcin Cuando S se pone en ON, el bit designado se pondr en ON y se mantendr


en ON hasta que se resetee, sin tener en cuenta si S se mantiene en ON o
cambia a OFF. Cuando R se pone en ON el bit designado se pondr en OFF.
A continuacin se muestra la relacin entre las condiciones de ejecucin y el
estado del bit KEEP(011).
Configurar

Reset

Condicin de ON
ejecucin de S OFF
Condicin de ON
ejecucin de R OFF
ON
Estado de C
OFF

Si S y R estn en ON simultneamente, la entrada de reset tiene precedencia.

Configurar

Reset

Estado
de C

La entrada de configuracin set (S) no puede recibirse mientras R est en ON.

Configurar

Reset

Estado de C

KEEP(011) tiene una variacin de refresco inmediato (!KEEP(011)). Cuando


se ha especificado un bit de salida externo para B en una instruccin
!KEEP(011), cualquier cambio en B se refrescar cuando se ejecute
!KEEP(011) y se reflejar inmediatamente en el bit de salida. (Los cambios
no se reflejarn inmediatamente si el bit est asignado a una Unidad de E/S
de alta densidad del Grupo 2, una Unidad especial de E/S de alta densidad, o
una Unidad montada en un bastidor esclavo de E/S remoto SYSMAC BUS).
KEEP(011) opera como bit de autorretencin, pero un bit de autorretencin
programado con KEEP(011) requiere una instruccin menos.

181
Instrucciones de la salida de secuencia Seccin 3-4

Los bits de autorretencin programados con KEEP(011) mantendrn su


estado incluso en una seccin de programa de bloqueo, lo que no ocurre con
los bits de autorretencin programados sin KEEP(011).

El bit de salida C mantendr su El bit de salida C se pone


estado previo en un bloqueo. en OFF en un bloqueo.

KEEP(011) puede utilizarse para crear conmutaciones alternativas como se


muestra a continuacin.

Si se utiliza un bit de retencin para B, el estado del bit se retendr incluso


durante una interrupcin de la alimentacin. KEEP(011) puede as utilizarse
para programar bits que mantendrn el estado despus de reiniciar el PLC
tras una interrupcin de alimentacin. A continuacin se muestra un ejemplo
de cmo puede utilizarse para producir una visualizacin de advertencia tras
un corte del sistema debido a una situacin de emergencia.

182
Instrucciones de la salida de secuencia Seccin 3-4

Indica situacin
de emergencia

Entrada de reset

Activa
visualizacin
de advertencia

El estado de los bits de rea de E/S puede retenerse en caso de una interrup-
cin de la alimentacin poniendo en ON el bit de retencin IOM y seleccio-
nando la retencin del bit IOM en la configuracin del PLC. En este caso, los
bits de rea de E/S utilizados en KEEP(011) mantendrn su estado despus
de reiniciar el PLC tras una interrupcin de la alimentacin, de igual manera
que los bits de retencin. Asegrese de reiniciar el PLC despus de modificar
la configuracin del PLC: en caso contrario las nuevas configuraciones no
sern utilizadas.

Indicadores Ningn indicador se ve afectado por KEEP(011).

Precauciones Nuenca utilice un bit de entrada en una condicin normalmente cerrada en el


reset (R) para KEEP(011) cuando el dispositivo de entrada utiliza una fuente
de alimentacin de c.a. El retardo en cerrar la fuente de alimentacin de c.c.
del PLC (debida a la fuente de alimentacin de c.a. del dispositivo de
entrada) puede causar que el bit de operando de KEEP(011) sea reseteado.
Esta situacin se muestra a continuacin.
Unidad de entrada
A S
KEEP
120000

A NUNCA R

Los operandos para KEEP(011) se introducen en un orden diferente en


diagramas de rel y en cdigo nemnico.
Orden en diagrama de rels: Entrada set KEEP(011) Entrada reset
Orden en cdigo nemnico: Entrada set Entrada reset KEEP(011)

Ejemplo Cuando CIO 000000 se pone en ON en el siguiente ejemplo, CIO 00500 se


pone en ON. CIO 00500 se mantiene en ON hasta que CIO 000001 se pone
en ON.
Cuando CIO 000002 se pone en ON y CIO 000003 se pone en OFF en el
siguiente ejemplo, CIO 00100 se pone en ON. CIO 00100 se mantiene en ON
hasta que CIO 000004 o CIO 000005 se pone en ON.

183
Instrucciones de la salida de secuencia Seccin 3-4

Codificacin
Direccin Instruccin Operando
000100 LD 000000
000101 LD 000001
000102 KEEP(011) 000500
000103 LD 000002
000104 AND NOT 000003
000105 LD 000004
000106 OR 000005
000107 KEEP(011) 000100

Nota KEEP(011) se introduce en un orden distinto en diagramas de rels y en


cdigo nemnico. En diagramas de rels, introduzca la entrada set,
KEEP(011) y posteriormente la entrada de reset. En forma nemnica, intro-
duzca la entrada set, la entrada de reset y posteriormente KEEP(011).

3-4-4 DIFFERENTIATE UP/DOWN: DIFU(013) y DIFD(014)


Empleo DIFU(013) pone en ON el bit designado durante un ciclo cuando la condicin
de ejecucin pasa de OFF a ON (flanco de subida).
DIFD(014) pone en ON el bit designado durante un ciclo cuando la condicin
de ejecucin pasa de ON a OFF (flanco de bajada).

Smbolos de diagrama de
rels DIFU(013)

B B: Bit

DIFD(014)

B B: Bit

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON Incompatible
Se ejecuta una vez en el diferencial ascendente DIFU(013)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato (vase la nota). !DIFU(013)

Nota Las CPUs CS1D no admiten el refresco inmediato.

184
Instrucciones de la salida de secuencia Seccin 3-4

Variaciones Se ejecuta en cada ciclo con condicin ON Incompatible


Se ejecuta una vez en el diferencial ascendente DIFD(014)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato (vase la nota). !DIFD(014)

Nota Las CPUs CS1D no admiten el refresco inmediato.

reas de programa reas de programa de reas de programa de Subrutinas Tareas de


aplicables bloques pasos interrupcin
No se admite OK OK OK

Especificaciones del
operando rea B
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A44800 hasta A95915
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( ) IR0 hasta ,15( ) IR

Descripcin Cuando la condicin de ejecucin cambia de OFF a ON, DIFU(013) pone B en


ON. Cuando se alcanza DIFU(013) en el siguiente ciclo, B se pone en OFF.

Condicin de
ejecucin

Estado de B

1 ciclo

Cuando la condicin de ejecucin cambia de ON a OFF, DIFD(014) pone B en


ON. Cuando se alcanza DIFD(014) en el siguiente ciclo, B se pone en OFF.
Condicin de
ejecucin

Estado de B
1 ciclo

DIFU(013) y DIFD(014) tienen variaciones de refresco inmediato (!DIFU(013) y


!DIFD(014)). Cuando se ha especificado un bit de salida externo para B en una
de estas instrucciones, cualquier cambio en B se refrescar cuando se ejecute

185
Instrucciones de la salida de secuencia Seccin 3-4

la instruccin y se reflejar inmediatamente en el bit de salida. (Los cambios no


se reflejarn inmediatamente si el bit est asignado a una Unidad de E/S de
alta densidad del Grupo 2, una Unidad especial de E/S de alta densidad, o una
Unidad montada en un bastidor esclavo de E/S remoto SYSMAC BUS).
UP(521) y DOWN(522) pueden usarse para ejecutar una instruccin para un
solo ciclo cuando la condicin de ejecucin cambia OFF ON o bien
ON OFF. Consulte 3-3-13 CONDITION ON/OFF: UP(521) y DOWN(522)
para obtener ms informacin.

Indicadores Ningn indicador se ve afectado por DIFU(013) y DIFD(014).

Precauciones La operacin de DIFU(013) or DIFD(014) depende de la condicin de ejecu-


cin para la instruccin as como la condicin de ejecucin para la seccin de
programa cuando est programada en una seccin bloqueada del programa,
una seccin saltada del programa o una subrutina. Encontrar ms detalles
en 3-5-4 INTERLOCK e INTERLOCK CLEAR: IL(002) e ILC(003), 3-5-6
JUMP y JUMP END: JMP(004) y JME(005) y3-20 Instrucciones de control de
interrupcin .
Si DIFU(013) se utiliza para un lazo FOR-NEXT y el lazo se repite en un ciclo,
el bit controlado estar siempre en ON o siempre en OFF en ese lazo.

Ejemplos Operacin de DIFU(013)


Cuando CIO 000000 cambia de OFF a ON en el siguiente ejemplo,
CIO 001000 se pone en ON para un solo ciclo.

001000

1 ciclo 1 ciclo

Operacin de DIFD(014)
Cuando CIO 000000 cambia de ON a OFF en el siguiente ejemplo,
CIO 001000 se pone en ON para un solo ciclo.

001000

001000

1 ciclo 1 ciclo

186
Instrucciones de la salida de secuencia Seccin 3-4

3-4-5 SET y RESET: SET y RSET


Empleo SET pone el bit de operando en ON cuando la condicin de ejecucin est en
ON.
RSET pone el bit de operando en OFF cuando la condicin de ejecucin est
en ON.

Smbolos de diagrama de
rels SET

B B: Bit

RSET

B B: Bit

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SET
Se ejecuta una vez en el diferencial @SET
ascendente
Se ejecuta una vez en el diferencial %SET
descendente
Especificacin de refresco inmediato (vase la nota). !SET
Variaciones Ejecutada una vez y bit refrescado !@SET
combinadas inmediatamente para diferencial ascendente
(vase la nota).
Ejecutada una vez y bit refrescado !%SET
inmediatamente para diferencial
descendente (vase la nota).

Nota Las CPUs CS1D no admiten el refresco inmediato.

Variaciones Se ejecuta en cada ciclo con condicin ON RSET


Se ejecuta una vez en el diferencial @RSET
ascendente
Se ejecuta una vez en el diferencial %RSET
descendente
Especificacin de refresco inmediato (vase la nota). !RSET
Variaciones Refresco inmediato una vez para diferencial !@RSET
combinadas ascendente (vase la nota 1).
Refresco inmediato una vez para diferencial !%RSET
descendente (vase la nota 1).

Nota Las CPUs CS1D no admiten el refresco inmediato.

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea B
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A44800 hasta A95915
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---

187
Instrucciones de la salida de secuencia Seccin 3-4

rea B
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SET pone el bit de operando en ON cuando la condicin de ejecucin est en


ON, y no afecta al estado del bit de operando cuando la condicin de ejecu-
cin est en OFF. Use RSET para poner en OFF un bit que ha sido puesto en
ON mediante SET.
Condicin de
ejecucin de SET

Estado de B

RSET pone el bit de operando en OFF cuando la condicin de ejecucin est


en ON, y no afecta al estado del bit de operando cuando la condicin de eje-
cucin est en OFF. Use SET para poner en ON un bit que ha sido puesto en
OFF mediante RSET.
Condicin de
ejecucin de RSET

Estado de B

SET y RSET tienen variaciones de refresco inmediato (!SET y !RSET).


Cuando se ha especificado un bit de salida externo para B en una de estas
instrucciones, cualquier cambio en B se refrescar cuando se ejecute la ins-
truccin y se reflejar inmediatamente en el bit de salida. (Los cambios no se
reflejarn inmediatamente si el bit est asignado a una Unidad de E/S de alta
densidad del Grupo 2, una Unidad especial de E/S de alta densidad, o una
Unidad montada en un bastidor esclavo de E/S remoto SYSMAC BUS).
Las entradas set y reset para una instruccin KEEP(011) deben programarse
con la instruccin, pero las instrucciones SET y RSET pueden programarse de
manera completamente independiente. Adems, puede utilizarse el mismo bit
como operando en cualquier cantidad de instrucciones SET o RSET.

Indicadores Ningn indicador se ve afectado por SET y RSET.

Precauciones SET y RSET no pueden utilizarse para temporizadores y contadores set y reset.
Cuando se programan SET o RSET entre IL(002) y ILC(003) o JMP(004) y
JME(005), el estado del bit especificado no cambiar si la seccin del pro-
grama est bloqueada o saltada.

Ejemplo Diferencias entre OUT/OUT NOT y SET/RSET


La operacin de SET difiere de la de OUT porque la instruccin OUT pone el
bit de operando en OFF cuando su condicin de ejecucin est en OFF. De
manera similar, RSET difiere de OUT NOT porque OUT NOT pone el bit de
operando en ON cuando su condicin de ejecucin est en OFF.

188
Instrucciones de la salida de secuencia Seccin 3-4

000000 010000 CIO 010000 se pone en ON/OFF


cuando CIO 000000 se pone en
ON/OFF.

000001
CIO 010000 se pone entonces
en ON cuando CIO 000001 se
pone en ON; se mantiene en ON
hasta que CIO 000002 se pone
000002 en ON.

3-4-6 MULTIPLE BIT SET/RESET: SETA(530)/RSTA(531)


Empleo SETA(530) pone en ON el nmero especificado de bits consecutivos.
RSTA(531) pone en OFF el nmero especificado de bits consecutivos.
Smbolos de diagrama de
rels SETA(530)

D D: Canal inicial

N1 N1: Bit de inicio

N2 N2: Nmero de bits

RSTA(531)

D D: Canal inicial

N1 N1: Bit de inicio

N2 N2: Nmero de bits


Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SETA(530)
Se ejecuta una vez en el diferencial ascendente @SETA(530)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible
Variaciones Se ejecuta en cada ciclo con condicin ON RSTA(531)
Se ejecuta una vez en el diferencial ascendente @RSTA(531)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos D: Canal de comienzo


Especifica el primer canal en el que los bits se pondrn en ON o en OFF.
N1: Bit de inicio
Especifica el primer bit que se pondr en ON o en OFF. N1 debe ser #0000
hasta #000F (&0 hasta &15).
N2: Nmero de bits
Especifica el nmero de bits que se pondrn en ON o en OFF. N2 debe ser
#0000 hasta #FFFF (&0 hasta &65535).

189
Instrucciones de la salida de secuencia Seccin 3-4

Nota Los bits que se ponen en ON o en OFF deben estar en el mismo rea de
datos. (El rango de canales es aproximadamente D hasta D+N216).

a
D: 256 canales mx.

Especificaciones del
operando rea D N1 N2
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 a A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indirectas @ D00000 hasta @ D32767
en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indirectas *D00000 hasta *D32767
en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta #0000 hasta
#000F (binario) #FFFF (binario)
o bien &0 hasta o bien &0 hasta
&15 &65535
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indirecto ,IR0 hasta ,IR15
utilizando registros de ndice 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047
,IR15
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La operacin de SETA(530) y RSTA(531) se describe de forma separada a


continuacin.
Operacin de SETA(530)
SETA(530) pone en ON bits N2, empezando por el bit N1 de D, y continuando
hacia la izquierda (bits ms importantes). El resto de los bits se mantienen sin
cambios. (No se harn cambios si N2 est configurado como 0).
Los bits puestos en ON por SETA(530) pueden ponerse en OFF con otras
instrucciones, no solamente con RSTA(531).

190
Instrucciones de la salida de secuencia Seccin 3-4

Los bits N2 se
seleccionan en 1 (ON).

SETA(530) puede utilizarse para poner en ON bits de reas de datos a las que
normalmente se accede slo mediante canales, como las reas DM y EM.
Operacin de RSTA(531)
RSTA(531) pone en OFF bits N2, empezando por el bit N1 de D, y conti-
nuando hacia la izquierda (bits ms importantes). El resto de los bits se man-
tienen sin cambios. (No se harn cambios si N2 est configurado como 0).
Los bits puestos en OFF por RSTA(531) pueden ponerse en ON con otras
instrucciones, no solamente con SETA(530).

Los bits N2 se
restablecen a 0 (OFF).

RSTA(531) puede utilizarse para poner en OFF bits de reas de datos a las
que normalmente se accede slo mediante canales, como las reas DM y EM.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N1 no est dentro del rango especificado de 0000
error hasta 000F.
OFF en el resto de los casos.

Ejemplos Ejemplo de SETA(530)


Cuando CIO 000000 se pone en ON en el siguiente ejemplo, los 20 bits (0014
hexadecimal) comenzando por el bit 5 de CIO 0100 se ponen en ON.

N1: Bit 5

&5 N2: 20 bits

&20

Ejemplo de RSTA(531)
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, los 20 bits (0014
hexadecimal) comenzando por el bit 3 de CIO 0100 se ponen en OFF.

N1: Bit 3

&3 N2: 20 bits

&20

191
Instrucciones de la salida de secuencia Seccin 3-4

3-4-7 SINGLE BIT SET/RESET: SETB(532)/RSTB(533)


Empleo SETB(532) pone en ON el bit especificado.
RSTB(533) pone en OFF el bit especificado.
Estas instrucciones son admitidas slo por las CPUs CS1-H, CJ1-H, CJ1M y
CS1D.
Smbolos de diagrama de rels

SETB(532) D: Direccin de canal


D N: Nmero de bit
N

RSTB(533)
D: Direccin de canal
D N: Nmero de bit
N
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SETB(532)
Se ejecuta una vez en el diferencial ascendente @SETB(532)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato (vase la nota). !SETB(532)
Variaciones Ejecutada una vez y bit refrescado !@SETB(532)
combinadas inmediatamente para diferencial ascendente
(vase la nota).
Ejecutada una vez y bit refrescado Incompatible
inmediatamente para diferencial descendente.

Nota Las CPUs CS1D no admiten el refresco inmediato.

Variaciones Se ejecuta en cada ciclo con condicin ON RSTB(533)


Se ejecuta una vez en el diferencial ascendente @RSTB(533)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato (vase la nota). !RSTB(533)
Variaciones Ejecutada una vez y bit refrescado !@RSTB(533)
combinadas inmediatamente para diferencial ascendente
(vase la nota).
Ejecutada una vez y bit refrescado Incompatible
inmediatamente para diferencial descendente.

Nota Las CPUs CS1D no admiten el refresco inmediato.


reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos D: Direccin de canal


Especifica el canal en el que el bit se pondr en ON o en OFF.
N: Bit de inicio
Especifica el bit que se pondr en ON o en OFF. N debe ser #0000 hasta
#000F (&0 hasta &15).

Especificaciones del
operando rea D N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511

192
Instrucciones de la salida de secuencia Seccin 3-4

rea D N
rea Bit Auxiliar A448 a A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indirectas @ D00000 hasta @ D32767
en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indirectas *D00000 hasta *D32767
en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta #000F
(binario) o bien &0 hasta
&15
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indirecto ,IR0 hasta ,IR15
utilizando registros de ndice 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047
,IR15
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Las funciones de SETB(532) y RSTB(533) se describen de forma separada a


continuacin.
Operacin de SETB(532)
SETB(532) pone en ON el bit N del canal D cuando la condicin de ejecucin
est en ON. El estado del bit no se ve afectado cuando la condicin de ejecu-
cin est en OFF. Al contrario que SET, SETB(532) puede poner en ON un bit
del rea DM o del rea EM.
15

Este bit se pone en ON.

Condicin de ejecucin ON
OFF

Bit N del canal D ON


OFF

Los bits puestos en ON por SETB(532) pueden ponerse en OFF con otra ins-
truccin, no solamente con RSTB(533).
SETB(532) slo se admite en las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

193
Instrucciones de la salida de secuencia Seccin 3-4

Operacin de RSTB(533)
RSTB(533) pone en OFF el bit N del canal D cuando la condicin de ejecu-
cin est en ON. El estado del bit no se ve afectado cuando la condicin de
ejecucin est en OFF. (Use SETB(532) para poner en ON el bit). Al contrario
que RST, RSTB(533) puede poner en OFF un bit del rea DM o del rea EM.
15

Este bit se pone en OFF.

ON
Condicin de OFF
ejecucin
Bit N del canal D ON
OFF

Los bits puestos en OFF por RSTB(533) pueden ponerse en ON con otras
instrucciones, no solamente con SETB(532).
RSTB(533) slo se admite en las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no est dentro del rango especificado de 0000
error hasta 000F (&0 hasta &15)..
OFF en el resto de los casos.

Precauciones SETB(532) y RSTB(533) no pueden configurar/restablecer temporizadores y


contadores.
Cuando se programa SETB(532) o RSTB(533) entre IL(002) y ILC(003) o
JMP(004) y JME(005), el estado del bit especificado no cambiar si la sec-
cin del programa est bloqueada o saltada, es decir, cuando la condicin de
bloqueo o la condicin de salto est en OFF.
SETB(532) y RSTB(533) tienen variaciones de refresco inmediato
(!SETB(532) y !RSTB(533)). Cuando se ha especificado un bit de salida
externo en una de estas instrucciones, cualquier cambio en el bit especifi-
cado se refrescar cuando se ejecute la instruccin y se reflejar inmediata-
mente en el bit de salida. (Los cambios no se reflejarn inmediatamente si el
bit est asignado a una Unidad de E/S de alta densidad del Grupo 2, una Uni-
dad especial de E/S de alta densidad, o una Unidad montada en un bastidor
esclavo de E/S remoto SYSMAC BUS).
Diferencias entre SET/RSET y SETB(532)/RSTB(533)
Las instrucciones SET y RSET operan en algunos casos de forma diferente a
SETB(532) y RSTB(533).
1. Las instrucciones operan de la misma manera cuando el bit especificado
est en las reas CIO, W, H, o A.
2. Las instrucciones SETB(532) y RSTB(533) pueden controlar bits en las
reas DM y EM, al contrario que SET y RSET.
Diferencias entre OUTB(534) y SETB(532)/RSTB(533)
La instruccin OUTB(534) opera en algunos casos de forma diferente a
SETB(532) y RSTB(533).
1. Las instrucciones SETB(532) y RSTB(533) cambian el estado del bit es-
pecificado slo cuando su condicin de ejecucin est en ON. Estas ins-
trucciones no afectan al estado del bit especificado cuando su condicin
de ejecucin est en OFF.

194
Instrucciones de la salida de secuencia Seccin 3-4

2. La instruccin OUTB(534) pone en ON el bit especificado cuando su con-


dicin de ejecucin est en ON y pone en OFF el bit especificado cuando
su condicin de ejecucin est en OFF.
3. Las entradas set y reset para una instruccin KEEP(011) deben progra-
marse con la instruccin, pero las instrucciones SETB(532) y RSTB(533)
pueden programarse de manera completamente independiente. Adems,
puede utilizarse el mismo bit como operando en cualquier cantidad de ins-
trucciones SETB(532) y RSTB(533).
000000
SETB El bit 02 de D00000 se pone en
D00000 ON cuando CIO 000000 est
&2 en ON.
000001
RSTB El bit 02 de D00000 se pone en
D00000
OFF cuando CIO 000001 est
&2
en ON.

3-4-8 SINGLE BIT OUTPUT: OUTB(534)


Empleo OUTB(534) entrega el estado de la condicin de ejecucin de la instruccin al
bit especificado. OUTB(534) puede controlar un bit en el rea DM o EM, lo
que no ocurre en el caso de OUT.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
Smbolos de diagrama de rels

OUTB(534)
D: Direccin de canal
D N: Nmero de bit
N
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON OUTB(534)
Se ejecuta una vez en el diferencial ascendente @OUTB(534)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato (vase la nota). !OUTB(534)

Nota Las CPUs CS1D no admiten el refresco inmediato.


reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
No se admite OK OK OK

Operandos D: Direccin de canal


Especifica el canal que contiene el bit a controlar.
N: Bit de inicio
Especifica el bit a controlar. N debe ser #0000 hasta #000F (&0 hasta &15).

Especificaciones del
operando rea D N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 a A959 A000 hasta A959
rea Temporizador T0000 hasta T4095

195
Instrucciones de la salida de secuencia Seccin 3-4

rea D N
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indirectas @ D00000 hasta @ D32767
en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indirectas *D00000 hasta *D32767
en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta #000F
(binario) o bien &0 hasta
&15
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indirecto ,IR0 hasta ,IR15
utilizando registros de ndice 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047
,IR15
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Cuando la condicin de ejecucin est en ON, OUTB(534) pone en ON el bit


N del canal D. Cuando la condicin de ejecucin est en OFF, OUTB(534)
pone en OFF el bit N del canal D.
15 N 0
D

Este bit se pone en


OFF.
ON
Condicin de
ejecucin OFF

ON
Bit N del canal D
OFF

Si no se utiliza la versin con refresco inmediato, el estado de la condicin de


ejecucin (flujo de seal) se escribe en el bit especificado de la memoria de
E/S. Si se utiliza la versin con refresco inmediato, el estado de la condicin
de ejecucin (flujo de seal) tambin se escribe en el terminal de salida de la
Unidad de salida bsica adicionalmente al bit de salida de la memoria de E/S.
OUTB(534) slo se admite en las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Indicadores No hay indicadores afectados por esta instruccin.

Precauciones Puede especificarse refresco inmediato (!OUTB(534)). Una instruccin de


refresco inmediato actualiza el estado del terminal de salida justo despus de
que la instruccin sea ejecutada en un bit de salida asignado a una Unidad
de salida bsica (pero no para Unidades de salida bsicas en bastidores

196
Instrucciones del control de secuencia Seccin 3-5

esclavos o Unidades de entrada multipunto C200H Grupo 2), al mismo


tiempo que escribe el estado de la condicin de ejecucin (flujo de seal) en
el bit de salida especificado de la memoria de E/S.
Cuando OUTB(534) se programa entre IL(002) y ILC(003), el bit especificado
se pone en OFF si la seccin del programa est bloqueada. (Esto es equiva-
lente a una instruccin OUT en una seccin de programa bloqueada).
Cuando se especifica un canal para el nmero de bit (N), slo se utilizan los
bits 00 hasta 03 de N. Por ejemplo, si N contiene FFFA hex, OUTB(534) con-
trolar el bit 10 del canal D.

Ejemplo
000000
OUTB
El bit 10 de D00000 se pone en
D00000
OFF cuando CIO 000000 est
&10
en OFF.

3-5 Instrucciones del control de secuencia


3-5-1 END: END(001)
Empleo Indica el final de un programa.

Smbolo de diagrama de
rels END(001)
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON END(001)
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite No se admite No se admite OK

Descripcin END(001) completa la ejecucin de un programa para ese ciclo. No se ejecu-


tarn instrucciones que se hayan escrito despus de END(001).
La ejecucin pasa al programa con el siguiente nmero de tarea. Cuando el
programa que se est ejecutando tiene el nmero de tarea ms alto del pro-
grama, END(001) marca el final del programa principal global.

197
Instrucciones del control de secuencia Seccin 3-5

Tarea 1 Programa A

Al siguiente nmero
de tarea

Tarea 2 Programa B

Al siguiente nmero
de tarea

Tarea n Programa Z

Final del programa


principal

Refresco de E/S

Precauciones Coloque siempre END(001) al final de cada programa. Se producir un error


de programacin si no hay una instruccin END(001) en el programa.

3-5-2 NO OPERATION: NOP(000)


Empleo Esta instruccin no tiene funcin. (No se ejecuta procesamiento para
NOP(000)).

Smbolo de diagrama de No hay smbolo de diagrama de rels asociado con NOP(000).


rels

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON NOP(000)
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Descripcin No se realiza procesamiento para NOP(000), pero esta instruccin puede uti-
lizarse para dejar lneas en el programa en las que se insertarn instruccio-
nes ms adelante. Cuando se inserten las instrucciones ms tarde no se
producirn modificaciones en las direcciones de programa.
Indicadores Ningn indicador se ve afectado por NOP(000).

Precauciones NOP(000) solamente puede usarse con visualizacin de nemnicos, no con


programas de diagramas de rels.

198
Instrucciones del control de secuencia Seccin 3-5

3-5-3 Resumen de instrucciones de enclavamiento


Instrucciones de Las siguientes combinaciones de instrucciones pueden utilizarse para blo-
enclavamiento quear salidas en una seccin de programa.
INTERLOCK e INTERLOCK CLEAR (IL(002) e IL(003))
MULTI-INTERLOCK DIFFERENTIATION HOLD y MULTI-INTERLOCK
CLEAR (MILH(517) y MILC(519))*
Nota MILH(517) retiene el estado del indicador de diferencial, de tal ma-
nera que las instrucciones de diferenciacin que estaban bloquea-
das se ejecutan despus de eliminar el enclavamiento.
MULTI-INTERLOCK DIFFERENTIATION RELEASE y MULTI-INTER-
LOCK CLEAR (MILR(518) y MILC(519))*
Nota MILR(518) no retiene el estado del indicador de diferencial, de tal
manera que las instrucciones de diferenciacin que estaban blo-
queadas no se ejecutan despus de eliminar el enclavamiento.
* Estas instrucciones slo son admitidas por las CPUs de la serie CS/CJ
Ver. 2.0 posterior.

Diferencias entre Los enclavamientos normales (IL(002) e IL(003)) no pueden anidarse, pero los
enclavamientos y enclavamientos mltiples (MILH(517), MILR(518) y MILC(519)) pueden ani-
enclavamientos mltiples darse. La programacin con diagramas de rels puede simplificarse anidando
enclavamientos mltiples, tal y como se muestra en el siguiente diagrama.
Enclavamientos con MILH e MILC Enclavamientos con IL e ILC
a a
MILH IL
0
A1

A1
ILC
b
a b
MILH
IL
1

A2
A2
ILC
c
MILH a b c
2 IL

A3
A3
ILC
MILC
2

MILC
1

MILC
0

Diferencias entre Las instrucciones de diferencial (DIFU, DIFD, o instrucciones con un prefijo @
MILH(517) y MILR(518) o %) operan de forma diferente en enclavamientos creados con MILH(517) y
MILR(518).

199
Instrucciones del control de secuencia Seccin 3-5

La operacin de instrucciones de diferencial en un enclavamiento creado con


MILH(517) es idntica a la operacin en un enclavamiento creado con
IL(002).
Si desea obtener ms detalles, consulte 3-5-5 MULTI-INTERLOCK DIFFE-
RENTIATION HOLD, MULTI-INTERLOCK DIFFERENTIATION RELEASE, y
MULTI-INTERLOCK CLEAR: MILH(517), MILR(518) y MILC(519).

Precauciones No combine enclavamientos creados con instrucciones de enclavamiento


diferentes (IL-ILC, MILH-MILC, y MILR-MILC). Es posible que los enclava-
mientos no funcionen adecuadamente si se utilizan juntos diferentes mtodos
de enclavamiento. Encontrar ms detalles sobre la combinacin de instruc-
ciones en 3-5-5 MULTI-INTERLOCK DIFFERENTIATION HOLD, MULTI-
INTERLOCK DIFFERENTIATION RELEASE, y MULTI-INTERLOCK CLEAR:
MILH(517), MILR(518) y MILC(519).
Por ejemplo, una instruccin MILH(517) no puede insertarse entre IL(002) y
IL(003).

IL

MILH(517) est en un rea


MILH enclavada entre IL(002) e
ILC.(003).

ILC

Nota Los diferentes enclavamientos (IL-ILC, MILH-MILC, y MILR-MILC) pueden utili-


zarse juntos siempre que las secciones de programa enclavadas no se solapen.
Por ejemplo, pueden utilizarse los tres mtodos de enclavamiento sin solapa-
miento como se muestra en el siguiente diagrama.

IL

ILC

MILH

Pueden utilizarse diferentes


mtodos de enclavamiento
siempre que las reas
MILC bloqueadas no se solapen.

MILR

MILC

200
Instrucciones del control de secuencia Seccin 3-5

Diferencias entre La siguiente tabla muestra la diferencia entre enclavamientos (creados con
enclavamientos y saltos IL(002)/ILC(003), MILH(517)/MILC(519), o MILR(518)/MILC(519)) y saltos
creados con JMP(004)/JME(005).
Elemento Tratamiento en IL(002)/ILC(003), Tratamiento en
MILH(517)/MILC(519), o MILR(518)/ JMP(004)/JME(005)
MILC(519))
Ejecucin de instruccin No se ejecutan instrucciones que no sean No se ejecuta ninguna instruccin.
OUT, OUT NOT, OUTB(534) ni
instrucciones de temporizador.
Estado de salida en las Excepto para salidas en OUT, OUT NOT, Todas las salidas retienen su estado
instrucciones OUTB(534), e instrucciones de temporizador, anterior.
todas las salidas retienen su estado anterior.
Bits en OUT, OUT NOT, OFF Todas las salidas retienen su estado
OUTB(534) anterior.
Estado de las instrucciones Reset Los temporizadores en funcionamiento
de temporizador (TIM, TIMX(550), TIMH(015), TIMHX(551),
(excepto (TTIM(087), TMHH(540), TMHHX(552) solamente) con-
TTIMX(555), MTIM(543) y tinan temporizando ya que los PV se
MTIMX(554)) actualizan incluso cuando la instruccin de
temporizador no est siendo ejecutada.

3-5-4 INTERLOCK e INTERLOCK CLEAR: IL(002) e ILC(003)


Empleo Enclava todas las salidas entre IL(002) e ILC(003) cuando la condicin de
ejecucin para IL(002) est en OFF. IL(002) e ILC(003) se suelen utilizar en
parejas.

Smbolos de diagrama de
rels IL(002)

ILC(003)

Variaciones
Variaciones Bloquea si est en OFF/No bloquea si est en ON IL(002)
Especificacin de refresco inmediato Incompatible

Variaciones Se ejecuta en cada ciclo con condicin ON ILC(003)


Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite No se admite OK OK

Descripcin Cuando la condicin de ejecucin para IL(002) est en OFF, las salidas para
todas las instrucciones entre IL(002) e ILC(003) se bloquean. Cuando la con-
dicin de ejecucin para IL(002) est en ON, las instrucciones entre IL(002) e
ILC(003) se ejecutan normalmente.
Condicin de Condicin de
Condicin ejecucin ON ejecucin OFF
de ejecucin

Ejecucin Salidas
Seccin enclavada normal enclavadas.
del programa

201
Instrucciones del control de secuencia Seccin 3-5

La siguiente tabla muestra el tratamiento de varias salidas en una seccin


enclavada entre IL(002) e ILC(003).
Instruccin Tratamiento
Bits especificados en OUT, OUT NOT, o bien OFF
OUTB(534)
TIM, TIMX(550), TIMH(015), Indicador de OFF (reset)
TIMHX(551), TMHH(540), finalizacin
TMHHX(552), TIML(542) y PV Valor configurado de
TIMXL(553) tiempo (reset)
Bits/canales especificados en el resto de las Retienen el estado previo.
instrucciones (vase la nota).

Nota Los bits y canales del resto de las instrucciones incluyendo TTIM(087),
TTIMX(555), MTIM(543), MTIMX(554), SET, RSET, CNT, CNTX(546),
CNTR(012), CNTRX(548), SFT, y KEEP(011) retienen su estado previo.
Si hay bits que desea que se mantengan en ON en una seccin de programa
enclavada, configure estos bits como ON con SET justo antes de IL(002).
A menudo es ms eficiente conmutar una seccin de programa con IL(002) e
ILC(003). Cuando se controlan varios procesos con la misma condicin de
ejecucin son necesarios menos pasos de programa para poner estos proce-
sos entre IL(002) y ILC(003).

La siguiente tabla muestra las diferencias entre IL(002)/ILC(003) y JMP(004)/


JME(005).
Elemento Tratamiento en Tratamiento en
IL(002)/ILC(003) JMP(004)/JME(005)
Ejecucin de instruccin No se ejecutan instrucciones que no No se ejecuta ninguna instruccin.
sean OUT, OUT NOT, OUTB(534) ni
instrucciones de temporizador.
Estado de salida en las instrucciones Excepto para salidas en OUT, OUT Todas las salidas retienen su estado
NOT, OUTB(534), e instrucciones de anterior.
temporizador, todas las salidas retienen
su estado anterior.
Bits en OUT, OUT NOT, OUTB(534) OFF Todas las salidas retienen su estado
anterior.
Estado de las instrucciones de Reset Los temporizadores en funcionamiento
temporizador (TIM, TIMX(550), TIMH(015),
(excepto (TTIM(087), TTIMX(555), TIMHX(551), TMHH(540), TMHHX(552)
MTIM(543) y MTIMX(554)) solamente) continan temporizando ya
que los PV se actualizan incluso cuando
la instruccin de temporizador no est
siendo ejecutada.

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = OFF o sin cambios (vase la nota).
Indicador de negativo N OFF o sin cambios (vase la nota).

202
Instrucciones del control de secuencia Seccin 3-5

Nota En las CPUs CS1 y CJ1 los indicadores de igual y negativo se ponen en OFF.
En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, los indicadores de igual y nega-
tivo se mantienen sin cambios.

Precauciones El tiempo de ciclo no se acorta cuando una seccin del programa se enclava
porque las instrucciones enclavadas se ejecutan internamente.
La operacin de DIFU(013), DIFD(014) y las instrucciones de diferencial no
depende nicamente del estado de la condicin de ejecucin cuando se pro-
graman entre IL(002) e ILC(003). Los cambios en la condicin de ejecucin
para DIFU(013), DIFD(014) o una instruccin de diferencial no se registran si
DIFU(013) o DIFD(014) estn en una seccin enclavada y la condicin de
ejecucin para IL(002) est en OFF.
En general, IL(002) e ILC(003) se utilizan en pares, aunque es posible utilizar
ms de una IL(002) con una nica ILC(003) como se muestra en el siguiente
diagrama. Si IL(002) e ILC(003) no se utilizan en pares aparecer un mensaje
de error cuando se realice una comprobacin del programa, pero el programa
se ejecutar correctamente.

Condicin de Seccin de programa


ejecucin
a b A B
OFF ON Enclavada Enclavada
OFF OFF Enclavada Enclavada
ON OFF No enclavada Enclavada
ON ON No enclavada No enclavada

IL(002) e ILC(003) no pueden anidarse, tal y como se ve en el siguiente


diagrama. (Use MILH(517)/MILR(518) y MILC(519) cuando sea necesario
para anidar enclavamientos).

203
Instrucciones del control de secuencia Seccin 3-5

Ejemplos Cuando CIO 000000 est en OFF en el siguiente ejemplo, todas las salidas
entre IL(002) e ILC(003) estn bloquedadas. Cuando CIO 000000 est en ON
en el siguiente ejemplo, las instrucciones entre IL(002) e ILC(003) se ejecu-
tan normalmente.

CIO 000000 CIO 000000


ON OFF

OFF

OFF

Ejecucin Salidas
normal enclavadas
Reset

Retenida

Retenida

204
Instrucciones del control de secuencia Seccin 3-5

3-5-5 MULTI-INTERLOCK DIFFERENTIATION HOLD, MULTI-INTERLOCK


DIFFERENTIATION RELEASE, y MULTI-INTERLOCK CLEAR:
MILH(517), MILR(518) y MILC(519)
Empleo Bloquea todas las salidas entre MILH(517) (o MILR(518)) y MILC(519)
cuando la condicin de ejecucin de MILR(517) (o MILR(518)) est en OFF.
MILH(517) (o MILR(518)) y MILC(519) se utilizan normalmente en pares.
Al contrario que en el caso de los enclavamientos IL(002)/ILC(003), los encla-
vamientos MILH(517)/MILC(519) y MILR(518)/MILC(519) pueden anidarse.
La operacin de instrucciones de diferencial es diferente para enclavamientos
creados con MILH(517) y MILR(518).
Estas instrucciones slo son admitidas por las CPUs de la serie CS/CJ Ver.
2.0 posterior.

Smbolos de diagrama de
rels MILH(517)
N N: Nmero de enclavamiento
D D: Bit de estado de enclavamiento

MILR(518)
N N: Nmero de enclavamiento
D D: Bit de estado de enclavamiento

MILC(519)
N N: Nmero de enclavamiento

Operandos N: Nmero de enclavamiento


El nmero de enclavamiento debe estar entre 0 y 15. Haga coincidir el
nmero de enclavamiento de la instruccin MILH(517) (o MILR(518)) con el
nmero de la instruccin MILC(519) correspondiente.
Los nmeros de enclavamiento pueden utilizarse en cualquier orden.
D: Bit de estado de enclavamiento
ON cuando la seccin del programa no est enclavada.
OFF cuando la seccin del programa est enclavada.
Cuando se activa el enclavamiento, el bit de estado de enclavamiento puede
establecerse de forma forzada para liberar el enclavamiento. Opuestamente
cuando el enclavamiento no est activado, el bit de estado de enclavamiento
puede resetearse de forma forzada para activar el enclavamiento.
Especificaciones del
operando rea N D
rea CIO --- CIO 000000 hasta
CIO 614315
rea de Trabajo --- W00000 hasta W51115
rea de bit en Espera --- H00000 hasta H51115
rea Bit Auxiliar --- A00000 hasta A95915
rea Temporizador --- ---
rea Contador --- ---
rea DM --- ---
rea EM sin banco --- ---
rea EM con Banco --- ---
Direcciones DM/EM --- ---
indirectas en binario

205
Instrucciones del control de secuencia Seccin 3-5

rea N D
Direcciones DM/EM --- ---
indirectas en BCD
Constantes 0 a 15 ---
Registros de datos --- ---
Registros de ndice --- ---
Direccionamiento --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0
registros de ndice hasta 2048 hasta +2047
,IR15
DR0 hasta DR15, IR0 hasta
IR15

Variaciones
Variaciones Enclavamiento si est en OFF/No enclavamiento MILH(517) y
si est en ON MILR(518)
Especificacin de refresco inmediato Incompatible

Variaciones Se ejecuta en cada ciclo con condicin ON MILC (519)


Especificacin de refresco inmediato Incompatible

reas de programa La siguiente tabla muestra las reas de programa aplicables para MILH(517),
aplicables MILR(518) y MILC(519).
reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite No se admite OK OK

Descripcin Si la condicin de ejecucin de MILH(517) (o MILR(518)) con nmero de


enclavamiento N est en OFF, se bloquean las salidas de todas las instruccio-
nes entre la instruccin MILH(517)/MILR(518) y la siguiente instruccin
MILC(519) con nmero de enclavamiento N.
Si la condicin de ejecucin de MILH(517) (o MILR(518)) con nmero de
enclavamiento N est en ON, las instrucciones entre la instruccin
MILH(517)/MILR(518) y la siguiente instruccin MILC(519) con nmero de
enclavamiento N se ejecutan normalmente.
Estado de enclavamiento
La siguiente tabla muestra el tratamiento de varias salidas en una seccin
enclavada entre una instruccin MILH(517)/MILR(518) y la siguiente
MILC(519).
Instruccin Tratamiento
Bits especificados en OUT, OUT NOT, o bien OFF
OUTB(534)
TIM, TIMX(550), TIMH(015), Indicador de OFF (reset)
TIMHX(551), TMHH(540), finalizacin
TMHHX(552), TIML(542) y PV Valor configurado de
TIMXL(553) tiempo (reset)
Bits/canales especificados en el resto de las Retienen el estado previo.
instrucciones (vase la nota).

Nota Los bits y canales del resto de las instrucciones incluyendo TTIM(087),
TTIMX(555), MTIM(543), MTIMX(554), SET, RSET, CNT, CNTX(546),
CNTR(012), CNTRX(548), SFT, y KEEP(011) retienen su estado previo.

206
Instrucciones del control de secuencia Seccin 3-5

La instruccin MILH(517)/MILR(518) pone en OFF el bit de estado de encla-


vamiento (operando D) cuando se activa el enclavamiento y pone en ON el bit
cuando no se activa el enclavamiento. Por lo tanto, el bit de estado de encla-
vamiento puede monitorizarse para comprobar si est o no activado el encla-
vamiento para un nmero de enclavamiento concreto.
Condicin de entrada
ON (operacin normal) Condicin de entrada OFF

MILH
Condicin n
de entrada d
Operacin Salidas enclavadas.
normal (salidas OFF, temporizadores
Bit de reseteados, etc.)
Seccin de estado de Bit de estado de
programa enclavada enclava- enclavamiento (d) OFF
miento (d)
ON

MILC
n

Anidamiento
Los enclavamientos se anidan cuando una seccin de programa enclavada
(combinacin de MILH(517)/MILR(518) y MILC(519)) se coloca dentro de otra
seccin de programa enclavada (combinacin de MILH(517)/MILR(518) y
MILC(519)). Los enclavamientos pueden anidarse hasta 16 niveles.
El anidamiento puede utilizarse para los siguientes tipos de aplicaciones.
Ejemplo 1
Enclavamiento del programa completo con una condicin y enclavamiento
de una parte del programa con otra condicin (1 nivel de anidamiento)
Enclavamiento global
(Parada de
A1 (Procesamiento de perifricos)

Enclavamiento parcial
(Cinta transportadora

A2 (Operacin de la
cinta transportadora)

A1 y A2 se bloquean cuando el botn de parada de emergencia est


en ON.
A2 se bloquea cuando el estado RUN de la cinta transortadora es
OFF.

207
Instrucciones del control de secuencia Seccin 3-5

Enclavamiento global
(Parada de emergencia)
Cuando el botn de parada de emergencia
MILH est en ON (condicin de entrada OFF),
0 tanto A1 como A2 se bloquean.
Cuando el botn de parada de emergencia
est en OFF (condicin de entrada ON),
A1 se ejecuta normalmente y A2 es
A1 (Procesamiento de perifricos) controlada por el interruptor RUN de la
cinta como se describe a continuacin.
Enclavamiento parcial
(Cinta transportadora en estado RUN)
MILH Cuando el interruptor RUN de la cinta
transportadora est en OFF (condicin
1 de entrada OFF), A2 se bloquea.
Cuando el interruptor RUN de la cinta
transportadora est en ON (condicin de
entrada ON), A2 se ejecuta
A2 (Operacin de la
cinta transportadora) normalmente.

MILC
1

MILC
0

Ejemplo 2
Enclavamiento del programa completo con una condicin y enclavamiento
de dos partes solapadas del programa con otras condiciones (2 niveles de
anidamiento)
Enclavamiento global
(Parada de emergencia)
A1 (Procesamiento de perifricos)
Enclavamiento parcial
(Cinta transportadora
en estado RUN)
A2 (Operacin de la cinta transportadora)
Enclavamiento parcial
(Brazo en estado RUN)
A3 (Operacin del brazo)

A1, A2 y A3 se bloquean cuando el botn de parada de emergencia


est en ON.
A2 y A3 se bloquean cuando el estado RUN de la cinta transportadora
es OFF.
A3 se bloquea cuando el estado RUN del brazo es OFF.

208
Instrucciones del control de secuencia Seccin 3-5

Enclavamiento global
(Parada de emergencia)

MILH Cuando el botn de parada de emergencia


0 est en ON (condicin de entrada OFF), A1,
A2 y A3 se bloquean.
Cuando el botn de parada de emergencia
est en OFF (condicin de entrada ON), A1 se
ejecuta normalmente y A2 y A3 son
A1 (Procesamiento de perifricos)
controladas por el interruptor RUN de la cinta y
el interruptor RUN del brazo conmuta como se
Enclavamiento parcial describe a continuacin.
(Cinta transportadora en estado RUN)
MILH Cuando el interruptor RUN de la cinta
1 transportadora est en OFF (condicin de
entrada OFF), A2 y A3 se bloquean.
Cuando el interruptor RUN de la cinta
transportadora est en ON (condicin de entrada
A2 (Operacin de la ON), A2 se ejecuta normalmente y A3 es
cinta transportadora) controlada por el interruptor RUN del brazo como
se describe a continuacin.
Enclavamiento parcial
(Brazo en estado RUN)

MILH Cuando el interruptor RUN del brazo est en


2 OFF (condicin de entrada OFF), A3 se
bloquea.
Cuando el interruptor RUN del brazo est en
ON (condicin de entrada ON), A3 se
ejecuta normalmente.
A3 (Operacin del brazo)

MILC
2

MILC
1

MILC
0

Diferencias entre MILH(517) y MILR(518)


Las instrucciones de diferencial (DIFU, DIFD, o instrucciones con un prefijo @
o %) operan de forma diferente en enclavamientos creados con MILH(517) y
MILR(518).
Cuando una seccin del programa se bloquea con MILR(518), una instruc-
cin de diferencial no se ejecutar cuando se borre el enclavamiento, incluso
si la condicin de diferencial fue activada durante el enclavamiento (compa-
rando el estado de la condicin de ejecucin cuando se inicia el enclava-
miento con su estado cuando se elimina el enclavamiento).
Cuando una seccin del programa se bloquea con MILH(517), una instruc-
cin de diferencial s se ejecutar cuando se borre el enclavamiento si la con-
dicin de diferencial fue activada durante el enclavamiento (comparando el
estado de la condicin de ejecucin cuando se inicia el enclavamiento con su
estado cuando se elimina el enclavamiento).

209
Instrucciones del control de secuencia Seccin 3-5

Instruccin Operacin de instrucciones de diferencial


MILH(517) Una instruccin de diferencial (DIFU, DIFD, o
MULTI-INTERLOCK DIFFE- instruccin con un prefijo @ o %) ser ejecu-
RENTIATION HOLD tada despus de que se haya eliminado el
enclavamiento si la condicin de diferencial de
la instruccin fue establecida mientras la ins-
truccin estaba bloqueada. (El estado de la
condicin de ejecucin cuando se inici el
enclavamiento se compara con su estado
cuando fue eliminado el enclavamiento).
MILR(518) Una instruccin de diferencial (DIFU, DIFD, o
MULTI-INTERLOCK DIFFE- instruccin con un prefijo @ o %) no ser eje-
RENTIATION RELEASE cutada despus de que se haya eliminado el
enclavamiento incluso si la condicin de dife-
rencial de la instruccin fue establecida mien-
tras la instruccin estaba bloqueada.

Operacin de instrucciones de diferencial en un enclavamiento


MILH(517)
En el caso de que haya una instruccin de diferencial (DIFU, DIFD o una
instruccin con un prefijo @ o %) entre MILH(517) y la correspondiente
instruccin MILC(519), dicha instruccin ser ejecutada una vez elimina-
do el enclavamiento si estaba establecida la condicin diferencial de la ins-
truccin. (El sistema compara el estado de la condicin de ejecucin
cuando se inici el enclavamiento con su estado cuando fue eliminado el
enclavamiento).
De la misma manera, una instruccin de diferencial se ejecutar si su con-
dicin de ejecucin fue establecida en el mismo momento que el enclava-
miento se iniciaba o eliminaba.
Otras condiciones del programa pueden causar que la condicin de dife-
rencial se resetee incluso si fue establecida durante el enclavamiento. En
este caso, la instruccin de diferencial no se ejecutar cuando se borre el
enclavamiento.
Ejemplo
Cuando se est utilizando una instruccin DIFFERENTIATE UP (DI-
FU(013)) y la condicin de entrada est en OFF cuando el enclava-
miento se inicia y en ON cuando se elimina el enclavamiento,
DIFU(013) ser ejecutada cuando se borre el enclavamiento. (Las
instrucciones de diferencial operan de la misma manera en el encla-
vamiento MILH(517) que en el enclavamiento IL(002)).
000000
MILH
0

1. Cuando CIO 000000 est en OFF (se inicia el enclavamiento), la condicin de entrada de DIFU CIO 000001 est en OFF.
2. La condicin de entrada de DIFU CIO 000001 cambia de OFF a ON mientras CIO 000000 est en OFF (DIFU bloqueada),
3. Cuando CIO 000000 cambia de OFF a ON (enclavamiento eliminado), DIFU se ejecuta si CIO 000001 an est en ON.
000001
DIFU
001000

MILC
0

210
Instrucciones del control de secuencia Seccin 3-5

Diagramas de tiempos
No bloqueada Bloqueada No bloqueada

ON
000000
OFF
Estado (OFF) al
inicio del
enclavamiento ON Condicin de diferencial establecida
ON
000001
OFF
OFF Estado (ON) cuando se
Enclavamiento MILH(517) elimina el enclavamiento
DIFU(013) se ejecuta.

ON
001000
OFF

1 ciclo

Operacin de instrucciones de diferencial en un enclavamiento


MILR(518)
En el caso de que haya una instruccin de diferencial (DIFU, DIFD o una
instruccin con un prefijo @ o %) entre MILR(518) y la correspondiente
instruccin MILC(519), dicha instruccin no ser ejecutada una vez elimi-
nado el enclavamiento incluso si estaba establecida la condicin diferen-
cial de la instruccin. (El sistema compara el estado de la condicin de
ejecucin en el ciclo cuando se inici el enclavamiento con su estado en
el ciclo cuando fue eliminado el enclavamiento).
De la misma manera, una instruccin de diferencial no se ejecutar si su
condicin de ejecucin fue establecida en el mismo momento que el en-
clavamiento se iniciaba o eliminaba.
Ejemplo
Cuando se est utilizando una instruccin DIFFERENTIATE UP (DI-
FU(013)) y la condicin de entrada est en OFF cuando el enclava-
miento se inicia y en ON cuando se elimina el enclavamiento,
DIFU(013) no ser ejecutada cuando se borre el enclavamiento.
000000
MILR
0

1. Cuando CIO 000000 est en OFF (se inicia el enclavamiento), la condicin de entrada de DIFU CIO 000001 est en OFF.
2. La condicin de entrada de DIFU CIO 000001 cambia de OFF a ON mientras CIO 000000 est en OFF (DIFU bloqueada),
3. Cuando CIO 000000 cambia de OFF a ON (enclavamiento eliminado), DIFU no se ejecuta aunque CIO 000001 an est en ON.
000001
DIFU
001000

MILC
0

211
Instrucciones del control de secuencia Seccin 3-5

Diagramas de tiempos
No bloqueada Bloqueada No bloqueada

ON
000000
OFF

ON
ON
000001
OFF
OFF

Enclavamiento MILR(518)
ON DIFU(013) no se ejecuta.
001000
OFF

Control del estado de enclavamiento desde un dispositivo de


programacin
Puede activarse o liberarse un enclavamiento manualmente mediante un
reset o establecimiento forzados del bit de estado del enclavamiento (especi-
ficado con operando D de MILH(517) y MILR(518)) desde un dispositivo de
programacin. El estado forzado del bit de estado del enclavamiento tiene
prioridad y sobrescribe el estado de enclavamiento calculado por la ejecucin
del programa.
Forzar a set: Libera el enclavamiento.
OFF
MILH
n CIO 010000 est en OFF cuando se
010000 activa el enclavamiento.

Seccin de programa
controlada mediante Si CIO 010000 se fuerza a set (ON),
enclavamiento el enclavamiento se libera.

MILC
n

Forzar a reset: Activa el enclavamiento.


ON
MILH
n
010000 CIO 010000 est en ON cuando no se activa el enclavamiento.

Seccin de programa
controlada mediante Si CIO 010000 se fuerza a reset (OFF), el enclavamiento se activa.
enclavamiento

MILC
n

Nota La operacin del programa puede conmutarse de forma ms eficiente utili-


zando enclavamientos con MILH(517) o MILR(518).
En lugar de conmutar el procesamiento con condiciones conmutadas, inserte
una instruccin MILH(517) o MILR(518) antes de cada proceso y una instruc-
cin MILC(519) despus de cada proceso.

212
Instrucciones del control de secuencia Seccin 3-5

a a
A1 MILH
0

b
A2 A1

b
MILH
1

A2

MILC
1

MILC
0

Al contrario que los enclavamientos IL(002), los enclavamientos MILH(517) y


MILR(518) pueden anidarse, de tal manera que la operacin de programas
similares ser diferente si se utilizan MILH(517) o MILR(518) en lugar de
ILC(002).
Programa con enclavamientos MILH(517)/MILC(519)
a
MILH
0
010000

A1

b
MILH
1
010001

A2

MILC
1

A3

MILC
0

Condicin de Seccin de programa


ejecucin
a b A1 A2 A3
OFF ON Bloqueada Bloqueada No bloqueada
OFF
ON OFF No bloqueada Bloqueada No bloqueada
ON ON No bloqueada No bloqueada No bloqueada

213
Instrucciones del control de secuencia Seccin 3-5

Programa con enclavamientos IL(002)/ILC(003)


a
IL

A1

b
IL

A2

ILC

Esta seccin del programa


A3 no est controlada por el
enclavamiento.

Esta instruccin
ILC ILC(003) es ignorada,
as que ...

Condicin de Seccin de programa


ejecucin
a b A1 A2 A3
OFF ON Enclavada Enclavada No enclavada
OFF (No controlada por
ON OFF No enclavada Enclavada el enclavamiento
IL(002)/ILC(003)).
ON ON No enclavada No enclavada

Si hay bits que desea que se mantengan en ON en una seccin de programa


enclavada mediante MILH(517) o MILR(518), configure estos bits en ON con
SET justo antes de la instruccin MILH(517) o MILR(518).

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error

Precauciones El tiempo de ciclo no se acorta cuando una seccin del programa se bloquea
mediante MILH(517) o MILR(518) porque las instrucciones enclavadas se
ejecutan internamente.

214
Instrucciones del control de secuencia Seccin 3-5

Cuando anide enclavamientos, asigne nmeros de enclavamiento de tal


manera que la seccin enclavada del programa no exceda la seccin del pro-
grama exterior.
a
MILH
0

A1

b
MILH
1

A2

MILC
0

A3
La seccin del programa
anidada no debe ir ms all
MILC de la seccin exterior del
1 programa.

Condicin de Seccin de programa


ejecucin
a b A1 A2 A3
OFF ON Enclavada Enclavada No enclavada
OFF
ON OFF No enclavada Enclavada Enclavada
ON No enclavada No enclavada No enclavada

215
Instrucciones del control de secuencia Seccin 3-5

Pueden insertarse otras instrucciones entre las instrucciones MILC(519), tal y


como se muestra en el siguiente diagrama.
a
MILH
0
010000

A1

b
MILH
1
010001

A2

MILC
1 Pueden insertarse otras instrucciones
entre dos instrucciones MILC(519). En
este caso, las secciones A1 y A3 operan
A3 conjuntamente. (Estn enclavadas cuando
"a" est en OFF, sin tener en cuenta el
estado ON/OFF de "b".)
MILC
0

Si hay una instruccin ILC(003) entre una pareja formada por MILH(517) y
MILC(519), la seccin del programa entre MILH(517) y ILC(003) se encla-
var.
a
MILH Cuando la condicin de entrada "a"
est en OFF, slo se bloquea la
0 seccin del programa A1.

A1
Si hay una instruccin ILC(003),
el enclavamiento se elimina en
ILC ese punto.

A2

La instruccin MILC(519) se ignora.


MILC
0

216
Instrucciones del control de secuencia Seccin 3-5

Si hay una instruccin ILC(003) entre una pareja MILR(518) y MILC(519), la


instruccin ILC(003) se ignora, y la seccin del programa completa entre
MILR(518) y MILC(519) se bloquea.
a
MILR Cuando la condicin de entrada "a"
est en OFF, se bloquean las
0 secciones del programa A1 y A2.

A1

La instruccin ILC(003) se ignora.


ILC

A2

MILC
0

Si hay otra instruccin MILH(517) o MILR(518) con el mismo nmero de


enclavamiento entre una pareja MILH(517) y MILC(519) y el primer enclava-
miento de instruccin MILH(517) est activo, el segundo MILH(517)/
MILR(518) no operar.
Si hay otra instruccin MILH(517) o MILR(518) con el mismo nmero de
enclavamiento entre una pareja MILH(517) y MILC(519) y el primer enclava-
miento de instruccin MILH(517) no est activo, el segundo MILH(517)/
MILR(518) operar normalmente.
a
MILH Cuando la condicin de entrada "a" est
en OFF, se bloquean las secciones del
0 programa A1 y A2, incluso cuando la
condicin de entrada "b" est en ON.

A1

b
MILH Cuando la condicin de entrada "a"
est en ON y la "b" en OFF, slo se
0
bloquea la seccin del programa A2.

A2

MILC
0

Nota Los enclavamientos MILR(518) operan de la misma manera que si hubiera


otra instruccin MILH(517) o MILR(518) con el mismo nmero de enclava-
miento entre una pareja MILR(518) y MILC(519).
Si hay una instruccin MILC(519) con un nmero de enclavamiento diferente
entre una pareja MILH(517)/MILR(518) y MILC(519), esa instruccin
MILC(519) se ignorar.

217
Instrucciones del control de secuencia Seccin 3-5

a
MILH Cuando la condicin de entrada "a"
est en OFF, se bloquean las
0 secciones del programa A1 y A2.

A1

Esta instruccin MILC(519) se ignora.


MILC
1

A2

MILC
0

Si hay una instruccin MILH(517) entre una pareja IL(002) y ILC(003) y el


enclavamiento IL(002) est activado, la instruccin MILH(517) no tiene efecto.
En este caso, la seccin de programa entre IL(002) y ILC(003) se bloquea.
Si el enclavamiento IL(002) no est activado y la condicin de ejecucin de la
instruccin MILH(517) (b en este caso) est en OFF, la seccin de programa
entre MILH(517) y ILC(003) se bloquea.
a
IL Cuando la condicin de entrada "a" est
en OFF, se bloquean las secciones del
programa A1 y A2.
A1

b
Si la seccin de programa no est
MILH bloqueada mediante IL(002) y "b"
0 est en OFF, la seccin de
programa A2 se bloquea.

A2

ILC

Si hay una instruccin MILC(519) entre una pareja IL(002) y ILC(003), la ins-
truccin MILC(519) se ignora, y la seccin del programa completa entre
IL(002) y ILC(003) se bloquea.
a
IL Cuando la condicin de entrada "a"
est en OFF, se bloquean las
secciones del programa A1 y A2.
A1

La instruccin MILC(519) se ignora.


MILC
0

A2

ILC

Ejemplos Cuando W00000 y W00001 estn en ON, las instrucciones entre MILH(517)
con el nmero de enclavamiento 0 y MILC(519) con el nmero de enclava-
miento 0 se ejecutan normalmente.

218
Instrucciones del control de secuencia Seccin 3-5

Cuando W00000 est en OFF, las instrucciones entre MILH(517) con el


nmero de enclavamiento 0 y MILC(519) con el nmero de enclavamiento 0
se bloquean.
Cuando W00000 est en ON y W00001 est en OFF, las instrucciones entre
MILH(517) con el nmero de enclavamiento 1 y MILC(519) con el nmero de
enclavamiento 1 se bloquean. El resto de las instrucciones se ejecutan nor-
malmente.
W00000 y W00001 W00000 ON y W00001
ambos ON W0000 OFF OFF
W00000
MILH
0
010000
Ejecutado
normalmente.
000001 000200
OFF

W00001
MILH
1 OFF
010001

000002 H0000
Ejecutado
normalmente.
Salidas
bloqueadas.
SET Retenido Salidas
bloqueadas.
000003

MILC
1

CNT
1 Ejecutado
Retenido
#0010 normalmente.

MILC
0

3-5-6 JUMP y JUMP END: JMP(004) y JME(005)


Empleo Si la condicin de ejecucin de JMP(004) est en OFF, la ejecucin del pro-
grama salta directamente a la primera JME(005) del programa con el mismo
nmero de salto. JMP(004) y JME(005) se utilizan en parejas.

Smbolos de diagrama de
rels JMP(004)

N N: Nmero de salto

JME(005)

N N: Nmero de salto

Variaciones
Variaciones Salta si est en OFF/No salta si est en ON JMP(004)
Especificacin de refresco inmediato Incompatible

219
Instrucciones del control de secuencia Seccin 3-5

Variaciones Se ejecuta en cada ciclo con condicin ON JME(005)


Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK No se admite OK OK
Operandos N: Nmero de salto
El nmero de salto debe ser desde 0000 hasta 03FF (&0 hasta &1.023 deci-
mal).
Nota Para CPUs CJ1M-CPU11 y CJ1M-CPU21, el nmero de salto debe estar en
el rango 0000 hasta 00FF hex o bien &0 hasta &255 decimal.
Especificaciones del
operando rea N
JMP(004) JME(005)
rea CIO CIO 0000 hasta CIO 6143 ---
rea de Trabajo W000 hasta W511 ---
rea de bit en Espera H000 hasta H511 ---
rea Bit Auxiliar A000 hasta A959 ---
rea Temporizador T0000 hasta T4095 ---
rea Contador C0000 hasta C4095 ---
rea DM D00000 hasta D32767 ---
rea EM sin banco E00000 hasta E32767 ---
rea EM con Banco En_00000 hasta En_32767 ---
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767 ---
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767 ---
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta
*En_32767
(n = 0 a C)
Constantes #0000 hasta #03FF (binario) #0000 hasta #03FF
o bien &0 hasta &1023 (binario) o bien &0 hasta
(vase la nota). &1023 (vase la nota).
Registros de datos DR0 hasta DR15 ---
Registros de ndice --- ---
Direccionamiento indirecto ,IR0 hasta ,IR15 ---
utilizando registros de 2048 hasta +2047, IR0
ndice hasta
2048 hasta +2047, IR15
DR0 hasta DR15, IR0 hasta
IR15

Nota Para CPUs CJ1M-CPU11 y CJ1M-CPU21, el rango es desde #0000 hasta


#00FF (binario) o bien &0 hasta &1023 (decimal).

Descripcin Cuando la condicin de ejecucin para JMP(004) est en ON, no se realiza


ningn salto y el programa se ejecuta consecutivamente segn est escrito.
Si la condicin de ejecucin de JMP(004) est en OFF, la ejecucin del pro-
grama salta directamente a la primera JME(005) del programa con el mismo
nmero de salto. Las instrucciones entre JMP(004) y JME(005) no se ejecutan,
de tal manera que el estado de las salidas entre JMP(004) y JME(005) se man-

220
Instrucciones del control de secuencia Seccin 3-5

tiene. En programas de bloques, las instrucciones entre JMP(004) y JME(005)


se omiten sin tener en cuenta el estado de la condicin de ejecucin.
Condicin de ejecucin
Instrucciones
saltadas

Las instrucciones de esta seccin no


Instrucciones se ejecutan y se mantiene el estado de
ejecutadas salida. El tiempo de ejecucin de estas
instrucciones se elimina.

Ya que todas las instrucciones entre JMP(004) y JME(005) se omiten cuando


la condicin de ejecucin para JMP(004) est en OFF, el tiempo de ciclo se
reduce en el tiempo total de ejecucin de las instrucciones omitidas. Por otro
lado, el procesamiento de NOP(000) se realiza para las instrucciones que se
encuentran entre JMP0(515) y JME0(516), de tal manera que el tiempo de
ciclo no se reduce tanto como en el caso de las instrucciones de salto.
La siguiente tabla compara las distintas instrucciones de salto.
Elemento JMP(004) CJP(510) CJPN(511) JMP0(515)
JME(005) JME(005) JME(005) JME0(516)
Condicin de ejecucin para salto OFF ON OFF OFF
Nmero permitido 1.024 en total Ilimitado
Procesamiento de instrucciones al saltar No se ejecuta. Procesamiento de
NOP(000)
Tiempo de ejecucin de instrucciones al Ninguno Igual que instruccio-
saltar nes NOP(000)
Estado de las salidas (bits y canales) al saltar Los bits y canales mantienen su estado previo.
Estado de temporizadores activos al saltar Los temporizadores siguen activos.
Procesamiento en programas de bloques Saltar siem- Saltar si en ON. Saltar si en No se admite.
pre. OFF.

Indicadores (JMP)
Nombre Etiqueta Operacin
Indicador de ER ON si N no est dentro del rango especificado de 0000
error hasta 03FF. (Vase la nota.)
ON si hay un JMP(004) en el programa sin un JME(005)
con el mismo nmero de salto.
ON si hay un JMP(004) en la tarea sin un JME(005) con el
mismo nmero de salto en la tarea.
OFF en el resto de los casos.

Nota Para CPUs CJ1M-CPU11 y CJ1M-CPU21, el rango es desde 0 hasta 255


(0000 hasta 00FF hex).

Precauciones Todas las salidas (bits y canales) en instrucciones saltadas retienen su


estado previo. Los temporizadores en funcionamiento (TIM, TIMX(550),
TIMH(015), TIMHX(551), TMHH(540) y TMHHX(552)) continan tempori-
zando ya que los PV se actualizan incluso cuando la instruccin de tempori-
zador no est siendo ejecutada.
Cuando hay dos o ms instrucciones JME(005) con el mismo nmero de
salto, slo ser vlida la instruccin con la direccin ms baja. El JME(005)
con la direccin de programa ms alta ser ignorado.

221
Instrucciones del control de secuencia Seccin 3-5

Cuando JME(005) precede a JMP(004) en el programa, la instruccin que se


encuentra entre JME(005) y JMP(004) se ejecutar repetidamente en el
momento en que JMP(004) est en OFF. Se producir un error de tiempo de
ciclo demasiado largo si la condicin de ejecucin no se pone en ON o
END(001) no se ejecuta dentro del tiempo mximo de ciclo.

La seccin A del programa se


ejecuta repetidamente
mientras la condicin de
ejecucin a est en OFF.

En programas de bloques, las instrucciones entre JMP(004) y JME(005) se


omiten siempre sin tener en cuenta el estado de la condicin de ejecucin de
JMP(004)..

Seccin de
programa
de bloques
JMP &1
a
JME &1

Las parejas JMP(004) y JME(005) deben estar en la misma tarea porque los
saltos entre tareas no estn permitidos. Ocurrir un error si una instruccin
JME(005) no se programa en la misma tarea que su correspondiente instruc-
cin JMP(004).
La operacin de DIFU(013), DIFD(014) y las instrucciones de diferencial no
depende nicamente del estado de la condicin de ejecucin cuando se pro-
graman entre JMP(004) y JME(005). Cuando DIFU(013), DIFD(014), o una
instruccin de diferencial se ejecutan en una seccin saltada inmediatamente
despus de que la condicin de ejecucin para JMP(004) se haya puesto en
ON, la condicin de ejecucin para DIFU(013), DIFD(014), o la instruccin de
diferencial se compara con la condicin de ejecucin que exista antes de que
el salto se hiciera efectivo (es decir, antes de que la condicin de ejecucin
para JMP(004) se pusiera en OFF).

Ejemplos Funcionamiento bsico


Cuando CIO 000000 est en OFF en el siguiente ejemplo, las instrucciones
entre JMP(004) y JME(005) no se ejecutan y las salidas mantienen su estado
previo.
Cuando CIO 000000 est en ON en el siguiente ejemplo, las instrucciones
entre JMP(004) y JME(005) se ejecutan normalmente.

222
Instrucciones del control de secuencia Seccin 3-5

CIO 000000 CIO 000000


&1 ON OFF

Ejecucin Instrucciones
normal no ejecutadas.
(Las salidas
se mantienen
sin cambios).

&1

3-5-7 CONDITIONAL JUMP: CJP(510)/CJPN(511)


Empleo La operacin de CJP(510) es bsicamente opuesta a JMP(004). Si la condi-
cin de ejecucin de CJP(510) es ON, la ejecucin del programa salta direc-
tamente a la primera JME(005) del programa con el mismo nmero de salto.
CJP(510) y JME(005) se utilizan en parejas.
La operacin de CJPN(511) es casi idntica a JMP(004). Si la condicin de
ejecucin de CJP(004) es OFF, la ejecucin del programa salta directamente
a la primera JME(005) del programa con el mismo nmero de salto.
CJPN(511) y JME(005) se utilizan en parejas.
Smbolos de diagrama de
rels CJP(510)

N N: Nmero de salto

CJPN(511)

N N: Nmero de salto
Variaciones
Variaciones Salta si est en ON/No salta si est en OFF CJP(510)
Especificacin de refresco inmediato Incompatible

223
Instrucciones del control de secuencia Seccin 3-5

Variaciones Salta si est en OFF/No salta si est en ON CJPN(511)


Especificacin de refresco inmediato Incompatible

Variaciones Se ejecuta en cada ciclo con condicin ON JME(005)


Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK No se admite OK OK

Operandos N: Nmero de salto


El nmero de salto debe ser desde 0000 hasta 03FF (&0 hasta &1.023 deci-
mal).
Nota Para CPUs CJ1M-CPU11 y CJ1M-CPU21, el nmero de salto debe estar en
el rango 0000 hasta 00FF hex o bien &0 hasta &255 decimal.

Especificaciones del
operando rea N
CJP(510) CJPN(511) JME(005)
rea CIO CIO 0000 hasta CIO 6143 ---
rea de Trabajo W000 hasta W511 ---
rea de bit en H000 hasta H511 ---
Espera
rea Bit Auxiliar A000 hasta A959 ---
rea Temporizador T0000 hasta T4095 ---
rea Contador C0000 hasta C4095 ---
rea DM D00000 hasta D32767 ---
rea EM sin banco E00000 hasta E32767 ---
rea EM con Banco En_00000 hasta En_32767 ---
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767 ---
indirectas en bina- @ E00000 hasta @ E32767
rio
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767 ---
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #03FF (binario) o bien &0 #0000 hasta #03FF
hasta &1023 (vase la nota). (binario) o bien &0
hasta &1023 (vase
la nota).
Registros de datos DR0 hasta DR15 ---
Registros de ndice --- ---
Direccionamiento ,IR0 hasta ,IR15 ---
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048
registros de ndice hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta IR15
Nota Para CPUs CJ1M-CPU11 y CJ1M-CPU21, el rango es desde #0000 hasta
#00FF (binario) o bien &0 hasta &1023 (decimal).

Descripcin La operacin de CJP(510) y CJPN(511) difiere nicamente en la condicin de


ejecucin. CJP(510) salta al primer JME(005) cuando la condicin de ejecu-
cin est en ON y CJPN(511) salta al primer JME(005) cuando la condicin
de ejecucin est en OFF.

224
Instrucciones del control de secuencia Seccin 3-5

Ya que las instrucciones saltadas no se ejecutan, el tiempo de ciclo se reduce


en el tiempo total de ejecucin de las instrucciones saltadas.
Operacin de CJP(510)
Cuando la condicin de ejecucin para CJP(510) est en OFF, no se realiza
ningn salto y el programa se ejecuta consecutivamente segn est escrito.
Si la condicin de ejecucin de CJP(510) es ON, la ejecucin del programa
salta directamente a la primera JME(005) del programa con el mismo nmero
de salto.
Condicin de Condicin de
ejecucin OFF ejecucin ON
Instrucciones
saltadas

Las instrucciones de esta seccin no


Instrucciones se ejecutan y se mantiene el estado de
ejecutadas salida. El tiempo de ejecucin de estas
instrucciones se elimina.

Operacin de CJPN(511)
Cuando la condicin de ejecucin para CJPN(511) est en ON, no se realiza
ningn salto y el programa se ejecuta consecutivamente segn est escrito.
Si la condicin de ejecucin de CJP(511) est en OFF, la ejecucin del pro-
grama salta directamente a la primera JME(005) del programa con el mismo
nmero de salto.
Condicin de Condicin de
ejecucin ON ejecucin OFF
Instrucciones
saltadas

Las instrucciones de esta seccin no se


ejecutan y se mantiene el estado de
Instrucciones salida. El tiempo de ejecucin de estas
ejecutadas instrucciones se elimina.

Indicadores La siguiente tabla muestra los indicadores afectados por CJP(510) y


CJPN(511).
Nombre Etiqueta Operacin
Indicador de ER ON si no hay un JME(005) con el mismo nmero de salto
error que CJP(510) o CJPN(511). (Vase la nota.)
ON si N no est dentro del rango especificado de 0000
hasta 03FF.
ON si hay una instruccin CJP(510) o CJPN(511) en una
tarea sin un JME(005) con el mismo nmero de salto.
OFF en el resto de los casos.

Nota Para CPUs CJ1M-CPU11 y CJ1M-CPU21, el nmero de salto debe estar en


el rango desde 0 hasta 25 (0000 hasta 00FF hex).

Precauciones Todas las salidas (bits y canales) en instrucciones saltadas retienen su


estado previo. Los temporizadores en funcionamiento (TIM, TIMX(550),
TIMH(015), TIMHX(551), TMHH(540) y TMHHX(552)) continan tempori-
zando ya que los PV se actualizan incluso cuando la instruccin de tempori-
zador no est siendo ejecutada.

225
Instrucciones del control de secuencia Seccin 3-5

Cuando hay dos o ms instrucciones JME(005) con el mismo nmero de


salto, slo ser vlida la instruccin con la direccin ms baja. El JME(005)
con la direccin de programa ms alta ser ignorado.
Cuando JME(005) precede a la instruccin CJP(510) o CJPN(511) en el pro-
grama, las instrucciones intermedias se ejecutarn repetidamente mientras la
condicin de ejecucin se mantenga en OFF (CJP(510)) u ON (CJPN(511)).
Se producir un error de tiempo de ciclo demasiado largo si el salto no se
completa cambiando la condicin de ejecucin ejecutando END(001) dentro
del tiempo de ciclo mximo.
Las instrucciones CJP(510) o CJPN(511) operarn normalmente en bloques
de programa.
Cuando la condicin de ejecucin para CJP(510) est en ON o la condicin
de ejecucin para CJPN(511) est en OFF, la ejecucin del programa saltar
directamente a la instruccin JME sin ejecutar las instrucciones entre
CJP(510)/CJPN(511) y JME. No se requerir tiempo de ejecucin para estas
instrucciones y por lo tanto el tiempo de ciclo se reducir.
Cuando la condicin de ejecucin para JMP0 est en OFF, el procesamiento
de NOP se ejecuta entre JMP0 y JME0, lo que requiere tiempo de ejecucin.
Por lo tanto, el tiempo de ciclo no se reducir.
Cuando una instruccin CJP(510) o CJPN(511) se programa en una tarea,
debe haber un JME(005) con el mismo nmero de salto, porque los saltos en
las tareas no estn permitidos. Ocurrir un error si una instruccin JME(005)
correspondiente no se programa en la misma tarea.
La operacin de DIFU(013), DIFD(014) y las instrucciones de diferencial no
depende nicamente del estado de la condicin de ejecucin cuando se pro-
graman en una seccin saltada del programa. Cuando DIFU(013),
DIFD(014), o una instruccin de diferencial se ejecutan en una seccin sal-
tada inmediatamente despus de que la condicin de ejecucin para
CJP(510) se haya puesto en OFF (ON para CJPN(511)), la condicin de eje-
cucin para DIFU(013), DIFD(014), o la instruccin de diferencial se compara
con la condicin de ejecucin que exista antes de que el salto se hiciera
efectivo.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, las instrucciones


entre CJP(510) y JME(005) no se ejecutan y las salidas mantienen su estado
previo.
Cuando CIO 000000 est en OFF en el siguiente ejemplo, las instrucciones
entre CJP(510) y JME(005) se ejecutan normalmente.

226
Instrucciones del control de secuencia Seccin 3-5

CIO 000000 CIO 000000


ON OFF
&1

Instrucciones
no Ejecucin
ejecutadas. normal
(Las salidas
se mantienen
sin cambios).

&1

Nota Para CJPN(511), el estado ON/OFF de CIO 000000 se invertira.

3-5-8 MULTIPLE JUMP y JUMP END: JMP0(515) y JME0(516)


Empleo Si la condicin de ejecucin para JMP0(515) es OFF, todas las instrucciones
desde JMP0(515) hasta el siguiente JME0(516) del programa se procesan
como NOP(000). Utilice JMP0(515) y JME0(516) en parejas. No existe lmite
para el nmero de parejas que se pueden utilizar en el programa.

Smbolos de diagrama de
rels JMP0(515)

JME0(516)

Variaciones
Variaciones Salta si est en OFF/No salta si est en ON JMP0(515)
Especificacin de refresco inmediato Incompatible

Variaciones Se ejecuta en cada ciclo con condicin ON JME0(516)


Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite No se admite OK OK

227
Instrucciones del control de secuencia Seccin 3-5

Descripcin Cuando la condicin de ejecucin para JMP0(515) est en ON, no se realiza


ningn salto y el programa se ejecuta consecutivamente segn est escrito.
Si la condicin de ejecucin para JMP0(515) es OFF, todas las instrucciones
desde JMP0(515) hasta el siguiente JME0(516) del programa se procesan
como NOP(000). Al contrario que en el caso de JMP(004), CJP(510) y
CJPN(511), JMP0(515) no utiliza nmeros de salto, as que estas instruccio-
nes pueden ponerse en cualquier parte del programa.
Condicin de Condicin de
ejecucin a ON ejecucin a OFF
Instrucciones
saltadas
Instrucciones
ejecutadas

Las instrucciones saltadas se


Condicin de procesan como NOP(000). Los
ejecucin b ON Condicin de tiempos de ejecucin de instruccin
ejecucin b OFF son los mismos que NOP(000).

Instrucciones
ejecutadas

Instrucciones
saltadas

Al contrario que en el caso de JMP(004), CJP(510) y CJPN(511) que saltan


directamente a la primera instruccin JME(005) del programa, todas las ins-
trucciones entre JMP0(515) y JME0(516) se ejecutan como NOP(000). El
tiempo de ejecucin de las instrucciones saltadas se reducir, pero no se eli-
minar. Las instrucciones saltadas en s mismas no se ejecutan y sus salidas
(bits y canales) mantienen su estado previo.

Precauciones Las parejas mltiples de instrucciones JMP0(515) y JME0(516) pueden


usarse en el programa, pero las parejas no pueden anidarse.
JMP0(515) y JME0(516) no pueden usarse en programas de bloques.
Las parejas JMP0(515) y JME0(516) deben estar en las mismas tareas por-
que los saltos entre tareas no estn permitidos.
La operacin de DIFU(013), DIFD(014) y las instrucciones de diferencial no
depende nicamente del estado de la condicin de ejecucin cuando se pro-
graman entre JMP0(515) y JME0(516). Cuando DIFU(013), DIFD(014), o una
instruccin de diferencial se ejecutan en una seccin saltada inmediatamente
despus de que la condicin de ejecucin para JMP0(515) se haya puesto en
ON, la condicin de ejecucin para DIFU(013), DIFD(014), o la instruccin de
diferencial se compara con la condicin de ejecucin que exista antes de
que el salto se hiciera efectivo (es decir, antes de que la condicin de ejecu-
cin para JMP0(515) se pusiera en OFF).

Ejemplo Cuando CIO 000000 est en OFF en el siguiente ejemplo, las instrucciones
entre JMP0(515) y JME0(516) se procesan como instrucciones NOP(000) y
las salidas mantienen su estado previo.
Cuando CIO 000000 est en ON en el siguiente ejemplo, las instrucciones
entre JMP0(515) y JME0(516) se ejecutan normalmente.

228
Instrucciones del control de secuencia Seccin 3-5

CIO 000000 CIO 000000


ON OFF

Ejecucin Instrucciones
normal procesadas
como
NOP(000).
(Las salidas se
mantienen sin
cambios).

3-5-9 FOR-NEXT LOOPS: FOR(512)/NEXT(513)


Empleo Las instrucciones entre FOR(512) y NEXT(513) se repiten un nmero con-
creto de veces. FOR(512) y NEXT(513) se utilizan en parejas.

Smbolos de diagrama de
rels FOR(512)

N N: Nmero de lazos

NEXT(513)
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FOR(512)
Se ejecuta en cada ciclo con condicin ON NEXT(513)
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK OK

Operandos N: Nmero de lazos


El nmero de lazos debe ser desde 0000 hasta FFFF (&0 hasta &65.535
decimal).

229
Instrucciones del control de secuencia Seccin 3-5

Especificaciones del
operando rea N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF (binario) o bien &0 hasta &65.535
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Las instrucciones entre FOR(512) y NEXT(513) se ejecutan N veces y poste-


riormente contina la ejecucin del programa con la instruccin posterior a
NEXT(513). Se puede utilizar la instruccin BREAK(514) para cancelar el
lazo.
Si N se configura como 0, las instrucciones FOR(512) y NEXT(513) se proce-
san como instrucciones NOP(000).
Los lazos pueden utilizarse para el procesamiento de tablas de datos con un
esfuerzo de programacin mnimo.

Repetida N veces

Seccin de programa repetida

Los lazos FOR-NEXT pueden anidarse hasta 15 niveles. En el siguiente


ejemplo las secciones de programa A, B, y C se ejecutan como sigue:
A B B C, A B B C, y A B B C

230
Instrucciones del control de secuencia Seccin 3-5

&3

&2

Use BREAK(514) para escapar de un lazo FOR-NEXT. Se necesitan varias


instrucciones BREAK(514) (el nmero de niveles anidados) para escapar de
lazos anidados. Las instrucciones restantes del lazo despus de
BREAK(514) se procesan como instrucciones NOP(000).

&3 Escapa de un &3


lazo cuando la
condicin a
est en ON.
&2
Las
Escapa del lazo
instrucciones FOR-NEXT 2.
restantes se 1 2
procesan como
NOP(000).

Escapa del lazo


FOR-NEXT 1.

Mtodos de lazo alternativos


Hay dos maneras de repetir una seccin de programa hasta que se introduce
una condicin de ejecucin dada.
1,2,3... 1. Lazo FOR-NEXT con BREAK
Inicie un lazo FOR-NEXT con un mximo de N repeticiones. Programe
BREAK(514) dentro del lazo con la condicin de ejecucin deseada. El
lazo terminar antes de N repeticiones si se introduce la condicin de eje-
cucin.
2. Lazo JME(005)-JMP(004)
Programe un lazo con JME(005) antes de JMP(004). Las instrucciones en-
tre JME(005) y JMP(004) se ejecutarn repetidamente mientras la condi-
cin de ejecucin para JMP(004) est en OFF. (Se producir un error de
tiempo de ciclo demasiado largo si la condicin de ejecucin no se pone
en ON o END(001) no se ejecuta dentro del tiempo mximo de ciclo).

231
Instrucciones del control de secuencia Seccin 3-5

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se anidan ms de 15 lazos.
error OFF en el resto de los casos.
Indicador de = OFF
igual
Indicador de N OFF
negativo
Precauciones Programe FOR(512) y NEXT(513) en la misma tarea. La ejecucin no se
repetir si estas instrucciones no estn en la misma tarea.
Una instruccin de salto como JMP(004) puede ejecutarse dentro de un lazo
FOR-NEXT, pero no saltar ms all del lazo FOR-NEXT.
Las siguientes instrucciones no pueden utilizarse en lazos FOR-NEXT:
Instrucciones de programacin de bloques
MULTIPLE JUMP y JUMP END: JMP(515) y JME(516)
STEP DEFINE y STEP START: STEP(008)/SNXT(009)
Nota Si un lazo se repite en un ciclo y se utiliza un bit de diferencial en un lazo
FOR-NEXT, ese bit estar siempre en ON o siempre en OFF en ese lazo.

Ejemplo En el siguiente ejemplo, la seccin del programa con lazo transfiere el conte-
nido de D00100 a la direccin indicada en D00200 y posteriormente aumenta
el contenido de D00200 en 1.

Repetido 3 veces.
&3

D00100
@D00200

D00200

#0000

3-5-10 BREAK LOOP: BREAK(514)


Empleo Programada en un lazo FOR-NEXT para cancelar la ejecucin del lazo en
una condicin de ejecucin dada. Las instrucciones restantes del lazo se pro-
cesan como instrucciones NOP(000).
Smbolo de diagrama de
rels BREAK(514)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BREAK(514)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

232
Instrucciones de temporizador y contador Seccin 3-6

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK OK

Descripcin Programe BREAK(514) entre FOR(512) y NEXT(513) para cancelar el lazo


FOR-NEXT cuando se ejecute BREAK(514). Cuando se ejecuta
BREAK(514), el resto de las instrucciones NEXT(513) se procesan como
NOP(000).
Condicin a ON
N repeticiones

Repeticiones
forzadas a
finalizar.

Procesada como
NOP(000).

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = OFF
igual
Indicador de N OFF
negativo

Precauciones Una instruccin BREAK(514) cancela solamente un lazo, as que se necesi-


tan varias instrucciones BREAK(514) (el nmero de niveles anidados) para
escapar de lazos anidados.
BREAK(514) puede utilizarse solamente en un lazo FOR-NEXT.

3-6 Instrucciones de temporizador y contador


Esta seccin describe las instrucciones utilizadas para definir y manejar tem-
porizadores y contadores.
Instruccin Nemnico Cdigo de funcin Pgina
TIMER TIM/TIMX ---/551 235
HIGH-SPEED TIMER TIMH/TIMHX 015/551 240
ONE-MS TIMER TMHH/TIMHHX 540/552 244
ACCUMULATIVE TIMER TTIM/TTIMX 087/555 247
LONG TIMER TIML/TIMLX 542/553 251
MULTI-OUTPUT TIMER MTIM/MTIMX 543/554 254
COUNTER CNT/CNTX ---/546 260
REVERSIBLE COUNTER CNTR/CNTRX 012/548 263
RESET TIMER/COUNTER CNR/CNRX 545/547 267

Mtodos de refresco para valores actuales (PV) de Temporizador/Contador


Introduccin
Todas las instrucciones de temporizador y contador soportadas por las CPUs
CS1 y CJ1 CPU utilizan datos BCD y todos sus valores de configuracin se
introducen utilizando BCD. El mtodo de refresco puede seleccionarse entre
BCD o binario para otras CPUs de la serie CS y CJ (es decir, las CPUs CS1-
H, CJ1-H, CJ1M, y CS1D, vanse notas 1 y 2).
233
Instrucciones de temporizador y contador Seccin 3-6

La utilizacin de datos binarios en lugar de BCD permite aumentar el rango


de SV (valores seleccionados) para temporizadores y contadores de 0 a 9999
hasta 0 a 65535. Tambin permite utilizar datos binarios calculados con otras
instrucciones directamente como SV de temporizador/ contador. El mtodo
de refresco es vlido incluso cuando se configura un SV indirectamente (es
decir, utilizando los contenidos del canal de memoria). (Esto es: los conteni-
dos del canal direccionado se toman como datos BCD o binarios segn el
mtodo de refresco configurado).
Consulte informacin ms detallada sobre los mtodos de refresco en el
Manual de programacin de las series CS y CJ.

Nota 1. En el caso de las CPUs CS1-H y CJ1-H fabricadas antes del 31 de mayo
de 2002, las instrucciones binarias se visualizarn en la consola de pro-
gramacin con el nemnico de la instruccin equivalente para la operacin
con BCD. (Por ejemplo, TIMX0 &16 se visualizar como TIM0 &16). No
obstante, la instruccin operar utilizando modo binario.
2. El mtodo de refresco puede seleccionarse solamente con CX-Program-
mer versin 3.0 o posterior. No puede seleccionarse con la versin 2.1 o
anteriores ni desde una consola de programacin.
3. Los programas de usuario que utilizan el modo binario de actualizacin no
pueden leerse con CX-Programmer versin 2.1 o anterior. Solamente pue-
den leerse cambiando a modo BCD.
Instrucciones aplicables
Clasificacin Instruccin Nemnico
BCD Binario
Instrucciones de tem- TIMER TIM TIMX(550)
porizador y contador HIGH-SPEED TIMER TIMH(015) TIMHX(551)
ONE-MS TIMER TMHH(540) TMHHX(552)
ACCUMULATIVE TIMER TTIM(087) TTIMX(555)
LONG TIMER TIML(542) TIMLX(553)
MULTI-OUTPUT TIMER MTIM(543) MTIMX(554)
COUNTER CNT CNTX(546)
REVERSIBLE COUNTER CNTR(012) CNTRX(548)
RESET TIMER/COUNTER CNR(545) CNRX(547)
Instrucciones de pro- TIMER WAIT TIMW(813) TIMWX(816)
gramacin de bloques HIGH-SPEED TIMER WAIT TMHW(815) TMHWX(817)
COUNTER WAIT CNTW(814) CNTWX(818)

Especificaciones bsicas de temporizador


La siguiente tabla muestra las especificaciones bsicas de los temporizado-
res.
Elemento TIM/TIMX(550) TIMH(015)/ TMHH(540)/ TTIM(087)/ TIML(542)/ MTIM(543)/
TIMHX(551) TMHHX(552) TTIMX(555) TIMLX(553) MTIMX(554)
Mtodo de descendente descendente descendente ascendente descendente ascendente
tempo-
rizacin
Unidades de 0,1 s 0,01 s 0,001 s 0,1 s 0,1 s 0,1 s
tempo-
rizacin
SV mx. TIM: 999,9 s TIMH: 99,99 s TMHH: 9,999 s TTIM: 999,9 s TIML: 115 das MTIM: 999,9 s
TIMX: 6.553,5 s TIMHX 655,35 s TMHHX: TTIMX: TIMLX: MTIMX:
65,535 s 6.553,5 s 49.710 das 6.553,5 s
Salidas/ 1 1 1 1 1 8
Instruccin

234
Instrucciones de temporizador y contador Seccin 3-6

Elemento TIM/TIMX(550) TIMH(015)/ TMHH(540)/ TTIM(087)/ TIML(542)/ MTIM(543)/


TIMHX(551) TMHHX(552) TTIMX(555) TIMLX(553) MTIMX(554)
Nmeros de utilizados utilizados utilizados utilizados No utilizados No utilizados
temporizador
Refresco A la ejecucin A la ejecucin En interrupcin A la ejecucin A la ejecucin A la ejecucin
Indicador cada 1 ms
Comp.
Refresco de Ver nota 1. Ver nota 2. Cada 1 ms A la ejecucin A la ejecucin A la ejecucin
PV de tempo-
rizador
Valor Indic. OFF OFF OFF OFF OFF OFF
des- Comp.
pus PV SV SV SV 0 SV 0
del
reset

Nota 1. Los valores actuales de TIM se refrescan a la ejecucin, al final de la eje-


cucin del programa cada ciclo, o cada 80 ms por interrupcin si el tiempo
de ciclo excede de 80 ms.
2. Los PV de TIMH(015)/TIMHX(551) se refrescan a la ejecucin, al final de
la ejecucin del programa cada ciclo, y cada 10 ms por interrupcin.

Operacin de temporizador
La siguiente tabla muestra los efectos de las condiciones de operacin y pro-
gramacin en la operacin de los temporizadores.
Elemento TIM/ TIMH(015)/ TMHH(540)/ TTIM(087)/ TIML(542)/ MTIM(543)/
TIMX(550) TIMHX(551) TMHHX(552) TTIMX(555) TIMLX(553) MTIMX(554)
Cambio en el modo de PV = 0 --- ---
operacin Indicador de finalizacin = OFF
Interrupcin/reset de PV = 0 --- ---
alimentacin Indicador de finalizacin = OFF
Ejecucin de CNR(545)/ Binario: PV = FFFF, Indicador de funalizacin = OFF No aplicable No aplicable
CNRX(547) BCD: PV = FFFF 9999, Indicador de finalizacin = OFF
Operacin en seccin Los temporizadores siguen activos. El estado de los temporizadores se mantiene.
saltada de programa
(JMP(004)-JME(005))
Operacin en seccin PV = SV El estado de PV = SV El estado de
bloqueada de programa Indicador de finalizacin = OFF los tempori- Indic. Fin.= los temporiza-
(IL(002)-ILC(003)) zadores se OFF dores se man-
mantiene. tiene.
Forzado a Indic. Comp. ON --- ---
set PV Configurado como 0. --- ---
Forzado a Indic. Comp. OFF --- ---
reset PV Reset a SV. Configurado --- ---
como 0.

3-6-1 TIMER: TIM/TIMX(550)


Empleo TIM oTIMX(550) opera un temporizador de disminucin con unidades de
0,1 s. El rango de seleccin para el valor seleccionado (SV) es 0 a 999,9 s
para TIM y 0 a 6.553,5 s para TIMX(550). La precisin del temporizador es de
0 a 0,01s.
Nota La precisin del temporizador para CPUs CS1D es de 10 ms + el tiempo de
ciclo.

235
Instrucciones de temporizador y contador Seccin 3-6

Smbolo de diagrama de
rels
Mtodo Smbolo Operandos
de
refresco
de PV
BCD N: 0000 hasta 4095
TIM (decimal)
N: Nmero de S: #0000 hasta #9999
N temporizador (BCD)
S: Valor
S seleccionado
Binario N: 00000 hasta 4095
TIMX(550) (decimal)
N: Nmero de S: &0 hasta &65535
N (decimal)
temporizador
S: Valor #0000 hasta #FFFF
S (hex)
seleccionado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TIM/TIMX(550)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

Operandos N: Nm. de temporizador


El nmero de temporizador debe estar entre 0000 y 4095 (decimal).
S: Valor seleccionado
El valor seleccionado debe estar comprendido entre #0000 y 9999 (BCD).
(Si el valor seleccionado se configura como #0000, el indicador de finaliza-
cin se pondr en ON cuando se ejecute TIM/TIMX(550)).
Especificaciones del
operando rea N S
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 hasta A959
rea Temporizador 0000 hasta 4095 (decimal) T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta
@ En_32767
(n = 0 a C)

236
Instrucciones de temporizador y contador Seccin 3-6

rea N S
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 to *En_032767
(n = 0 a C)
Constantes --- BCD:
#0000 hasta 9999 (BCD)
& no se puede usar.
Binario:
&0 hasta &65535 (decimal)
#0000 hasta #FFFF (hex)
Registros de datos --- DR0 hasta DR15
Registros de ndice --- ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15

Descripcin Cuando la entrada de temporizador est en OFF, el temporizador especifi-


cado por N se resetea, es decir, el PV del temporizador se resetea al valor del
SV y su indicador de finalizacin se pone en OFF.
Cuando la entrada del temporizador cambia de OFF a ON, TIM/TIMX(550)
comienza a disminuir el PV. El PV continuar la temporizacin de disminucin
mientras la entrada del temporizador se mantenga en ON y el indicador de
finalizacin del temporizador se pondr en ON cuando el PV alcance 0000.
El estado del PV del temporizador y el indicador de finalizacin se manten-
drn despus de que el temporizador acabe. Para reiniciar el temporizador, la
entrada del temporizador debe ponerse en OFF y posteriormente de nuevo
en ON o el PV del temporizador debe cambiarse a un valor que no sea cero
(mediante MOV(021), por ejemplo).
Entrada del
temporizador
PV del SV
temporizador

Indicador de
finalizacin

El siguiente diagrama de temporizacin muestra el comportamiento del PV


del temporizador y el indicador de finalizacin cuando la entrada del tempori-
zador se pone en OFF antes de que el temporizador acabe.
Entrada del
temporizador

PV del SV
temporizador

Finalizacin
Indicador
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N se direcciona indirectamente mediante un regis-
error tro de ndice pero la direccin del registro de ndice no es
la direccin PV de un temporizador.
ON si est en modo BCD y S no contiene datos BCD.
OFF en el resto de los casos.
Indicador de = OFF o sin cambios (vase la nota).
igual
Indicador de N OFF o sin cambios (vase la nota).
negativo

237
Instrucciones de temporizador y contador Seccin 3-6

Nota En las CPUs CS1 y CJ1 estos estn en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.
Precauciones Los nmeros de temporizador son compartidos por las instrucciones TIM,
TIMX(550), TIMH(015), TIMHX(551), TMHH(540), TMHHX(552), TTIM(087),
TTIMX(555), TIMW(813), TIMWX(816), TMHW(815) y TMHWX(817). Si dos
temporizadores comparten el mismo nmero de temporizador, pero no se uti-
lizan simultneamente, se generar un error de duplicacin cuando se com-
pruebe el programa, pero los temporizadores operarn normalmente. Los
temporizadores que comparten el mismo nmero de temporizador no opera-
rn correctamente si se utilizan simultneamente.
Los temporizadores creados con nmeros de temporizador de 2048 a 4095
no operarn correctamente cuando el tiempo de ciclo de la CPU exceda de
80 ms. Use nmeros de temporizador de 0000 a 2047 cuando el tiempo de
ciclo sea superior a 80 ms.
El valor actual de los temporizadores programados con nmero de tempori-
zador de 0000 a 2047 se actualizar incluso cuando el temporizador est en
reposo. El valor actual de los temporizadores programados con nmero de
temporizador de 2048 a 4095 se mantendr cuando el temporizador est en
reposo.
Los temporizadores se resetearn o se pausarn en los siguientes casos.
(Cuando se resetea un temporizador, su PV se resetea al valor del SV y su
indicador de finalizacin se pone en OFF).
Estado PV Indicador de
finalizacin
Modo de operacin cambiado de modo 0000 OFF
RUN o MONITOR a modo PROGRAM o
viceversa.1
Alimentacin interrumpida y reseteada2 0000 OFF
Ejecucin de CNR(545)/CNRX(547), las BCD: 9999 OFF
instrucciones RESET TIMER/COUNTER3 Binario: FFFF
Operacin en seccin bloqueada de Reset a SV. OFF
programa
(IL(002)ILC(003))
Operacin en seccin saltada de El PV contina dis- Retiene el estado
programa minuyendo. previo.
(JMP(004)JME(005))

Nota 1. Si el bit de retencin IOM (A50012) se ha puesto en ON, el estado del in-
dicador de finalizacin de temporizador y los PV se mantendrn cuando
se modifique el modo de operacin.
2. Si el bit de retencin IOM (A50012) ha sido puesto en ON y el estado del
bit de retencin IOM mismo est protegido en la configuracin del PLC Se-
tup, el estado de los indicadores de finalizacin de temporizador y los PV
se mantendrn incluso si se interrumpe la alimentacin.
3. El PV se configurar con el valor del SV cuando se ejecute TIM/TI-
MX(550).
Cuando TIM/TIMX(550) est en una seccin de programa entre IL(002) e
ILC(003) y la seccin de programa est bloqueada, el PV se resetear al
valor del SV y el indicador de finalizacin se pondr en OFF.
Cuando un temporizador operativo TIM/TIMX(550) creado con un nmero de
temporizador entre 0000 y 2047 est en una seccin de programa saltada
(JMP(004), CJMP(510), CJPN(511), JME(005)), el PV del temporizador conti-
nuar temporizando. (Vase la nota.) La instruccin saltada TIM/TIMX(550)
no se ejecutar, pero el PV se refrescar cada ciclo una vez que las tareas
hayan sido ejecutadas.

238
Instrucciones de temporizador y contador Seccin 3-6

Nota En las CPUs CS1D CPU el PV no se refrescar en el caso anterior.


Cuando se fuerza a set un temporizador TIM/TIMX(550), su indicador de fina-
lizacin se pondr en ON y su PV se configurar como 0000. Cuando un tem-
porizador TIM/TIMX(550) se fuerza a reset, su indicador de finalizacin se
pondr en OFF y su PV se resetear al valor del SV.
La operacin de Indicador = e Indicador N depende del modelo de CPU. Con-
sulte Indicadorespara obtener ms informacin.
El indicador de finalizacin de temporizador se refresca solamente cuando se
ejecuta TIM/TIMX(550), as que puede requerirse un retardo de hasta un
ciclo para que el indicador de finalizacin se ponga en ON una vez que la
temporizacin finalice.
Si se utiliza edicin online para convertir un temporizador en otro tipo de tem-
porizador con el mismo nmero de temporizador (como TIM/TIMX(550)
TIMH(015)/TIMHX(551) o TIM/TIMX(550) TMHH(540)/TMHHX(552)), ase-
grese de resetear el indicador de finalizacin. El temporizador no funcionar
correctamente a menos que se resetee el indicador de finalizacin.
Un PV y un indicador de finalizacin de instruccin TIM/TIMX(550) pueden
refrescarse de las siguientes maneras dependiendo del nmero de tempori-
zador utilizado.
Temporizadores creados con nmeros de temporizador de 0000 a 2047
Ejecucin de El PV se actualiza cada vez que se ejecuta
TIM/TIMX(550) IM/TIMX(550).
El indicador de finalizacin se pone en ON si el PV es
0000.
El indicador de finalizacin se pone en OFF si el PV no
es 0000.
Despus de ejecutar El PV tambin se actualiza cada ciclo al final de la
todas las tareas ejecucin del programa.
Intervalo de refresco de Si el tiempo de ciclo excede de 80 ms, el PV del
80 ms temporizador se actualiza cada 80 ms.

Temporizadores creados con nmeros de temporizador de 2048 a 4095


Ejecucin de TIM El PV se actualiza cada vez que se ejecuta TIM.
El indicador de finalizacin se pone en ON si el PV es 0000.
El indicador de finalizacin se pone en OFF si el PV no es
0000.

Los temporizadores se resetean (PV = SV, Indicador de finalizacin en OFF)


debido a interrupciones de alimentacin a menos que el bit de retencin IOM
(A50012) est en ON y el bit est protegido en la configuracin del PLC. Tam-
bin es posible utilizar un bit de impulso de reloj y una instruccin de contador
para programar un temporizador que retendr su PV en caso de una interrup-
cin de alimentacin como se muestra en el siguiente diagrama.
Condicin de Bit de impulso
ejecucin de reloj de 1 s
Entrada de contador

Entrada de reset

Ejemplo Cuando la entrada de temporizador CIO 000000 cambia de OFF a ON en el


siguiente ejemplo, el PV del temporizador comenzar una cuenta decreciente
desde el SV. El indicador de finalizacin de temporizador T0000 se pondr en
ON cuando el PV alcance 0000.
Cuando CIO 000000 se pone en OFF, el PV del temporizador se resetear al
valor del SV y el indicador de finalizacin se pondr en OFF.
239
Instrucciones de temporizador y contador Seccin 3-6

Entrada del temporizador


CIO 000000

PV del temporizador
T0000
Temporizador
Finalizacin
Indicador
T0000

3-6-2 HIGH-SPEED TIMER: TIMH(015)/TIMHX(551)


Empleo TIMH(015)/TIMHX(551) opera un temporizador de disminucin con unidades
de 10 ms. El rango de seleccin para el valor seleccionado (SV) es 0 a 99,99
s para TIMH(015) y 0 a 655,35 s para TIMHX(551). La precisin del tempori-
zador es de 0 a 0,01s.
Nota La precisin del temporizador para CPUs CS1D es de 10 ms + el tiempo de
ciclo.
Smbolo de diagrama de
rels
Mtodo Smbolo Operandos
de
refresco
de PV
BCD N: 0000 hasta 4095
TIMH(015) (decimal)
N: Nmero de S: #0000 hasta #9999
N temporizador (BCD)
S S: Valor
seleccionado
Binario N: 00000 hasta 4095
TIMHX(551) (decimal)
N: Nmero de S: &0 hasta &65535
N temporizador (decimal)
S: Valor #0000 hasta #FFFF
S seleccionado (hex)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TIMH(015)/
TIMHX(551)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

Operandos N: Nm. de temporizador


El nmero de temporizador debe estar entre 0000 y 4095 (decimal).

240
Instrucciones de temporizador y contador Seccin 3-6

S: Valor seleccionado
El valor seleccionado debe estar entre #0000 y 9999 en el modo BCD.
Especificaciones del
operando rea N S
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 hasta A959
rea Temporizador 0000 hasta 4095 (decimal) T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- BCD:
#0000 hasta 9999 (BCD)
& no se puede usar.
Binario:
&0 hasta &65535 (decimal)
#0000 hasta #FFFF (hex)
Registros de datos --- DR0 hasta DR15
Registros de ndice --- ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
Descripcin Cuando la entrada de temporizador est en OFF, el temporizador especifi-
cado por N se resetea, es decir, el PV del temporizador se resetea al valor del
SV y su indicador de finalizacin se pone en OFF.
Cuando la entrada del temporizador cambia de OFF a ON, TIMH(015)/
TIMHX(551) comienza a disminuir el PV. El PV continuar la temporizacin
de disminucin mientras la entrada del temporizador se mantenga en ON y el
indicador de finalizacin del temporizador se pondr en ON cuando el PV
alcance 0000.
El estado del PV del temporizador y el indicador de finalizacin se manten-
drn despus de que el temporizador acabe. Para reiniciar el temporizador, la
entrada del temporizador debe ponerse en OFF y posteriormente de nuevo
en ON o el PV del temporizador debe cambiarse a un valor que no sea cero
(mediante MOV(021), por ejemplo).

Entrada del
temporizador
PV del SV
temporizador

Indicador
de
finalizacin

El siguiente diagrama de temporizacin muestra el comportamiento del PV


del temporizador y el indicador de finalizacin cuando la entrada del tempori-
zador se pone en OFF antes de que el temporizador acabe.
241
Instrucciones de temporizador y contador Seccin 3-6

Entrada del
temporizador
PV del SV
temporizador

Indicador de
finalizacin
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N se direcciona indirectamente mediante un regis-
error tro de ndice pero la direccin del registro de ndice no es
la direccin PV de un temporizador.
ON si est en modo BCD y S no contiene datos BCD.
OFF en el resto de los casos.
Indicador de = OFF o sin cambios (vase la nota).
igual
Indicador de N OFF o sin cambios (vase la nota).
negativo

Nota En las CPUs CS1 y CJ1 estos estn en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Precauciones Los nmeros de temporizador son compartidos por las instrucciones TIM,
TIMX(550), TIMH(015), TIMHX(551), TMHH(540), TMHHX(552), TTIM(087),
TTIMX(555), TIMW(813), TIMWX(816), TMHW(815) y TMHWX(817). Si dos
temporizadores comparten el mismo nmero de temporizador, pero no se uti-
lizan simultneamente, se generar un error de duplicacin cuando se com-
pruebe el programa, pero los temporizadores operarn normalmente. Los
temporizadores que comparten el mismo nmero de temporizador no opera-
rn correctamente si se utilizan simultneamente.
Los temporizadores creados con nmeros de temporizador de 2048 a 4095
no operarn correctamente cuando el tiempo de ciclo de la CPU exceda de
80 ms. Use nmeros de temporizador de 0000 a 2047 cuando el tiempo de
ciclo sea superior a 80 ms.
Los temporizadores TIMH(015)/TIMHX(551) creados con nmeros de tempo-
rizador de 0000 a 0255 se referscan cada 10 ms. Use estos nmeros de tem-
porizador cuando el PV est siendo referenciado en el programa de usuario.
El valor actual de los temporizadores programados con nmero de tempori-
zador de 0000 a 2047 se actualizar incluso cuando el temporizador est en
reposo. El valor actual de los temporizadores programados con nmero de
temporizador de 2048 a 4095 se mantendr cuando el temporizador est en
reposo.
La operacin de Indicador = e Indicador N depende del modelo de CPU. Con-
sulte Indicadores para obtener ms informacin.
Los indicadores de finalizacin para los temporizadores TIMH(015)/
TIMHX(551) se actualizarn cuando la instruccin se ejecute. (Esta opera-
cin difiere de la de los PLC de la serie CV y CVM1).
Los temporizadores se resetearn o se pausarn en los siguientes casos.
(Cuando se resetea un temporizador, su PV se resetea al valor del SV y su
indicador de finalizacin se pone en OFF).
Estado PV Indicador de
finalizacin
Modo de operacin cambiado de modo 0000 OFF
RUN o MONITOR a modo PROGRAM o
viceversa.1
Alimentacin interrumpida y reseteada2 0000 OFF

242
Instrucciones de temporizador y contador Seccin 3-6

Estado PV Indicador de
finalizacin
Ejecucin de CNR(545)/CNRX(547), BCD: 9999 OFF
las instrucciones RESET TIMER/ Binario: FFFF
COUNTER3
Operacin en seccin bloqueada de Reset a SV. OFF
programa
(IL(002)ILC(003))
Operacin en seccin saltada de El PV contina Retiene el estado previo.
programa disminuyendo.
(JMP(004)JME(005))

Nota 1. Si el bit de retencin IOM (A50012) se ha puesto en ON, el estado del in-
dicador de finalizacin de temporizador y los PV se mantendrn cuando
se modifique el modo de operacin.
2. Si el bit de retencin IOM (A50012) ha sido puesto en ON y el estado del
bit de retencin IOM mismo est protegido en la configuracin del PLC Se-
tup, el estado de los indicadores de finalizacin de temporizador y los PV
se mantendrn incluso si se interrumpe la alimentacin.
3. El PV se ajustar con el valor del SV cuando se ejecute TIMH(015)/
TIMHX(551).
Cuando un temporizador operativo TIMH(015)/TIMHX(551) creado con un
nmero de temporizador entre 0000 y 2047 est en una seccin de programa
saltada (JMP(004), CJMP(510), CJPN(511), JME(005)), el PV del temporiza-
dor continuar temporizando. (Vase la nota.) La instruccin saltada
TIMH(015)/TIMHX(551) no se ejecutar, pero el PV se refrescar cada ciclo
una vez que las tareas hayan sido ejecutadas.
Nota En las CPUs CS1D CPU el PV no se refrescar en el caso anterior.
Cuando TIMH(015)/TIMHX(551) est en una seccin de programa entre
IL(002) e ILC(003) y la seccin de programa est bloqueada, el PV se rese-
tear al valor del SV y el indicador de finalizacin se pondr en OFF.
Cuando se fuerza a set un temporizador TIMH(015)/TIMHX(551), su indica-
dor de finalizacin se pondr en ON y su PV se configurar como 0000.
Cuando un temporizador TIMH(015)/TIMHX(551) se fuerza a reset, su indica-
dor de finalizacin se pondr en OFF y su PV se resetear al valor del SV.
La operacin de Indicador = e Indicador N depende del modelo de CPU. Con-
sulte Indicadorespara obtener ms informacin.
El indicador de finalizacin de temporizador se refresca solamente cuando se
ejecuta TIMH(015)/TIMHX(551), as que puede requerirse un retardo de
hasta un ciclo para que el indicador de finalizacin se ponga en ON una vez
que la temporizacin finalice.
Si se utiliza edicin online para convertir un temporizador en otro tipo de tem-
porizador con el mismo nmero de temporizador (como TIMH(015)/
TIMHX(551) TIM/TIMX(550) o TIMH(015)/TIMHX(551) o TIM/TIMX(551)
TMHH(540)/TMHHX(552)), asegrese de resetear el indicador de finaliza-
cin. El temporizador no funcionar correctamente a menos que se resetee el
indicador de finalizacin.
Un PV y un indicador de finalizacin de instruccin TIMH(015)/TIMHX(551)
pueden refrescarse de las siguientes maneras dependiendo del nmero de
temporizador utilizado.
Temporizadores creados con nmeros de temporizador de 0000 a 0255
Ejecucin de El indicador de finalizacin se pone en ON si el PV es 0000.
TIMH(015)/ El indicador de finalizacin se pone en OFF si el PV no es 0000.
TIMHX(551)
Intervalo de El PV del temporizador se actualiza cada 10 ms.
refresco de 10 ms

243
Instrucciones de temporizador y contador Seccin 3-6

Temporizadores creados con nmeros de temporizador de 0256 a 2047


Ejecucin de El PV se actualiza cada vez que se ejecuta TIMH(015)/
TIMH(015)/ TIMHX(551).
TIMHX(551) El indicador de finalizacin se pone en ON si el PV es 0000.
El indicador de finalizacin se pone en OFF si el PV no es 0000.
Despus de El PV tambin se actualiza cada ciclo al final de la ejecucin del
ejecutar todas las programa.
tareas
Intervalo de Si el tiempo de ciclo excede de 80 ms, el PV del temporizador se
refresco de 80 ms actualiza cada 80 ms.

Temporizadores creados con nmeros de temporizador de 2048 a 4095


Ejecucin de El PV se actualiza cada vez que se ejecuta TIMH(015).
TIMH(015)/ El indicador de finalizacin se pone en ON si el PV es 0000.
TIMHX(551) El indicador de finalizacin se pone en OFF si el PV no es 0000.

Ejemplo Cuando la entrada de temporizador CIO 000000 cambia de OFF a ON en el


siguiente ejemplo, el PV del temporizador comenzar una cuenta decreciente
desde el SV (#0064 = 100 = 1,00 s). El indicador de finalizacin de temporiza-
dor, T0000, se pondr en ON cuando el PV alcance 0000.
Cuando CIO 000000 se pone en OFF, el PV del temporizador se resetear al
valor del SV y el indicador de finalizacin se pondr en OFF.
Entrada del
temporizador
CIO 000000
PV del
temporizador #0100
(1,00 s)
T0000
Indicador de finalizacin
del temporizador
T0000

3-6-3 ONE-MS TIMER: TMHH(540)/TMHHX(552)


Empleo TMHH(540)/TMHHX(552) opera un temporizador de disminucin con unida-
des de 1 ms. El rango de seleccin para el valor seleccionado (SV) es 0 a
9,999 s para TMHH(540) y 0 a 65,535 s para TMHHX(552). La precisin del
temporizador es de 0,001 a 0 s.
Nota La precisin del temporizador para CPUs CS1D es de 10 ms + el tiempo de
ciclo.
Smbolo de diagrama de
rels
Mtodo Smbolo Operandos
de
refresco
de PV
BCD N: 0000 hasta 15 (decimal)
TMHH(540) S: #0000 hasta #9999
N: Nmero de (BCD)
N temporizador
S: Valor
S seleccionado
Binario N: 00000 hasta 15
TMHHX(552) (decimal)
N: Nmero de S: &0 hasta &65535
N temporizador (decimal)
S: Valor #0000 hasta #FFFF
S seleccionado (hex)

244
Instrucciones de temporizador y contador Seccin 3-6

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TMHH(540)/
TMHHX(552)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

Operandos N: Nm. de temporizador


El nmero de temporizador debe estar entre 0000 y 0015 (decimal).
S: Valor seleccionado
El valor seleccionado debe estar comprendido entre #0000 y 9999 (BCD).
Especificaciones del
operando rea N S
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 hasta A959
rea Temporizador 0000 hasta 0015 (decimal) T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- BCD:
#0000 hasta 9999 (BCD)
& no se puede usar.
Binario:
&0 hasta &65535 (decimal)
#0000 hasta #FFFF (hex)
Registros de datos --- DR0 hasta DR15
Registros de ndice --- ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15

Descripcin Cuando la entrada de temporizador est en OFF, el temporizador especifi-


cado por N se resetea, es decir, el PV del temporizador se resetea al valor del
SV y su indicador de finalizacin se pone en OFF.
Cuando la entrada del temporizador cambia de OFF a ON, TMHH(540)/
TMHHX(552) comienza a disminuir el PV. El PV continuar la temporizacin
de disminucin mientras la entrada del temporizador se mantenga en ON y el

245
Instrucciones de temporizador y contador Seccin 3-6

indicador de finalizacin del temporizador se pondr en ON cuando el PV


alcance 0000.
El estado del PV del temporizador y el indicador de finalizacin se manten-
drn despus de que el temporizador acabe. Para reiniciar el temporizador, la
entrada del temporizador debe ponerse en OFF y posteriormente de nuevo
en ON o el PV del temporizador debe cambiarse a un valor que no sea cero
(mediante MOV(021), por ejemplo).
Indicadores
Nombre Etiqueta Operacin
Indicador de error ER ON si N se direcciona indirectamente mediante un
registro de ndice pero la direccin del registro de
ndice no es la direccin PV de un temporizador.
ON si est en modo BCD y S no contiene datos BCD.
OFF en el resto de los casos.
Indicador de igual = OFF o sin cambios (vase la nota).
Indicador de N OFF o sin cambios (vase la nota).
negativo

Nota En las CPUs CS1 y CJ1 estos estn en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.
Precauciones Los nmeros de temporizador son compartidos por las instrucciones TIM,
TIMX(550), TIMH(015), TIMHX(551), TMHH(540), TMHHX(552), TTIM(087),
TTIMX(555), TIMW(813), TIMWX(816), TMHW(815) y TMHWX(817). Si dos
temporizadores comparten el mismo nmero de temporizador, pero no se uti-
lizan simultneamente, se generar un error de duplicacin cuando se com-
pruebe el programa, pero los temporizadores operarn normalmente. Los
temporizadores que comparten el mismo nmero de temporizador no opera-
rn correctamente si se utilizan simultneamente.
El indicador de finalizacin se actualiza solamente cuando se ejecuta
TMHH(540)/TMHHX(552). El indicador de finalizacin puede as retardarse en
hasta el tiempo de un ciclo respecto al valor seleccionado en ese momento.
El valor actual de los temporizadores programados con nmero de temporizador
de 0000 a 2047 se actualizar incluso cuando el temporizador est en reposo.
El valor actual de los temporizadores programados con nmero de temporizador
de 2048 a 4095 se mantendr cuando el temporizador est en reposo.
Los temporizadores se resetearn o se pausarn en los siguientes casos.
(Cuando se resetea un temporizador, su PV se resetea al valor del SV y su
indicador de finalizacin se pone en OFF).
Estado PV Indicador de finalizacin
Modo de operacin cambiado de modo 0000 OFF
RUN o MONITOR a modo PROGRAM o
viceversa.1
Alimentacin interrumpida y reseteada2 0000 OFF
Ejecucin de CNR(545)/CNRX(547), BCD: 9999 OFF
las instrucciones RESET TIMER/ Binario: FFFF
COUNTER3
Operacin en seccin bloqueada de Reset a SV. OFF
programa (IL(002)ILC(003))
Operacin en seccin saltada de El PV conti- Retiene el estado previo.
programa (JMP(004)JME(005)) na disminu-
yendo.
Nota 1. Si el bit de retencin IOM (A50012) se ha puesto en ON, el estado del in-
dicador de finalizacin de temporizador y los PV se mantendrn cuando
se modifique el modo de operacin.
2. Si el bit de retencin IOM (A50012) ha sido puesto en ON y el estado del
bit de retencin IOM mismo est protegido en la configuracin del PLC Se-
tup, el estado de los indicadores de finalizacin de temporizador y los PV
se mantendrn incluso si se interrumpe la alimentacin.

246
Instrucciones de temporizador y contador Seccin 3-6

3. El PV se configurar con el valor del SV cuando se ejecute TMHH(540)/


TMHHX(552).
Cuando un temporizador operativo TMHH(540)/TMHHX(552) est en una
seccin de programa saltada (JMP(004), CJMP(510), CJPN(511), JME(005)),
el PV del temporizador continuar temporizando. (Vase la nota.) (La instruc-
cin saltada TMHH(540)/TMHHX(552) no se ejecutar, pero el PV se refers-
car cada 1 ms).
Nota En las CPUs CS1D CPU el PV no se refrescar en el caso anterior.
Cuando TMHH(540)/TMHHX(552) est en una seccin de programa entre
IL(002) e ILC(003) y la seccin de programa est bloqueada, el PV se rese-
tear al valor del SV y el indicador de finalizacin se pondr en OFF.
Cuando se fuerza a set un temporizador TMHH(540)/TMHHX(552), su indica-
dor de finalizacin se pondr en ON y su PV se configurar como 0000.
Cuando un temporizador TMHH(540)/TMHHX(552) se fuerza a reset, su indi-
cador de finalizacin se pondr en OFF y su PV se resetear al valor del SV.
La operacin de Indicador = e Indicador N depende del modelo de CPU. Con-
sulte Indicadorespara obtener ms informacin.
Si se utiliza edicin online para convertir un temporizador en otro tipo de tem-
porizador con el mismo nmero de temporizador (como TMHH(540)/
TMHHX(552) TIM/TIMX(550) o TMHH(540)/TMHHX(552) TIMH(015)/
TIMHX(551)), asegrese de resetear el indicador de finalizacin. El tempori-
zador no funcionar correctamente a menos que se resetee el indicador de
finalizacin.
El PV y el indicador de finalizacin de una instruccin TMHH(540)/
TMHHX(552) se refrescan como se muestra en la siguiente tabla.
Ejecucin de El indicador de finalizacin se pone en ON si el PV es 0000.
TMHH(540)/ El indicador de finalizacin se pone en OFF si el PV no es 0000.
TMHHX(552)
Intervalo de El PV del temporizador se actualiza cada 1 ms.
refresco de 1 ms

3-6-4 ACCUMULATIVE TIMER: TTIM(087)/TTIMX(555)


Empleo TTIM(087)/TTIMX(555) opera un temporizador de aumento con unidades de
0,1 s. El rango de seleccin para el valor seleccionado (SV) es 0 a 999,9 s
para TTIM(087) y 0 a 6.553,5 s para TTIMX(555). La precisin del temporiza-
dor es de 0,01 a 0 s.
Nota La precisin del temporizador para CPUs CS1D es de 10 ms + el tiempo de
ciclo.
Smbolo de diagrama de
rels
Mtodo Smbolo Operandos
de
refresco
de PV
BCD N: 0000 hasta 15
Entrada del TTIM(087) (decimal)
temporizador
N: Nmero de S: #0000 hasta
N temporizador #9999 (BCD)
S: Valor
S seleccionado
Entrada
de reset
Binario N: 00000 hasta 15
Entrada del TTIMX(555) (decimal)
temporizador
N: Nmero de S: &0 hasta &65535
N temporizador (decimal)
#0000 hasta
S S: Valor
seleccionado #FFFF (hex)
Entrada
de reset

247
Instrucciones de temporizador y contador Seccin 3-6

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TTIM(087)/
TTIMX(555)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite
Operandos N: Nm. de temporizador
El nmero de temporizador debe estar entre 0000 y 4095 (decimal).
S: Valor seleccionado
El valor seleccionado debe estar comprendido entre #0000 y 9999 (BCD).
Especificaciones del
operando rea N S
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 hasta A959
rea Temporizador 0000 hasta 4095 (decimal) T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- BCD:
#0000 hasta 9999 (BCD)
& no se puede usar.
Binario:
&0 hasta &65535 (decimal)
#0000 hasta #FFFF (hex)
Registros de datos --- DR0 hasta DR15
Registros de ndice --- ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15

Descripcin Cuando la entrada del temporizador est en ON, TTIM(087)/TTIMX(555)


aumenta el PV. Cuando la entrada del temporizador cambia a OFF, el tempo-
rizador dejar de aumentar el PV, pero el PV retendr su valor. El PV volver
a temporizar cuando la entrada del temporizador se ponga de nuevo en ON.
El indicador de finalizacin de temporizador se pondr en ON cuando el PV
alcance el SV.

248
Instrucciones de temporizador y contador Seccin 3-6

El estado del PV del temporizador y el indicador de finalizacin se manten-


drn despus de que el temporizador acabe. Hay tres maneras de reiniciar el
temporizador: el PV del temporizador puede cambiarse a un valor distinto a
cero (mediante MOV(021), por ejemplo), la entrada de reset puede ponerse
en ON, o puede ejecutarse CNR(545)/CNRX(547).
Entrada del
temporizador
PV del SV
temporizador
Se reanuda la .
temporizacin.
Se mantiene
el PV.

Indicador de
finalizacin

Entrada
de reset
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N se direcciona indirectamente mediante un regis-
error tro de ndice pero la direccin del registro de ndice no es
la direccin PV de un temporizador.
ON si est en modo BCD y S no contiene datos BCD.
OFF en el resto de los casos.

Precauciones Los nmeros de temporizador son compartidos por las instrucciones TIM,
TIMX(550), TIMH(015), TIMHX(551), TMHH(540), TMHHX(552), TTIM(087),
TTIMX(555), TIMW(813), TIMWX(816), TMHW(815) y TMHWX(817). Si dos
temporizadores comparten el mismo nmero de temporizador, pero no se uti-
lizan simultneamente, se generar un error de duplicacin cuando se com-
pruebe el programa, pero los temporizadores operarn normalmente. Los
temporizadores que comparten el mismo nmero de temporizador no opera-
rn correctamente si se utilizan simultneamente.
Los temporizadores se resetearn o se pausarn en los siguientes casos.
(Cuando se resetea un temporizador TTIM(087)/TTIMX(555), su PV se rese-
tea a 0000 y su indicador de finalizacin se pone en OFF).
Estado PV Indicador de finalizacin
Modo de operacin cambiado de modo 0000 OFF
RUN o MONITOR a modo PROGRAM o
viceversa.1
Alimentacin interrumpida y reseteada2 0000 OFF
Ejecucin de CNR(545)/CNRX(547), las BCD: 9999 OFF
instrucciones RESET TIMER/ Binario: FFFF
COUNTER3
Operacin en seccin bloqueada de Retiene el Retiene el estado previo.
programa (IL(002)ILC(003)) estado previo.
Operacin en seccin saltada de Retiene el Retiene el estado previo.
programa (JMP(004)JME(005)) estado previo.

Nota 1. Si el bit de retencin IOM (A50012) se ha puesto en ON, el estado del in-
dicador de finalizacin de temporizador y los PV se mantendrn cuando
se modifique el modo de operacin.
2. Si el bit de retencin IOM (A50012) ha sido puesto en ON y el estado del
bit de retencin IOM mismo est protegido en la configuracin del PLC
Setup, el estado de los indicadores de finalizacin de temporizador y los
PV se mantendrn incluso si se interrumpe la alimentacin.
3. El PV se configurar con el valor del SV cuando se ejecute TTIM(087)/
TTIMX(555).
Cuando TTIM(087)/TTIMX(555) est en una seccin de programa entre
IL(002) e ILC(003) y la seccin del programa est bloqueada, el PV retendr

249
Instrucciones de temporizador y contador Seccin 3-6

su valor anterior (no ser reseteado). Asegrese de tenerlo en cuenta cuando


programe TTIM(087)/TTIMX(555) entre IL(002) e ILC(003).
Cuando un temporizador TTIM(087)/TTIMX(555) operativo est en una sec-
cin de programa entre JMP(004) y JME(005) y la seccin de programa se
salta, el PV retendr su valor previo. Asegrese de tenerlo en cuenta cuando
programe TTIM(087)/TTIMX(555) entre JMP(004) y JME(005).
Cuando se fuerza a set un temporizador TTIM(087)/TTIMX(555), su indicador
de finalizacin se pondr en ON y su PV se configurar como 0000. Cuando
un temporizador TTIM(087)/TTIMX(555) se fuerza a reset, su indicador de
finalizacin se pondr en OFF y su PV se resetear a 0000. Las operaciones
de set forzado y reset forzado tienen prioridad sobre el estado de las entra-
das de temporizador y de reset.
El PV del temporizador se refresca solamente cuando se ejecuta TTIM(087)/
TTIMX(555), as que el temporizador no operar correctamente cuando el
tiempo de ciclo exceda de 100 ms porque el temporizador aumenta en unida-
des de 100 ms.
El indicador de finalizacin de temporizador se refresca solamente cuando se
ejecuta TTIM(087)/TTIMX(555), as que puede requerirse un retardo de hasta
un ciclo para que el indicador de finalizacin se ponga en ON una vez que la
temporizacin finalice.
Los temporizadores tpicos como TIM/TIMX(550) son contadores de disminu-
cin y el PV muestra el tiempo restante para que finalice la temporizacin. El
PV de TTIM(087)/TTIMX(555) muestra cunto tiempo ha transcurrido, as que
el PV puede usarse sin modificaciones en gran cantidad de salidas de clculo
y de visualizacin.
Ejemplo Cuando la entrada de temporizador CIO 000000 est en ON en el siguiente
ejemplo, el PV del temporizador empezar a contar hacia arriba desde 0. El
indicador de finalizacin de temporizador T0001 se pondr en ON cuando el
PV alcance el SV.
Si la entrada de reset se pone en ON, el PV del temporizador se resetear a
0000 y el indicador de finalizacin (T0001) se pondr en OFF. (Normalmente la
entrada de reset se pone en ON para resetear el temporizador y posterior-
mente la entrada de temporizador se pone en ON para inicar la temporizacin).
Si la entrada de temporizador se pone en OFF antes de alcanzar el SV, el
temporizador dejar de temporizar pero el PV se mantendr. El temporizador
volver a activarse desde su PV previo cuando la entrada de temporizador de
ponga de nuevo en ON.

Entrada del
temporizador
CIO 000000
PV del
temporizador # #
T0001 Se reanuda la
temporizacin. .
Se mantiene
Finalizacin del el PV.
temporizador
Indicador
T0001

Entrada de reset
CIO 000001

250
Instrucciones de temporizador y contador Seccin 3-6

3-6-5 LONG TIMER: TIML(542)/TIMLX(553)


Empleo TIML(542)/TIMLX(553) opera un temporizador de disminucin con unidades
de 1 s que pueden alcanzar aproximadamente 115 das para TIML(542) y
49.710 das para TIMLX(543). La precisin del temporizador es de 0 a 0,01s.
Nota La precisin del temporizador para CPUs CS1D es de 10 ms + el tiempo de
ciclo.

Smbolo de diagrama de BCD


rels
TIML(542)
D1: Indicador de
D1 finalizacin
D2 D2: Canal PV

S S: Canal SV

Binario

TIMLX(543)

D1 D1: Indicador de
finalizacin
D2 D2: Canal PV

S S: Canal SV
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TIML(542)/
TIMLX(553)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

Operandos D1: Indicador de finalizacin


El bit 0 de D1 acta como el indicador de finalizacin para TIML(542)/
TIMLX(553).
15 0
D1

Indicador de
No usar. finalizacin
D2: Canal PV
D2+1 y D2 contienen el PV de 8 dgitos binario o BCD. (D2 y D2+1 deben
estar en el mismo rea de datos). El rango del PV va de #00000000 hasta
#99999999 para TIML(542) y &00000000 hasta &4294967294 (decimal) o
bien #00000000 hasta #FFFFFFFF (hexadecimal) para TIMLX(553).
D2 D2+1 D2

S: Canal SV
S+1 y S contienen el PV de 8 dgitos binario o BCD. (S and S+1 deben estar
en el mismo rea de datos). El rango del SV debe estar entre #00000000
hasta #99999999 para TIML(542) y &00000000 hasta &4294967294 (deci-
mal) o bien #00000000 hasta #FFFFFFFF (hexadecimal) para TIMLX(553).

251
Instrucciones de temporizador y contador Seccin 3-6

S S+1 S

Especificaciones del
operando rea D1 D2 S
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 6142
CIO 6143
rea de Trabajo W000 hasta W000 hasta W510
W511
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A448 a A959 A448 hasta A958 A000 hasta A958
rea Temporizador --- --- T0000 hasta
T4094
rea Contador --- --- C0000 hasta
C4094
rea DM D00000 hasta D00000 hasta D32766
D32767
rea EM sin banco E00000 hasta E00000 hasta E32766
E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_32766
En_32767 (n = 0 a C)
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- BCD:
#00000000 hasta
99999999 (BCD)
& no se puede
usar.
Binario:
&00000000 hasta
&4294967294
(decimal) o bien
#00000000 hasta
#FFFFFFFF (hex)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15

Descripcin TIML(542)/TIMLX(553) es un temporizador de disminucin de retardo a ON


con unidades de 0,1 s que utiliza un SV de 8 dgitos y un PV de 8 dgitos.
Cuando la entrada de temporizador est en OFF, el temporizador se resetea,
es decir, el PV del temporizador se resetea al valor del SV y su indicador de
finalizacin se pone en OFF.
Cuando la entrada del temporizador cambia de OFF a ON, TIML(542)/
TIMLX(553) comienza a disminuir el PV de D2+1 y D2.. El PV continuar la
temporizacin de disminucin mientras la entrada del temporizador se man-
tenga en ON y el indicador de finalizacin del temporizador se pondr en ON
cuando el PV alcance 0000 0000.

252
Instrucciones de temporizador y contador Seccin 3-6

El estado del PV del temporizador y el indicador de finalizacin se manten-


drn despus de que el temporizador acabe. Para reiniciar el temporizador, la
entrada del temporizador debe ponerse en OFF y posteriormente de nuevo
en ON o el PV del temporizador debe cambiarse a un valor que no sea cero
(mediante MOV(021), por ejemplo).
Entrada del
temporizador
SV
PV del temporizador

Indicador de
finalizacin
(Bit 00 de D1)
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el PV contenido en D2+1 y D2 no es BCD.
error ON si el SV contenido en S+1 y S no es BCD.
OFF en el resto de los casos.

Precauciones Al contrario que la mayora de los temporizadores, TIML(542)/TIMLX(553) no


utiliza un nmero de temporizador. (El refresco del PV de rea de temporiza-
dor no se realiza para TIML(542)/TIMLX(553).)
Ya que el indicador de finalizacin para TIML(542)/TIMLX(553) est en un
rea de datos puede forzarse a set o a reset como otros bits, pero el PV no
cambiar.
El PV del temporizador se refresca solamente cuando se ejecuta TIML(542)/
TIMLX(553), as que el temporizador no operar correctamente cuando el
tiempo de ciclo exceda de 100 ms porque el temporizador aumenta en unida-
des de 100 ms.
El indicador de finalizacin de temporizador se refresca solamente cuando se
ejecuta TIML(542)/TIMLX(553), as que puede requerirse un retardo de hasta
un ciclo para que el indicador de finalizacin se ponga en ON una vez que la
temporizacin finalice.
Cuando TIML(542)/TIMLX(553) est en una seccin de programa entre
IL(002) e ILC(003) y la seccin de programa est bloqueada, el PV se rese-
tear al valor del SV y el indicador de finalizacin se pondr en OFF.
Cuando un temporizador TIML(542)/TIMLX(553) operativo est en una sec-
cin de programa entre JMP(004) y JME(005) y la seccin de programa se
salta, el PV retendr su valor previo. Asegrese de tenerlo en cuenta cuando
programe TIML(542)/TIMLX(553) entre JMP(004) y JME(005).
Asegrese de que los canales especificados para el indicador de finalizacin
y el PV (D1, D2, y D2+1) no se usan en otras instrucciones. Si estos canales
estn afectados por otras instrucciones, es posible que el indicador no opere
correctamente.

Ejemplo Cuando la entrada de temporizador CIO 000000 est en ON en el siguiente


ejemplo, el PV del temporizador (en D00101 y D00100) se ajustar con el
valor del SV (en D00101 y D00100) y el PV comenzar a contar hacia abajo.
El indicador de finalizacin de temporizador (CIO 020000) se pondr en ON
cuando el PV alcance 0000 0000.
Cuando CIO 000000 se pone en OFF, el PV del temporizador se resetear al
valor del SV y el indicador de finalizacin se pondr en OFF.

253
Instrucciones de temporizador y contador Seccin 3-6

Entrada del temporizador


CIO 000000

PV del temporizador
(D00101 y D00100)
SV del temporizador
(D00201 y D00200)

Indicador de
finalizacin del
(CIO 020000)

D1: 00200
Indicador de
finalizacin del
(CIO 020000)

D2: D00100 PV del temporizador (LSB)


D00101 PV del temporizador (MSB)

S: D00200 C 0 0 SV del temporizador:


D00201 1 0 (100.000 decimal= 10.000 s)

3-6-6 MULTI-OUTPUT TIMER: MTIM(543)/MTIMX(554)


Empleo MTIM(543)/MTIMX(554) opera un temporizador de 0,1 s con ocho SV inde-
pendientes e indicadores de finalizacin. El valor seleccionado es 0 hasta
999,9 s para MTIM(543) y 0 hasta 6.553,5 s para MTIMX(554) y la precisin
del temporizador es de 0 a 0,01 s.
Nota La precisin del temporizador para CPUs CS1D es de 10 ms + el tiempo de
ciclo.
Smbolo de diagrama de BCD
rels
MTIM(543)

D1 D1: Indicadores de
finalizacin
D2 D2: Canal PV

S S: Primer canal SV

Binario

MTIMX(554)

D1 D1: Indicadores de
finalizacin
D2 D2: Canal PV

S S: Primer canal SV
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MTIM(543)/
MTIMX(554)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

254
Instrucciones de temporizador y contador Seccin 3-6

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite
Operandos D1: Indicadores de finalizacin
D1 contiene los ocho indicadores de finalizacin as como los bits de pausa y
reset.
15 9 87 65 4 3 2 1 0
D1

No usar.
Indicadores de
finalizacin
Bit de reset
Bit de pausa
D: Canal PV
D2 contiene el PV de 4 dgitos binario o BCD.
Datos Rango
BCD #0000 hasta #9999
Binario &0 a &65535 (decimal)
#0000 hasta #FFFF (hex)

S: Primer canal SV
S a S+7 contienen los ocho SV independientes.
Cada SV debe ser como sigue:
Datos Rango
BCD #0000 hasta #9999
Binario &0 a &65535 (decimal)
#0000 hasta #FFFF (hex)

Bit correspondiente (indicador


de finalizacin) en D1

Datos Rango
BCD Un canal para cada uno de los 8 SV de temporizador:
#0000 hasta #9999
Binario Un canal para cada uno de los 8 SV de temporizador:
&0 a &65535 (decimal)
#0000 hasta #FFFF (hex)

Nota S a S+7 deben estar en el mismo rea de datos.


Especificaciones del
operando rea D1 D2 S
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6136
rea de Trabajo W000 hasta W511 W000 hasta W504
rea de bit en Espera H000 hasta H511 H000 hasta H504
rea Bit Auxiliar A448 a A959 A000 hasta A952
rea Temporizador T0000 hasta T4095 T0000 hasta
T4088

255
Instrucciones de temporizador y contador Seccin 3-6

rea D1 D2 S
rea Contador C0000 hasta C4095 C0000 hasta
C4088
rea DM D00000 hasta D32767 D00000 hasta
D32760
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32760
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32760
(n = 0 a C)
Direcciones DM/EM indirectas @ D00000 hasta @ D32767
en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indirectas *D00000 hasta *D32767
en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos --- DR0 hasta ---
DR15
Registros de ndice ---
Direccionamiento indirecto ,IR0 hasta ,IR15
utilizando registros de ndice 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047
,IR15
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15
Descripcin Cuando la condicin de ejecucin para MTIM(543)/MTIMX(554) est en ON y
los bits de reset y temporizador estn en OFF, MTIM(543)/MTIMX(554)
aumentan el PV en D2. Cuando el bit de pausa se pone en ON, el temporiza-
dor dejar de aumentar el PV, pero el PV retendr su valor. MTIM(543)/
MTIMX(554) reanudarn la temporizacin cuando el bit de pausa vielva a
ponerse en OFF.
El PV (contenido de D2) se compara con los ocho SV en S a S+7 cada vez
que se ejecuta MTIM(543)/MTIMX(554) y si alguno de los SV es menor que o
igual al PV, el indicador de finalizacin correspondiente (Bits 00 a 07 de D1)
se pone en ON.
Cuando el PV alcanza 9999, el PV se resetear a 0000 y todos los indicado-
res de finalizacin se pondrn en OFF. Si el bit de reset se pone en ON mien-
tras el temporizador est operando o pausado, el PV se resetear a 0000 y
todos los indicadores de finalizacin se pondrn en OFF.

256
Instrucciones de temporizador y contador Seccin 3-6

PV del temporizador

SV del temporizador
0

a a

Entrada del
temporizador

SV 7
PV del SV 2
temporizador SV 1
(D2) SV 0
0

Bit 7
Indicadores Bit 2
de
finalizacin
(D1) Bit 1
Bit 0

La siguiente tabla muestra la operacin de MTIM(543)/MTIMX(554) para las


cuatro posibles combinaciones de bits de reset y pausa.
Bit de reset Bit de pausa Operacin
(Bit 08) (Bit 09)
OFF OFF El PV se actualizar y el indicador de finalizacin
correspondiente se pondr en ON cuando SV PV.
ON El PV no se actualizar y MTIM(543)/MTIMX(554) se
tratar como NOP(000).
ON OFF El PV se resetear a 0000 y los indicadores de finaliza-
ON cin se pondrn en OFF. El PV no se actualizar.

Los bits de reset y pausa son efctivos solamente cuando la condicin de eje-
cucin para MTIM(543)/MTIMX(554) est en ON.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el PV contenido en D2 no es BCD.
error OFF en el resto de los casos.

Precauciones Al contrario que la mayora de los temporizadores, MTIM(543)/MTIMX(554)


no utiliza un nmero de temporizador. (El refresco del PV de rea de tempori-
zador no se realiza para MTIM(543)/MTIMX(554).)
Cuando el PV alcanza 9999, el PV se resetear a 0000 y todos los indicado-
res de finalizacin se pondrn en OFF.
Si se est en modo BCD y un SV en S a S+7 no contiene datos BCD, ese SV
ser ignorado. No se producir un error y el indicador de error no se pondr
en ON.
Ya que el indicador de finalizacin para MTIM(543)/MTIMX(554) est en un
rea de datos puede forzarse a set o a reset como otros bits, pero el PV no
cambiar.
Cuando se requieren ocho o menos SV, configure el canal despus del ltimo
SV como 0000. MTIM(543)/MTIMX(554) ignorarn el SV que est configu-
rado como 0000 y el resto de los SV.

257
Instrucciones de temporizador y contador Seccin 3-6

a a

Estos SV se
ignoran.
El PV del temporizador se refresca solamente cuando se ejecuta MTIM(543)/
MTIMX(554), as que el temporizador no operar correctamente cuando el
tiempo de ciclo exceda de 100 ms porque el temporizador aumenta en unida-
des de 100 ms. Para asegurar una temporizacin precisa y prevenir proble-
mas causados por tiempos de ciclo largos, introduzca la misma instruccin
MTIM(543)/MTIMX(554) en distintos puntos del programa.
El indicador de finalizacin de temporizador se refresca solamente cuando se
ejecuta MTIM(543)/MTIMX(554), as que puede requerirse un retardo de
hasta un ciclo para que el indicador de finalizacin se ponga en ON una vez
que la temporizacin finalice.
Cuando MTIM(543)/MTIMX(554) est en una seccin de programa entre
IL(002) e ILC(003) y la seccin del programa est bloqueada, el PV retendr
su valor anterior (no ser reseteado). Asegrese de tenerlo en cuenta cuando
programe MTIM(543)/MTIMX(554) entre IL(002) e ILC(003).
Cuando un temporizador MTIM(543)/MTIMX(554) operativo est en una sec-
cin de programa entre JMP(004) y JME(005) y la seccin de programa se
salta, el PV retendr su valor previo. Asegrese de tenerlo en cuenta cuando
programe MTIM(543)/MTIMX(554) entre JMP(004) y JME(005).
Asegrese de que los canales especificados para los indicadores de finaliza-
cin y PV (D1 y D2) no se usan en otras instrucciones. Si estos canales estn
afectados por otras instrucciones, es posible que el indicador no opere
correctamente.
Si se especifica un canal del rea CIO para D1, las instrucciones SET y
RSET pueden utilizarse para controlar los bits de pausa y reset.

Ejemplo Cuando CIO 000000 est en ON y el bit de pausa (CIO 010009) en OFF en el
siguiente ejemplo, el temporizador comenzar a operar cuando el bit de reset
(CIO 010009) cambie de ON a OFF. El PV del temporizador comenzar la
temporizacin desde 0000 hacia arriba.
Los ocho SV en D00200 a D00207 se comparan con el PV y los indicadores
de finalizacin correspondientes (CIO 010000 a CIO 010007) se ponen en
ON cuando el SV PV.

258
Instrucciones de temporizador y contador Seccin 3-6

D1: 0100CH

Indicadores de finalizacin

Bit de reset
Bit de pausa

PV del temporizador
(ascendente)
D2: D00100 Indicador de finalizacin
correspondiente en ON
cuando SV _ PV.
SV del temporizador
S: D00200
S+1: D00201
S+2: D00202
S+3: D00203
S+4: D00204
S+5: D00205
S+6: D00206
S+7: D00207

Entrada del
temporizador La entrada del temporizador
CIO 000000
debe permanecer en ON
mientras el temporizador
Bit de reset est operativo.
CIO 010008

Bit de pausa
CIO 010009

Se reanuda la
PV mx. = 9999 temporizacin.

SV del temporizador
SV 7

SV 1
Se mantiene el PV.
SV 0

Indicadores de finalizacin

259
Instrucciones de temporizador y contador Seccin 3-6

3-6-7 COUNTER: CNT/CNTX(546)


Empleo CNT/CNTX(546) opera un contador de disminucin. El rango de configura-
cin para CNT es de 0 a 9.999 y para CNTX(546) de 0 a 65.535.

Smbolo de diagrama de BCD


rels
Entrada de
CNT
contador
N N: Nmero de contador

S S: Valor seleccionado
Entrada
de reset
Binario

Entrada de
contador CNTX(546)

N N: Nmero de contador

S S: Valor seleccionado
Entrada
de reset
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CNT/
CNTX(546)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
No se admite OK OK OK

Operandos N: Nmero de contador


El nmero de contador debe estar entre 0000 y 4095 (decimal).
S: Valor seleccionado
Datos Rango
BCD #0000 hasta #9999
Binario &0 a &65535 (decimal)
#0000 hasta #FFFF (hex)

Especificaciones del
operando rea N S
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en --- H000 hasta H511
Espera
rea Bit Auxiliar --- A000 hasta A959
rea Temporizador --- T0000 hasta T4095
rea Contador 0000 hasta 4095 (decimal) C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con --- En_00000 hasta En_32767
Banco (n = 0 a C)

260
Instrucciones de temporizador y contador Seccin 3-6

rea N S
Direcciones DM/ --- @ D00000 hasta @ D32767
EM indirectas en @ E00000 hasta @ E32767
binario
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/ --- *D00000 hasta *D32767
EM indirectas en *E00000 hasta *E32767
BCD
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- BCD:
#0000 hasta 9999 (BCD)
& no se puede usar.
Binario:
&0 hasta &65535 (decimal)
#0000 hasta #FFFF (hex)
Registros de datos --- DR0 hasta DR15
Registros de ndice --- ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15

Descripcin El PV del contador disminuye en 1 cada vez que la entrada de contador cam-
bia de OFF a ON. El indicador de finalizacin se pone en ON cuando el PV
alcanza 0.
Una vez que el indicador de finalizacin se pone en ON, resetee el contador
poniendo la entrada de reset en ON o utilizando la instruccin CNR(545)/
CNRX(547). En caso contrario el contador no podr reiniciarse.
El contador se resetea y la entrada de contador se ignora cuando la entrada
de reset est en ON. (Cuando se resetea un contador, su PV se resetea al
valor del SV y su indicador de finalizacin se pone en OFF).
Entrada de
contador

Entrada
de reset
PV del SV
contador

Indicador de
finalizacin

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N se direcciona indirectamente mediante un regis-
error tro de ndice pero la direccin del registro de ndice no es
la direccin PV de un contador.
ON si est en modo BCD y S no contiene datos BCD.
OFF en el resto de los casos.
Indicador de = OFF o sin cambios (vase la nota).
igual
Indicador de N OFF o sin cambios (vase la nota).
negativo

Nota En las CPUs CS1 y CJ1 estos estn en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

261
Instrucciones de temporizador y contador Seccin 3-6

Precauciones Los nmeros de contador son compartidos por las instrucciones CNT,
CNTX(546), CNTR(012), CNTRX(548), CNTW(814) y CNTWX(818). Si dos
contadores comparten el mismo nmero de contador, pero no se utilizan
simultneamente, se generar un error de duplicacin cuando se compruebe
el programa, pero los contadores operarn normalmente. Los contadores que
comparten el mismo nmero de contador no operarn correctamente si se
utilizan simultneamente.
Un PV de contador se refresca cuando la entrada de contador cambia de
OFF a ON y el indicador de finalizacin se refresca cada vez que se ejecuta
CNT/CNTX(546). El indicador de finalizacin se pone en ON si el PV es 0 y
se pone en OFF si el PV no es 0.
Cuando se fuerza a set un contador CNT/CNTX(546), su indicador de finali-
zacin se pondr en ON y su PV se resetea a 0000. Cuando un contador
CNT/CNTX(546) se fuerza a reset, su indicador de finalizacin se pondr en
OFF y su PV se resetear al valor del SV.
Asegrese de resetear el contador cambiando la entrada de reset de
OFF ON OFF antes de empezar el contaje con la entrada de contador,
tal y como se muestra en el siguiente diagrama. La entrada de contador no se
recibir si la entrada de reset est en ON.
Entrada
de reset

Entrada
de contador
SV
PV del contador

Indicador de
finalizacin

Listo para iniciar


el contaje.

La entrada de reset tomar precedencia y el contador se resetear si la


entrada de reset y la entrada de contador estn ambas en ON al mismo
tiempo. (El PV se resetear al valor del SV y los indicadores de finalizacin se
pondrn en OFF).
Entrada
de reset

Entrada
de contador

SV
PV del contador

Indicador de
finalizacin
La entrada
La entrada de La entrada de contador
contador puede de reset puede
recibirse. toma
precedencia. recibirse.

La operacin de Indicador = e Indicador N depende del modelo de CPU. Con-


sulte Indicadores para obtener ms informacin.
Nota Si se utiliza edicin online para aadir un contador, el contador debe rese-
tearse para que funcione correctamente. Si el contador no se resetea, se utili-
zar el valor previo como el valor actual de contador (PV) y el contador puede
no operar correctamente una vez se haya escrito.

262
Instrucciones de temporizador y contador Seccin 3-6

Los PV de contador se retienen incluso si se produce una interrupcin de la


alimentacin. Si desea reiniciar el contaje desde el SV en lugar de reanudar
el contaje desde el PV retenido, aada el indicador de primer ciclo (A20011)
como entrada de reset al contador.

Indicador de primer
ciclo (A20011)

3-6-8 REVERSIBLE COUNTER: CNTR(012)/CNTRX(548)


Empleo CNTR(012)/CNTRX(548) opera un contador reversible.
Smbolo de diagrama de BCD
rels
Entrada de
aumento CNTR(012)

N N: Nmero de contador

S S: Valor seleccionado
Entrada de
disminucin
Entrada de reset
Binario
Entrada de
aumento CNTRX(548)

N N: Nmero de contador

S S: Valor seleccionado
Entrada de
disminucin
Entrada de reset
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CNTR(012)/
CNTRX(548)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
No se admite OK OK OK

Operandos N: Nm. contador


El nmero de contador debe estar entre 0000 y 4095 (decimal).
S: Valor seleccionado
Datos Rango
BCD #0000 hasta #9999
Binario &0 a &65535 (decimal)
#0000 hasta #FFFF (hex)

263
Instrucciones de temporizador y contador Seccin 3-6

Especificaciones del
operando rea N S
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en --- H000 hasta H511
Espera
rea Bit Auxiliar --- A000 hasta A959
rea Temporizador --- T0000 hasta T4095
rea Contador 0000 hasta 4095 (decimal) C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en @ E00000 hasta @ E32767
binario
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- BCD:
#0000 hasta 9999 (BCD)
& no se puede usar.
Binario:
&0 hasta &65535 (decimal)
#0000 hasta #FFFF (hex)
Registros de datos --- DR0 hasta DR15
Registros de ndice --- ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15

Descripcin El PV del contador aumenta en 1 cada vez que la entrada de aumento pasa
de OFF a ON y disminuye en 1 cada vez que la entrada de disminucin pasa
de OFF a ON. El PV puede oscilar entre 0 y SV.

Entrada de aumento

Entrada de
disminucin

PV del contador

Cuando se aumenta, el indicador de finalizacin se pone en ON cuando el PV


se aumenta de SV de vuelta a 0 y se pone en OFF de nuevo cuando el PV se
aumenta de 0 a 1.

264
Instrucciones de temporizador y contador Seccin 3-6

PV del contador SV

+1

Indicador de
finalizacin

Cuando se disminuye, el indicador de finalizacin se pone en ON cuando el


PV se disminuye de 0 de vuelta a SV y se pone en OFF de nuevo cuando el
PV se disminuye de SV a SV1.
SV 1
PV del contador

Indicador de
finalizacin
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N se direcciona indirectamente mediante un regis-
error tro de ndice pero la direccin del registro de ndice no es
la direccin PV de un contador.
ON si est en modo BCD y S no contiene datos BCD.
OFF en el resto de los casos.

Precauciones Los nmeros de contador son compartidos por las instrucciones CNT,
CNTX(546), CNTR(012), CNTRX(548), CNTW(814) y CNTWX(818). Si dos
contadores comparten el mismo nmero de contador, pero no se utilizan
simultneamente, se generar un error de duplicacin cuando se compruebe
el programa, pero los contadores operarn normalmente. Los contadores que
comparten el mismo nmero de contador no operarn correctamente si se
utilizan simultneamente.
El PV no cambiar si las entradas de aumento y disminucin cambian de
OFF a ON al mismo tiempo. Cuando la entrada de reset est en ON, el PV se
resetear a 0 y ambas entradas de contador se ignorarn.
El indicador de finalizacin estar en ON slo cuando el PV haya sido aumen-
tado desde SV a 0 o disminuido de 0 a SV; estar en OFF en el resto de los
casos.
Cuando se introduce la instruccin CNTR(012)/CNTRX(548) con nemnicos,
introduzca en primer lugar la entrada de aumento (II), despus la entrada de
disminucin (DI), la entrada de reset (R) y finalmente la instruccin
CNTR(012)/CNTRX(548). Cuando se introduce con diagrama de rels, intro-
duzca en primer lugar la entrada de aumento (II), posteriormente la instruc-
cin CNTR(012)/CNTRX(548), la entrada de disminucin (DI) y finalmente la
entrada de reset (R).

Ejemplos Operacin bsica de CNTR(012)/CNTRX(548)


El PV del contador se resetea a 0 alternando la entrada de reset
(CIO 000002) ON y OFF. El PV aumenta en 1 cada vez que la entrada de
aumento (CIO 000000) cambia de OFF a ON. Cuando el PV aumenta desde
SV (3) se resetea automticamente a 0 y el indicador de finalizacin se pone
en ON.
De manera similar, el PV disminuye en 1 cada vez que la entrada de disminu-
cin (CIO 000001) cambia de OFF a ON. Cuando el PV disminuye desde 0
se ajusta automticamente con el valor del SV (3) y el indicador de finaliza-
cin se pone en ON.

265
Instrucciones de temporizador y contador Seccin 3-6

Entrada
de aumento

Entrada de
disminucin Entrada de
aumento
Entrada CIO 000000
de reset Entrada de
disminucin
CIO 000001

Entrada de reset
CIO 000002

SV
PV del contador
C0001

Indicador de
finalizacin
C0001

Especificacin del SV en un canal


En el siguiente ejemplo, el SV para CNTR(012) 0007 es determinado por el
contexto de CIO 0001. Cuando el contenido de CIO 0001 es controlado por
un interruptor externo, el valor configurado puede modificarse manualmente
desde el interruptor.

SV fijo:
5000

SV:
CIO 0001

Entrada de
aumento

Entrada de
disminucin

Indicador de
finalizacin
Desplazamiento Desplazamiento

266
Instrucciones de temporizador y contador Seccin 3-6

3-6-9 RESET TIMER/COUNTER: CNR(545)/CNRX(547)


Empleo Restablece los temporizadores o contadores dentro del rango especificado
de nmeros de temporizador o contador.

Smbolo de diagrama de BCD


rels
CNR(545)

N1 N1: Primer nmero en el rango

N2 N2: ltimo nmero en el rango

Binario

CNRX(547)

N1 N1: Primer nmero en el rango

N2 N2: ltimo nmero en el rango


Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CNR(545)/
CNRX(547)
Se ejecuta una vez en el diferencial ascendente @CNR(545)/
CNRX(547)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos N1: Primer nmero en el rango


N1 debe ser un nmero de temporizador entre T0000 y T4095 o un nmero
de contador entre C0000 y C4095.
N2: ltimo nmero en el rango
N2 debe ser un nmero de temporizador entre T0000 y T4095 o un nmero
de contador entre C0000 y C4095.
Nota N1 y N2 deben estar en el mismo rea de datos, es decir, N1 y N2 deben ser
nmeros de temporizador o nmeros de contador.
Especificaciones del
operando rea N1 N2
rea CIO --- ---
rea de Trabajo --- ---
rea de bit en Espera --- ---
rea Bit Auxiliar --- ---
rea Temporizador C0000 hasta C4095 C0000 hasta C4095
rea Contador T0000 hasta T4095 T0000 hasta T4095
rea DM --- ---
rea EM sin banco --- ---
rea EM con Banco --- ---
Direcciones DM/EM --- ---
indirectas en binario
Direcciones DM/EM --- ---
indirectas en BCD

267
Instrucciones de temporizador y contador Seccin 3-6

rea N1 N2
Constantes --- ---
Registros de datos --- ---
Registros de ndice --- ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin CNR(545)/CNRX(547) resetea los indicadores de finalizacin de todos los


temporizadores o contadores desde N1 a N2. Al mismo tiempo, todos los PV
se seleccionarn con el valor mximo (9999 para BCD y FFFF para binario).
(El PV se ajustar con el valor del SV la prxima vez que se ejecute la ins-
truccin de temporizador o contador).
Temporizadores resetados por CNR(545)/CNRX(547)
Los siguientes temporizadores se resetearn si sus nmeros de temporiza-
dor estn dentro del rango especificado: TIM, TIMX(550), TIMH(015),
TIMHX(551), TMHH(540), TMHHX(552), TTIM(087), TTIMX(555),
TIMW(813), TIMWX(816), TMHW(815) y TMHWX(817). Cuando se resetea
un temporizador, su indicador de finalizacin se pone en OFF y su PV se
ajusta al valor mximo de 9999.
Nota Los temporizadores TIML(542), TIMLX(553), MTIM(543) y MTIMX(554) no
son reseteados por CNR(545)/CNRX(547) ya que estos temporizadores no
usan nmeros de temporizador.
Contadores resetados por CNR(545)/CNRX(547)
Los siguientes contadores se resetearn si sus nmeros de contador estn
dentro del rango especificado: CNT, CNTX(546), CNTR(012), CNTRX(548),
CNTW(814) y CNTWX(818). Cuando se resetea un contador, su indicador de
finalizacin se pone en OFF y su PV se ajusta al valor mximo de 9999.

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si N1 se direcciona indirectamente mediante un registro
de error de ndice pero la direccin del registro de ndice no es la
direccin PV de un temporizador o contador.
ON si N2 se direcciona indirectamente mediante un registro
de ndice pero la direccin del registro de ndice no es la
direccin PV de un temporizador o contador.
ON si N1 y N2 pero no en el mismo rea de datos.
OFF en el resto de los casos.

Precauciones CNR(545)/CNRX(547) no resetea las instrucciones de temporizador/contador


en s mismas, resetea el PV y los indicadores de finalizacin asignados a
esas instrucciones. En la mayora de los casos, el efecto de CNR(545)/
CNRX(547) es diferente al de un reset directo de las instrucciones. Por ejem-
plo, cuando una instruccin TIM/TIMX(550) se resetea directamente, su PV
se ajusta con el valor del SV, pero cuando ese contador es reseteado por
CNR(545)/CNRX(547) su PV se ajusta con el valor mximo de 9999.
Cuando N1 y N2 se especifican con N1>N2, slo se resetear el indicador de
finalizacin para el nmero de temporizador/contador.
Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, los indicadores de
finalizacin para los temporizadores T0002 a T0005 se ponen en OFF y los
PV de los temporizadores se ajustan con el valor mximo de 9999.

268
Instrucciones de temporizador y contador Seccin 3-6

Cuando CIO 000001 est en ON, los indicadores de finalizacin para los con-
tadores C0003 a C0007 se ponen en OFF y los PV de los contadores se ajus-
tan con el valor mximo de 9999.

3-6-10 Aplicaciones de ejemplo de temporizador y contador


Los siguientes ejemplos muestran varias aplicaciones de instrucciones de
temporizador y contador incluyendo temporizadores de larga duracin, un
contador doble, retardo a ON/OFF, bit monoestable y bit parpadeante.

Ejemplo 1: Los siguientes ejemplos de programa muestran tres formas de crear tempori-
Temporizadores de larga zadores de larga duracin con instrucciones estndar TIM y CNT.
duracin
Dos instrucciones TIM
En este ejemplo se combinan dos instrucciones TIM para hacer un tempori-
zador de 30 minutos.
000000
Direccin Instruccin Operandos
000000 LD 000000
000001 TIM 0001
T0001
#9000
000002 LD T0001
000003 TIM 0002
#9000
T0002 000004 LD T0002
000005 OUT 000200

Instrucciones TIM yCNT


En este ejemplo se combina una instruccin TIM con una instruccin CNT
para hacer un contador de 500 segundos.
TIM 0001 genera un impulso cada 5 s y CNT 0002 cuenta estos impulsos. El
valor seleccionado para esta combinacin es intervalo de temporizador SV
de contador. En este caso el SV del temporizador sera 5 s 100 = 500 s.
Con esta combinacin el PV del temporizador de larga duracin es en reali-
dad el PV de un contador, que se mantiene durante interrupciones de alimen-
tacin.

269
Instrucciones de temporizador y contador Seccin 3-6

Direccin Instruccin Operandos


000000 LD 010000
000001 LD 000001
000002 CNT 0002
#0100
000003 LD 000000
000004 AND NOT 010000
Iniciar Contar 000005 AND NOT C0002
000006 TIM 0001
#0050
000007 LD T0001
000008 OUT 010000
000009 LD C0002
000010 OUT 000201

Impulso de reloj e instruccin CNT


En este ejemplo, una instruccin CNT cuenta los impulsos desde el impulso
de reloj de 1 s para hacer un temporizador de 700 segundos.
Si el indicador primer ciclo (A20011) est sujeto a condicin O con la entrada
de reset del contador (CIO 000001), el PV del contador se resetear al valor
del SV (0700) cuando comience la ejecucin del programa en lugar de reanu-
dar la cuenta desde el PV previo.
000000 1 s (reloj de 1 s)
Direccin Instruccin Operandos
000000 LD 000000
000001 AND 1s
000001
000002 LD 000001
000003 OR A20011
A20011 000004 CNT 0001
#0700
C0001 000005 LD C0001
000006 OUT 000202

Ejemplo 2: Cuando se requiere un SV mayor que 9999, pueden combinarse dos conta-
Contador doble dores como se muestra en el siguiente ejemplo. En este caso se combinan
dos instrucciones CNT para hacer un contador BCD con un SV de 20.000.

Direccin Instruccin Operandos


000000 LD 000000
000001 AND 000001
000002 LD NOT 000002
000003 OR C0001
000004 OR C0002
000005 CNT 0001
#0100
000006 LD C0001
000007 LD NOT 000002
000008 CNT 0002
#0200
000009 LD C0002
000010 OUT 000203

270
Instrucciones de temporizador y contador Seccin 3-6

Ejemplo 3: En este ejemplo se combinan dos temporizadores TIM con KEEP(011) para
Retardo a ON/OFF hacer un retardo a ON y un retardo a OFF. CIO 000500 se pondr en ON 5,0
segundos despus de que CIO 000000 ser ponga en ON y se pondr en OFF
3,0 segundos despus de que CIO 000000 se ponga en OFF.

Direccin Instruccin Operandos


000000 LD 000000
000001 TIM 0001
#0050
000002 LD 000500
000003 AND NOT 000000
000004 TIM 0002
#0030
000005 LD T0001
000006 LD T0002
000007 KEEP(011) 000500

CIO 000000

CIO 000500

5,0 s 30,0 s

Ejemplo 4: Un temporizador TIM puede combinarse con OUT o bien OUT NOT para con-
Bit monoestable trolar durante cunto tiempo un bit concreto esta en ON u OFF. En este ejem-
plo, CIO 000204 estar en ON durante 1,5 segundos (el SV de T0001)
despus de que CIO 000000 se ponga en ON.

Direccin Instruccin Operandos


000000 LD 000000
000001 LD 001000
000002 AND NOT 010000
000003 OR 000000
000004 OUT 001000
000005 LD 001000
000006 TIM 0001
#0015
000007 LD T0001
000008 OUT 010000
000009 LD 001000
00010 AND NOT 010000
000011 OUT 000204

CIO 000000

CIO 000204

1,5 s 1,5 s

271
Instrucciones de temporizador y contador Seccin 3-6

Ejemplo 4: El siguiente programa ejemplifica dos maneras de crear bits parpadeantes. El


Bit parpadeante segundo ejemplo simplemente imita un impulso de reloj.
Dos instrucciones TIM
Pueden combinarse dos temporizadores TIM para hacer que un bit se ponga
en ON y en OFF a intervalos regulares mientras la condicin de ejecucin
est en ON. En este ejemplo, CIO 000205 se pondr en OFF durante 1,0
segundo y despues en ON durante 1,5 segundos mientras CIO 000000 est
en ON.

Direccin Instruccin Operandos


000000 LD 000000
000001 AND T0002
000002 TIM 0001
#0010
000003 LD 000205
000004 TIM 0002
#0015
000005 LD T0001
000006 OUT 000205

CIO 000000

CIO 000205
1,0 s 1,5 s 1,0 s 1,5 s

Impulso de reloj
La condicin de ejecucin deseada puede combinarse con un impulso de
reloj para initar el impulso de reloj (0,1 s, 0,2 s, o bien 1,0 s).
Impulso de reloj de 1 s Direccin Instruccin Operandos
000000 LD 000000
000001 AND 1s
000002 OUT 000206

Impulso
de reloj
de 1 s

3-6-11 Direccionamiento indirecto de nmeros de Temporizador/


Contador
Los nmeros de temporizador y contador pueden direccionarse indirecta-
mente mediante registros de ndice. Cuando se usan registros de ndice para
el direccionamiento indirecto, use MOVRW(561) (MOVE TIMER/COUNTER
PV TO REGISTER) para configurar la direccin de memoria del PLC del PV
del temporizador o contador deseado en el registro de ndice deseado.
Los siguientes temporizadores y contadores pueden direccionarse indirecta-
mente mediante registros de ndice. TIM, TIMX(550), TIMH(015),
TIMHX(551), TTIM(087), TTIMX(555), TMHH(540), TMHHX(552),
TIMW(813), TIMWX(816), TMHW(815), TMHWX(817), CNT, CNTX(546),
CNTR(012), CNTRX(548), CNTW(814) y CNTWX(818). (Estos son los tem-
porizadores y contadores que utilizan nmeros de temporizador y contador).

272
Instrucciones de temporizador y contador Seccin 3-6

La instruccin de temporizador o contador no se ejecutar si la direccin de


memoria del PLC del registro de ndice especificado no es la direccin de un
PV de temporizador o contador.
La utilizacin de registros de ndice para direccionar indirectamente tempori-
zadores y contadores puede reducir el tamao del programa y aumentar la
flexibilidad. Por ejemplo pueden crearse subrutinas comunes.

Ejemplo El siguiente ejemplo muestra una seccin de programa que utiliza direcciona-
miento indirecto para definir e iniciar 100 temporizadores con el SV contenido
en de D00100 hasta D00199. IR0 contiene la direccin de memoria del PLC
del PV del temporizador e IR1 contiene la direccin de memoria del PLC del
indicador de finalizacin del temporizador.
Direccin DM Contenido Funcin
D00100 0010 SV para T0000
D00101 0100 SV para T0001
D00102 0050 SV para T0002
. . .
. . .
. . .
D00199 0999 SV para T0099

P On
1
(Indicador de
siempre ON)

4
&100

FOR
&100

5
@D00000

P On
++
(Indicador de
siempre ON)

NEXT

273
Instrucciones de temporizador y contador Seccin 3-6

1,2,3... 1. MOVRW(561) mueve la direccin de memoria del PLC del PV para el tem-
porizador T0000 a IR0. Posteriormente IR0 puede utilizarse en lugar del
nmero de contador.
2. MOVR(560) mueve la direccin de memoria del PLC del indicador de fina-
lizacin para el temporizador T0000 a IR1.
3. MOVR(560) mueve la direccin de memoria del PLC de CIO 200000 a
IR2.
4. MOV(021) mueve &100 a D00000 para direccionamiento indirecto del SV
del temporizador.
5. El contenido de IR0, IR1, IR2 y D00000 aumenta en 1 cada vez que este
lazo se ejecuta 100 veces, iniciando los temporizadores T0000 hasta
T0099.
El lazo del programa anterior tiene 4 parmetros de introduccin que se utili-
zan para iniciar los 100 temporizadores con esta subrutina comn.
IR0 La direccin de memoria del PLC del PV del temporizador
IR1 La direccin de memoria del PLC del indicador de finalizacin
del temporizador
IR2 La direccin de memoria del PLC de la condicin de ejecucin
del temporizador
D00000La direccin DM del canal que contiene el SV del temporizador
La subrutina anterior es equivalente a las 400 instrucciones siguientes.

Direccin Instruccin Operandos


200000
000000 LD NOT 200000
000001 TIM 0000
D00100
000002 LD T0000
T0000
000003 OUT 200000
000004 LD NOT 200001
200001
000005 TIM 0001
D00101
000006 LD T0001
000007 OUT 200001
000008 LD NOT 200002
T0001
000009 TIM 0002
D00102
200602
000010 LD T0002
000011 OUT 200002

T0099 000396 LD NOT 200602


000397 TIM 0099
D00199
000398 LD T0000
000399 OUT 200602

274
Instrucciones de comparacin Seccin 3-7

3-7 Instrucciones de comparacin


Esta seccin describe las instrucciones utilizadas para comparar datos de
varias longitudes de distintas maneras.
Instruccin Nemnico Cdigo de Pgina
funcin
Instrucciones de comparacin =, <>, <, <=, >, >= 300 hasta 275
de entrada (S, L) (LD, AND, OR) 328
Instrucciones de comparacin =DT, <>DT, <DT, <=DT, >DT, 341 hasta 281
de tiempo >=DT (LD, AND, OR) 346
COMPARE CMP 020 287
DOUBLE COMPARE CMPL 060 290
SIGNED BINARY COMPARE CPS 114 293
DOUBLE SIGNED BINARY CPSL 115 296
COMPARE
MULTIPLE COMPARE MCMP 019 299
TABLE COMPARE TCMP 085 301
BLOCK COMPARE BCMP 068 304
EXPANDED BLOCK COMPARE BCMP2 502 306

3-7-1 Instrucciones de comparacin de entrada (300 hasta 328)


Empleo Las instrucciones de comparacin de entrada comparan dos valores (cons-
tantes y/o el contenido de canales especificados) y crean una condicin de
ejecucin ON si la condicin de comparacin es verdadera. Las instrucciones
de comparacin de entrada estn disponibles para comparar datos con o sin
signo de un canal o datos de longitud doble.
Nota Consulte en 3-15-21 Instrucciones de comparacin de coma flotante de preci-
sin simple ms detalles sobre las instrucciones de comparacin de entrada
de coma flotante de precisin simple y en 3-16-21 Instrucciones de entrada
de coma flotante de doble precisin ms detalles sobre las instrucciones de
comparacin de entrada de coma flotante de doble precisin.

Smbolo de diagrama de
rels Smbolo y opciones

S1 S1: Datos de comparacin 1

S2 S2: Datos de comparacin 2

Variaciones
Variaciones Crea ON cada ciclo que la comparacin es Instruccin de
verdadera. comparacin de
entrada
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones de
operando para rea S1 S2
instrucciones de datos de rea CIO CIO 0000 hasta CIO 6143
un canal
rea de Trabajo W000 hasta W511

275
Instrucciones de comparacin Seccin 3-7

rea S1 S2
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_ 32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Especificaciones de
operando para rea S1 S2
instrucciones de datos de rea CIO CIO 0000 hasta CIO 6142
longitud doble
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF (binario)
Registros de datos ---

276
Instrucciones de comparacin Seccin 3-7

rea S1 S2
Registros de ndice IR0 hasta IR15 (slo para datos sin signo)
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin de comparacin de entrada compara S1 y S2 como valores con


o sin signo y crea una condicin de ejecucin ON cuando la condicin de
comparacin es verdadera. Al contrario que en el caso de instrucciones como
CMP(020) y CMPL(060), el resultado de una instruccin de comparacin de
entrada se refleja directamente como una condicin de ejecucin, as que no
es necesario acceder al resultado de la comparacin mediante un indicador
aritmtico y el programa es ms sencillo y ms rpido.
Introduccin de las instrucciones
Las instrucciones de comparacin de entrada se tratan de la misma manera
que las instrucciones LD, AND y OR para controlar la ejecucin de instruccio-
nes subsecuentes.
Tipo de Operacin
entrada
LD La instruccin puede conectarse directamente a la barra de bus
izquierda.
AND La instruccin no puede conectarse directamente a la barra de bus
izquierda.
OR La instruccin puede conectarse directamente a la barra de bus
izquierda.

Conexin LD Condicin de ejecucin ON si el resultado de


la comparacin es verdadero.
<

Condicin de ejecucin ON si
Conexin AND el resultado de la compara-
cin es verdadero.
<

Conexin OR

<
Condicin de ejecucin ON si el resultado de
la comparacin es verdadero.

Opciones
Las instrucciones de comparacin de entrada pueden comparar datos con o
sin signo y valores de un canal o valores dobles. Si no se especifica ninguna

277
Instrucciones de comparacin Seccin 3-7

opcin, la comparacin se realizar para datos sin signo de un canal. Con


tres tipos de entrada y dos opciones hay disponibles 72 instrucciones de
comparacin de entrada diferentes.
Smbolo Opcin (formato de Opcin (longitud de
datos) datos)
= (Igual que) Ninguno: Datos sin Ninguno: Datos de un
<> (Distinto de) signo canal
< (Menor que) S: Datos con signo L: Datos de doble lon-
gitud
<= (Menor o igual que)
> (Mayor que)
>= (Mayor o igual que)

Las instrucciones de comparacin de entrada sin signo (es decir, las instruc-
ciones sin la opcin S) pueden gestionar datos binarios sin signo o datos
BCD. Las instrucciones de comparacin de entrada con signo (es decir, las
instrucciones con la opcin S) pueden gestionar datos binarios con signo.
Resumen de instrucciones de comparacin de entrada
En la siguiente tabla se muestran los cdigos de funcin, nemnicos, nom-
bres y funciones de las 72 instrucciones de comparacin de entrada. (Para
comparaciones de un canal C1=S1 y C2=S2; para comparaciones dobles
C1=S1+1, S1 y C2=S2+1, S2.)
Cdigo Nemnico Nombre Funcin
300 LD = LOAD EQUAL Verda-
AND = AND EQUAL dera si
C1 = C2
OR = OR EQUAL
301 LD=L LOAD DOUBLE EQUAL
AND=L AND DOUBLE EQUAL
OR=L OR DOUBLE EQUAL
302 LD=S LOAD SIGNED EQUAL
AND=S AND SIGNED EQUAL
OR=S OR SIGNED EQUAL
303 LD=SL LOAD DOUBLE SIGNED EQUAL
AND=SL AND DOUBLE SIGNED EQUAL
OR=SL OR DOUBLE SIGNED EQUAL
305 LD<> LOAD NOT EQUAL Verda-
AND<> AND NOT EQUAL dera si
C1 C2
OR<> OR NOT EQUAL
306 LD <>L LOAD DOUBLE NOT EQUAL
AND <>L AND DOUBLE NOT EQUAL
OR <>L OR DOUBLE NOT EQUAL
307 LD <>S LOAD SIGNED NOT EQUAL
AND <>S AND SIGNED NOT EQUAL
OR <>S OR SIGNED NOT EQUAL
308 LD <>SL LOAD DOUBLE SIGNED NOT EQUAL
AND <>SL AND DOUBLE SIGNED NOT EQUAL
OR <>SL OR DOUBLE SIGNED NOT EQUAL

278
Instrucciones de comparacin Seccin 3-7

Cdigo Nemnico Nombre Funcin


310 LD < LOAD LESS THAN Verda-
AND< AND LESS THAN dera si
C1 < C2
OR < OR LESS THAN
311 LD <L LOAD DOUBLE LESS THAN
AND <L AND DOUBLE LESS THAN
OR <L OR DOUBLE LESS THAN
312 LD <S LOAD SIGNED LESS THAN
AND <S AND SIGNED LESS THAN
OR <S OR SIGNED LESS THAN
313 LD <SL LOAD DOUBLE SIGNED LESS THAN
AND <SL AND DOUBLE SIGNED LESS THAN
OR <SL OR DOUBLE SIGNED LESS THAN
315 LD <= LOAD LESS THAN OR EQUAL Verda-
AND <= AND LESS THAN OR EQUAL dera si
C1 C2
OR <= OR LESS THAN OR EQUAL
316 LD <=L LOAD DOUBLE LESS THAN OR EQUAL
AND <=L AND DOUBLE LESS THAN OR EQUAL
OR <=L OR DOUBLE LESS THAN OR EQUAL
317 LD <=S LOAD SIGNED LESS THAN OR EQUAL
AND <=S AND SIGNED LESS THAN OR EQUAL
OR <=S OR SIGNED LESS THAN OR EQUAL
318 LD <=SL LOAD DOUBLE SIGNED LESS THAN OR Verda-
EQUAL dera si
AND <=SL AND DOUBLE SIGNED LESS THAN OR EQUAL C1 C2
OR <=SL OR DOUBLE SIGNED LESS THAN OR EQUAL
320 LD > LOAD GREATER THAN Verda-
AND> AND GREATER THAN dera si
C1 > C2
OR > OR GREATER THAN
321 LD >L LOAD DOUBLE GREATER THAN
AND >L AND DOUBLE GREATER THAN
OR >L OR DOUBLE GREATER THAN
322 LD >S LOAD SIGNED GREATER THAN
AND >S AND SIGNED GREATER THAN
OR >S OR SIGNED GREATER THAN
323 LD >SL LOAD DOUBLE SIGNED GREATER THAN
AND >SL AND DOUBLE SIGNED GREATER THAN
OR >SL OR DOUBLE SIGNED GREATER THAN
325 LD >= LOAD GREATER THAN OR EQUAL Verda-
AND >= AND GREATER THAN OR EQUAL dera si
C1 C2
OR >= OR GREATER THAN OR EQUAL
326 LD >=L LOAD DOUBLE GREATER THAN OR EQUAL
AND >=L AND DOUBLE GREATER THAN OR EQUAL
OR >=L OR DOUBLE GREATER THAN OR EQUAL
327 LD >=S LOAD SIGNED GREATER THAN OR EQUAL
AND >=S AND SIGNED GREATER THAN OR EQUAL
OR >=S OR SIGNED GREATER THAN OR EQUAL
328 LD >=SL LOAD DBL SIGNED GREATER THAN OR EQUAL
AND >=SL AND DBL SIGNED GREATER THAN OR EQUAL
OR >=SL OR DBL SIGNED GREATER THAN OR EQUAL

279
Instrucciones de comparacin Seccin 3-7

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF o sin cambios (vase la nota).
error
Indicador de > ON si S1 > S2 con datos de un canal.
mayor que
ON si S1+1, S1 > S2+1, S2 con datos de longitud doble.
OFF en el resto de los casos.
Indicador de >= ON si S1 S2 con datos de un canal.
mayor o igual
ON si S1+1, S1 S2+1, S2 con datos de longitud doble.
que
OFF en el resto de los casos.
Indicador de = ON si S1 = S2 con datos de un canal.
igual
ON si S1+1, S1 = S2+1, S2 con datos de longitud doble.
OFF en el resto de los casos.
Indicador de = ON si S1 S2 con datos de un canal.
distinto de
ON si S1+1, S1 S2+1, S2 con datos de longitud doble.
OFF en el resto de los casos.
Indicador de < ON si S1 < S2 con datos de un canal.
menor que
ON si S1+1, S1 < S2+1, S2 con datos de longitud doble.
OFF en el resto de los casos.
Indicador de <= ON si S1 S2 con datos de un canal.
menor o igual
ON si S1+1, S1 S2+1, S2 con datos de longitud doble.
que
OFF en el resto de los casos.
Indicador de N OFF o sin cambios (vase la nota).
negativo

Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Precauciones Las instrucciones de comparacin de entrada no pueden utilizarse como ins-


trucciones de la derecha, es decir, debe utilizarse otra instruccin entre ellas
y la barra de bus de la derecha.

Ejemplos AND LESS THAN: AND<(310)


Cuando CIO 000000 est en ON en el siguiente ejemplo, los contenidos de
D00100 y D00200 se comparan como datos binarios sin signo. Si el conte-
nido de D00100 es menor que el de D00200, CIO 005000 se pone en ON y
se procede a la ejecucin hasta la siguiente lnea. Si el contenido de D00100
no es menor que el de D00200, se omite el resto de la lnea de instruccin y
la ejecucin pasa a la siguiente lnea de instruccin.

000000 005000
<
Comparacin S1: D00100 S2: D00200
LESS THAN 8714 3A1C
sin signo
000001 005001 Decimal: 34.580 Decimal: 14.876
<S 34.580 > 14.876
(No pasa a la siguiente lnea).

AND SIGNED LESS THAN: AND<S(312)


Cuando CIO 000001 est en ON en el siguiente ejemplo, los contenidos de
D00110 y D00210 se comparan como datos binarios con signo. Si el conte-
nido de D00110 es menor que el de D00210, CIO 005001 se pone en ON y

280
Instrucciones de comparacin Seccin 3-7

se procede a la ejecucin hasta la siguiente lnea. Si el contenido de D00110


no es menor que el de D00210, se omite el resto de la lnea de instruccin y
la ejecucin pasa a la siguiente lnea de instruccin.

Comparacin S1: D00110 S2: D00210


LESS THAN
con signo 8714 3A1C
Decimal: 30.956 Decimal: 14.876
30.956 < 14.876
(Pasa a la siguiente lnea).

3-7-2 Instrucciones de comparacin de tiempo (341 hasta 346)


Empleo Las instrucciones de comparacin de tiempo comparan dos valores de
tiempo BCD y crean una condicin de ejecucin en ON si la condicin de
comparacin es verdadera.
Las instrucciones de comparacin de tiempo se tratan de la misma manera
que las instrucciones LD, AND y OR para controlar la ejecucin de instruccio-
nes subsecuentes.
Estas instrucciones slo son admitidas por las CPUs de la serie CS/CJ Ver.
2.0 posterior.

Smbolo de diagrama de
rels LD

Smbolo
C C: Canal de control
S1 S1: Primer canal de tiempo actual
S2 S2: Primer canal de tiempo de comparacin

AND

Smbolo
C C: Canal de control
S1 S1: Primer canal de tiempo actual
S2 S2: Primer canal de tiempo de comparacin

OR

Smbolo
C C: Canal de control
S1 S1: Primer canal de tiempo actual
S2 S2: Primer canal de tiempo de comparacin

Variaciones
Variaciones Crea ON cada ciclo que la comparacin es Instruccin de
verdadera. comparacin de
tiempo
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

281
Instrucciones de comparacin Seccin 3-7

Operandos C: Canal de control


Los bits 00 hasta 05 de C especifican si los datos de tiempo se enmascaran o
no para la comparacin. Los bits 00 hasta 05 enmascaran los segundos,
minutos, horas, da, mes y ao respectivamente. Si se enmascaran los
6 valores la instruccin no se ejecutar, la condicin de ejecucin estar en
OFF, y el indicador de error se pondr en ON.
15 8 7 6 5 4 3 2 1 0
C 0 0 0 0 0 0 0 0 0 0

Enmascara los datos de segundos cuando est en ON.


Enmascara los datos de minutos cuando est en ON.
Enmascara los datos de horas cuando est en ON.
Enmascara los datos de da cuando est en ON.
Enmascara los datos de mes cuando est en ON.
Enmascara los datos de ao cuando est en ON.

S1 hasta S1+2: Datos de tiempo actual


S1 hasta S1+2 contienen los datos de tiempo actual. S1 hasta S1+2 deben
estar en el mismo rea de datos.
15 8 7 0
S1

Segundos: 00 hasta 59 (BCD)

Minutos: 00 hasta 59 (BCD)

15 8 7 0
S1+1

Hora: 00 hasta 23 (BCD)

Da: 01 hasta 31 (BCD)

15 8 7 0
S1+2

Mes: 01 hasta 12 (BCD)

Ao: 00 hasta 99 (BCD)

Nota Cuando se utilicen los datos del reloj interno de la CPU para la comparacin,
configure S1 como A351 para especificar los datos de reloj interno de la CPU
(A351 hasta A353).

282
Instrucciones de comparacin Seccin 3-7

S2 hasta S2+2: Datos de tiempo de comparacin


S2 hasta S2+2 contienen los datos de tiempo de comparacin. S2 hasta S2+2
deben estar en el mismo rea de datos.
15 8 7 0
S2

Segundos: 00 hasta 59 (BCD)

Minutos: 00 hasta 59 (BCD)

15 8 7 0
S2+1

Hora: 00 hasta 23 (BCD)

Da: 01 hasta 31

15 8 7 0
S2+2

Mes: 01 hasta 12 (BCD)

Ao: 00 hasta 99 (BCD)

Nota El valor del ao indica los dos ltimos dgitos del ao. Los valores 00 hasta 97
se interpretan como 2000 hasta 2097. Los valores 98 y 99 se interpretan
como 1998 y 1999.

Especificaciones del
operando rea C S1 S2
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6141 CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta W509 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H509 H000 hasta H510
rea Bit Auxiliar A448 hasta A959 A000 hasta A957 A000 hasta A958
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4093 T4094
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4093 C4094
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32765 D32766
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32765 E32766
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32765 En_32766
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

283
Instrucciones de comparacin Seccin 3-7

rea C S1 S2
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Ver pgina ante- Ver pgina ante- ---
rior. rior.

Registros de datos ---


Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin de comparacin de tiempo compara los valores no enmascara-


dos (bit correspondiente de C configurado como 0) de los datos de tiempo
actual S1 hasta S1+2 con los datos de tiempo de comparacin de S2 hasta S2+2
y crea una condicin de ejecucin ON cuando la condicin de comparacin es
verdadera. Simultneamente, el resultado de una instruccin de comparacin
de tiempo se refleja en los indicadores aritmticos (=, <>, <, <=, >, >=).
Hay disponibles 18 combinaciones posibles de instrucciones de comparacin
de tiempo.
Los valores de tiempo enmascarados en el canal de control (C) no se inclu-
yen en la comparacin.
La siguiente tabla muestra el estado ON/OFF de cada indicador para cada
resultado de comparacin.
Resultado Estado del indicador
= <> < <= > >=
S1 = S2 ON OFF OFF ON OFF ON
S1 > S2 OFF ON OFF OFF ON ON
S1 < S2 OFF ON ON ON OFF OFF

Comparacin
S1 S2

Indicadores de condicin
Resultado (=, <>, <, <=, >, >=)

Enmascaracin de valores de tiempo


Los valores de tiempo pueden enmascararse individualmente para excluirse
de la operacin de comparacin. Para enmascarar un valor de tiempo, ajuste
el bit correspondiente del canal de control (C) como 1. Los bits 00 hasta 05 de
C enmascaran los segundos, los minutos, las horas, el da, el mes y el ao
respectivamente.
Ejemplo:
Cuando C = 39 hexadecimal, los 6 bits de la derecha son 111001 (ao=1,
mes=1, da=1, horas=0, minutos=0 y segundos=1), as que solamente se
comparan las horas y los minutos. Esta configuracin de enmascaramiento
puede utilizarse para realizar una operacin determinada en un momento
dado (hora y minutos) cada da.

284
Instrucciones de comparacin Seccin 3-7

Datos de tiempo actual Datos de tiempo de comparacin


15 08 07 00 15 08 07 00
S1 Minutos (00 Segundos S2 Minutos (00 Segundos
hasta 59, BCD) (00 a 59, BCD) hasta 59, BCD) (00 a 59, BCD)
Da del mes
S1+1 (01 a 31, BCD) Hora (00 a S2+1 Da del mes (01 Hora (00 a
23, BCD) a 31, BCD) 23, BCD)
Ao (00 a Mes (01 a 12, Ao (00 a Mes (01 a 12,
S1+2 99, BCD) BCD) S2+2 99, BCD) BCD)

Compara solamente datos El los datos del ao, el mes, el da y


de horas y minutos. los segundos estn enmascarados.

Otras instrucciones de comparacin de datos anteriores comparaban los


datos en unidades de 16 bits. Las instrucciones de comparacin de tiempo
estn limitadas a una comparacin de valores de tiempo de 8 bits.
La siguiente tabla muestra la estructura del rea de calendario/reloj interno
de la CPU.
Direcciones Contenido
A35100 hasta A35107 Segundos (00 a 59, BCD)
A35108 hasta A35115 Minutos (00 hasta 59, BCD)
A35200 hasta A35207 Hora (00 a 23, BCD)
A35208 hasta A35215 Da del mes (01 a 31, BCD)
A35300 hasta A35307 Mes (01 a 12, BCD)
A35308 hasta A35315 Ao (00 a 99, BCD)

El rea de calendario/reloj puede configurarse con un dispositivo de progra-


macin (incluyendo una consola de programacin), la instruccin DATE(735)
o el comando FINS CLOCK WRITE (0702 hexadecimal).
Resumen de instrucciones de comparacin de tiempo
En la siguiente tabla se muestran los cdigos de funcin, nemnicos, nom-
bres y funciones de las 18 instrucciones de comparacin de tiempo.
Cdigo Nemnico Nombre Funcin
341 LD =DT LOAD EQUAL Verda-
AND=DT AND EQUAL dera si
S1 = S2
OR=DT OR EQUAL
342 LD <>DT LOAD NOT EQUAL Verda-
AND <> DT AND NOT EQUAL dera si
S1 S2
OR <>DT OR NOT EQUAL
343 LD <DT LOAD LESS THAN Verda-
AND < DT AND LESS THAN dera si
S1 < S2
OR <DT OR LESS THAN
344 LD <=DT LOAD LESS THAN OR EQUAL Verda-
AND <=DT AND LESS THAN OR EQUAL dera si
S1 S2
OR <=DT OR LESS THAN OR EQUAL
345 LD >DT LOAD GREATER THAN Verda-
AND > DT AND GREATER THAN dera si
S1 > S2
OR >DT OR GREATER THAN
346 LD >=DT LOAD GREATER THAN OR EQUAL Verda-
AND >=DT AND GREATER THAN OR EQUAL dera si
S1 S2
OR >=DT OR GREATER THAN OR EQUAL

285
Instrucciones de comparacin Seccin 3-7

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER ON si los 6 bits de la mscara (bits 00 hasta 05) estn
en ON.
OFF en el resto de los casos.
Indicador de > ON si S1 > S2.
mayor que
OFF en el resto de los casos.
Indicador de >= ON si S1 S2.
mayor o igual que
OFF en el resto de los casos.
Indicador de igual = ON si S1 = S2.
OFF en el resto de los casos.
Indicador de dis- = ON si S1 S2.
tinto de
OFF en el resto de los casos.
Indicador de < ON si S1 < S2.
menor que
OFF en el resto de los casos.
Indicador de <= ON si S1 S2.
menor o igual que
OFF en el resto de los casos.
Indicador de N OFF o sin cambios (vase la nota).
negativo
Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.
En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.
Precauciones Las instrucciones de comparacin de tiempo no pueden utilizarse como ins-
trucciones de la derecha, es decir, debe utilizarse otra instruccin entre ellas
y la barra de bus de la derecha.
Ejemplo Cuando CIO 000000 est en ON y la hora es 13:00:00, CIO 005000 se pone
en ON. Los contenidos de A351 hasta A353 (los datos de calendario/reloj
internos de la CPU) se utilizan como los datos de tiempo actual y los conteni-
dos de D00100 hasta D00102 se utilizan como los datos de tiempo de com-
paracin. Los valores de ao, mes y da estn enmascarados, as que
solamente se comparan los datos de hora, minutos y segundos.
000000 005000
=DT
C D00000
S1 A352
S2 D00100

7 6 5 4 3 2 1 0
D00000 configurado como
D00000 - - 1 1 1 0 0 0 0038 hexadecimal
Segundos comparados.
Minutos comparados.
Horas comparadas.
Da enmascarado.
Mes enmascarado.
Ao enmascarado.

Se comparan los datos compartidos.


15 8 7 0 15 8 7 0
A351 Minuto Segundo S2: D00100 00 00
A352 Da del mes Hora S2+1: D00101 - 13
A353 Ao Mes S2+2: D00102 - -

Los indicadores de condicin se ajustan en cuanto


la ejecucin de condicin se pone en ON.

286
Instrucciones de comparacin Seccin 3-7

3-7-3 COMPARE: CMP(020)


Empleo Compara dos valores binarios sin signo (constantes y/o el contenido de cana-
les concretos) y enva el resultado a los indicadores aritmticos del rea auxi-
liar.

Smbolo de diagrama de
rels CMP(020)

S1 S1: Datos de comparacin 1

S2 S2: Datos de comparacin 2

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CMP(020)
Se ejecuta una vez en el diferencial Incompatible
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato (vase la nota). !CMP(020)

Nota Las CPUs CS1D para sistemas de CPU doble no admiten el refresco inme-
diato.

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S1 S2
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF
(Binario)
Registros de datos DR0 hasta DR15

287
Instrucciones de comparacin Seccin 3-7

rea S1 S2
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin CMP(020) compara los datos binarios sin signo de S1 y S2 y entrega el resul-
tado a los indicadores aritmticos (los indicadores mayor que, mayor o igual
que, igual que, menor o igual que, menor que y distinto de) del rea auxiliar.
Comparacin
binaria sin signo

Indicadores
aritmticos
(>, >=, =, <=, <, <>)

Estado del indicador de condicin


La siguiente tabla muestra el estado de los indicadores aritmticos despus
de la ejecucin de CMP(020). (Un estado de --- indica que el indicador
puede estar en ON o en OFF).
Resultado Estado del indicador
de > >= = <= < <>
CMP(020)
S1 > S2 ON ON OFF OFF OFF ON
S1 = S2 OFF ON ON ON OFF OFF
S1 < S2 OFF OFF OFF ON ON ON

Resultados en el programa al utilizar CMP(020)


Cuando se ejecuta CMP(020) el resultado se refleja en los indicadores arit-
mticos. Controle la salida o instruccin de la derecha deseada con una bifur-
cacin desde la misma condicin de entrada que controla CMP(020), tal y
como se muestra en el siguiente diagrama. En este caso, el indicador de igual
y la salida A se pondrn en ON cuando S1 = S2.
Uso correcto de CMP(020)
CMP
S1
S2
Indicador aritmtico
(ejemplo: Indicador de
igual)
A

Resultados en el programa al utilizar CMP(020)


No programe otra instruccin entre CMP(020) y la instruccin controlada por
el indicador aritmtico, ya que la otra instruccin puede cambiar el estado del
indicador aritmtico. En este caso, los resultados de la instruccin B pueden
modificar los resultados de CMP(020).

288
Instrucciones de comparacin Seccin 3-7

Uso incorrecto de CMP(020)


CMP
S1
S2

Instruccin
B

Indicador aritmtico
(ejemplo: Indicador de igual)
A

La variacin de refresco inmediato (!CMP(020)) puede usarse con canales asig-


nados a entradas externas especificadas en S1 y/o S2. Cuando se ejecuta
!CMP(020), se realizar refresco de entrada para el canal de entrada externa
especificado en S1 y/o S2 y se comparar ese valor refrescado. (El refresco
inmediato no puede realizarse en entradas asignadas a Unidades de E/S de
alta densidad de grupo 2 o Unidades montadas en bastidores esclavos).
Indicadores
Nombre Etiqueta de Etiqueta de consola Operacin
CX-Programmer de programacin
Indicador de error P_ER ER OFF o sin cambios (vase la nota).
Indicador de mayor que P_GT > ON si S1 > S2.
OFF en el resto de los casos.
Indicador de mayor o igual que P_GE >= ON si S1 S2.
OFF en el resto de los casos.
Indicador de igual P_EQ = ON si S1 = S2.
OFF en el resto de los casos.
Indicador de distinto de P_NE = ON si S1 S2.
OFF en el resto de los casos.
Indicador de menor que P_LT < ON si S1 < S2.
OFF en el resto de los casos.
Indicador de menor o igual que P_LE <= ON si S1 S2.
OFF en el resto de los casos.
Indicador de negativo P_N N OFF o sin cambios (vase la nota).

Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Precauciones No programe otra instruccin entre CMP(020) y una condicin de entrada que
acceda al resultado de CMP(020) porque la otra instruccin puede cambiar el
estado de los indicadores aritmticos.

289
Instrucciones de comparacin Seccin 3-7

3-7-4 DOUBLE COMPARE: CMPL(060)


Empleo Compara dos valores binarios dobles sin signo (constantes y/o el contenido
de canales concretos) y enva el resultado a los indicadores aritmticos del
rea auxiliar.

Smbolo de diagrama de
rels CMPL(060)

S1 S1: Datos de comparacin 1

S2 S2: Datos de comparacin 2

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CMPL(060)
Se ejecuta una vez en el diferencial Incompatible
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S1 S2
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF
(Binario)
Registros de datos ---

290
Instrucciones de comparacin Seccin 3-7

rea S1 S2
Registros de ndice IR0 hasta IR15
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin CMPL(060) compara los datos binarios sin signo de S1 +1, S1 y S2+1, S2 y
entrega el resultado a los indicadores aritmticos (los indicadores mayor que,
mayor o igual que, igual que, menor o igual que, menor que y distinto de) del
rea auxiliar.
Comparacin
binaria sin signo
S2+1

Indicadores aritmticos
(>, >=, =, <=, <, <>)

Estado de los indicadores aritmticos


La siguiente tabla muestra el estado de los indicadores aritmticos despus
de la ejecucin de CMPL(060). (Un estado de --- indica que el indicador
puede estar en ON o en OFF).
Resultado de Estado del indicador
CMPL(060) > >= = <= < <>
S1 +1, S1 > S2+1, S2 ON ON OFF OFF OFF ON
S1+1, S1 = S2+1, S2 OFF ON ON ON OFF OFF
S1 +1, S1 < S2+1, S2 OFF OFF OFF ON ON ON

Resultados en el programa al utilizar CMPL(060)


Cuando se ejecuta CMPL(060) el resultado se refleja en los indicadores arit-
mticos. Controle la salida o instruccin de la derecha deseada con una bifur-
cacin desde la misma condicin de entrada que controla CMPL(060), tal y
como se muestra en el siguiente diagrama. Aqu, el indicador de igual y la
salida A se ponen en ON cuando S1 +1, S1 = S2+1, S2.

Uso correcto de CMPL(060)


CMPL
S1
S2

Indicador aritmtico
(ejemplo: Indicador de igual)
A

Resultados en el programa al utilizar CMPL(060)


No programe otra instruccin entre CMPL(060) y la instruccin controlada por
el indicador aritmtico, ya que la otra instruccin puede cambiar el estado del
indicador aritmtico. En este caso, los resultados de la instruccin B pueden
modificar los resultados de CMPL(060).

291
Instrucciones de comparacin Seccin 3-7

Uso incorrecto de CMPL(060)


CMPL
S1
S2

Instruccin
B

Indicador aritmtico
(ejemplo: Indicador de igual)
A

Indicadores
Nombre Etiqueta de CX- Etiqueta de Operacin
Programmer consola de
programacin
Indicador de error P_ER ER OFF o sin cambios (vase la nota).
Indicador de mayor que P_GT > ON si S1+1, S1 > S2+1, S2.
OFF en el resto de los casos.
Indicador de mayor o igual P_GE >= ON si S1+1, S1 S2+1, S2.
que
OFF en el resto de los casos.
Indicador de igual P_EQ = ON si S1+1, S1 = S2+1, S2.
OFF en el resto de los casos.
Indicador de distinto de P_NE <> ON si S1+1, S1 S2+1, S2.
OFF en el resto de los casos.
Indicador de menor que P_LT < ON si S1+1, S1 < S2+1, S2.
OFF en el resto de los casos.
Indicador de menor o igual P_LE <= ON si S1+1, S1 S2+1, S2.
que
OFF en el resto de los casos.
Indicador de negativo P_N N OFF o sin cambios (vase la nota).
Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.
En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Precauciones No programe otra instruccin entre CMPL(060) y una condicin de entrada


que acceda al resultado de CMPL(060) porque la otra instruccin puede cam-
biar el estado de los indicadores aritmticos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, los datos binarios
sin signo de ocho dgitos de CIO 0011 y CIO 0010 se comparan con los datos
binarios sin signo de ocho dgitos de CIO 0009 y CIO 0008, y el resultado se
entrega a los indicadores aritmticos. Los resultados registrados en los indi-
cadores mayor que, igual que y menor que se guardan inmediatamente en
CIO 000200 (mayor que), CIO 000201 (igual que) y CIO 000202 (menor
que).

292
Instrucciones de comparacin Seccin 3-7

Estado del indicador


Resul- > (0)
tado
Comparacin = (0)
< (1)

3-7-5 SIGNED BINARY COMPARE: CPS(114)


Empleo Compara dos valores binarios con signo (constantes y/o el contenido de
canales concretos) y enva el resultado a los indicadores aritmticos del rea
auxiliar.

Smbolo de diagrama de
rels CPS(114)

S1 S1: Datos de comparacin 1

S2 S2: Datos de comparacin 2

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CPS(114)
Se ejecuta una vez en el diferencial Incompatible
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato (vase la nota). !CPS(114)

Nota Las CPUs CS1D no admiten el refresco inmediato.

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S1 S2
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

293
Instrucciones de comparacin Seccin 3-7

rea S1 S2
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin CPS(114) compara los datos binarios con signo de S1 y S2 y entrega el resul-
tado a los indicadores aritmticos (los indicadores mayor que, mayor o igual
que, igual que, menor o igual que, menor que y distinto de) del rea auxiliar.
Comparacin binaria
con signo

Indicadores
aritmticos
(>, >=, =, <=, <, <>)

Nota CPS(114) trata los datos de S1 y S2 como datos binarios con signo en el
rango de 8000 hasta 7FFF (32.768 hasta 32.767 decimal).
Estado de los indicadores aritmticos
La siguiente tabla muestra el estado de los indicadores aritmticos despus
de la ejecucin de CPS(114). (Un estado de --- indica que el indicador
puede estar en ON o en OFF).
Resultado Estado del indicador
de > >= = <= < <>
CPS(114)
S1 > S2 ON ON OFF OFF OFF ON
S1 = S2 OFF ON ON ON OFF OFF
S1 < S2 OFF OFF OFF ON ON ON

Resultados en el programa al utilizar CPS(114)


Cuando se ejecuta CPS(114) el resultado se refleja en los indicadores arit-
mticos. Controle la salida o instruccin de la derecha deseada con una bifur-
cacin desde la misma condicin de entrada que controla CPS(114), tal y
como se muestra en el siguiente diagrama. En este caso, el indicador de igual
y la salida A se pondrn en ON cuando S1 = S2.
Uso correcto de CPS(114)

CPS
S1
S2

Indicador aritmtico
(ejemplo: Indicador de igual)
A

294
Instrucciones de comparacin Seccin 3-7

Resultados en el programa al utilizar CPS(114)


No programe otra instruccin entre CPS(114) y la instruccin controlada por
el indicador aritmtico, ya que la otra instruccin puede cambiar el estado del
indicador aritmtico. En este caso, los resultados de la instruccin B pueden
modificar los resultados de CPS(114).
Uso incorrecto de CPS(114)
CPS
S1
S2

Instruccin
B

Indicador aritmtico
(ejemplo: Indicador de igual)
A

La variacin de refresco inmediato (!CPS(114)) puede usarse con canales


asignados a entradas externas especificadas en S1 y/o S2. Cuando se eje-
cuta !CPS(114), se realizar refresco de entrada para el canal de entrada
externa especificado en S1 y/o S2 y se comparar ese valor refrescado. (El
refresco inmediato no puede realizarse en entradas asignadas a Unidades de
E/S de alta densidad de grupo 2 o Unidades montadas en bastidores escla-
vos).
Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF o sin cambios (vase la nota).
Indicador de mayor que > ON si S1 > S2.
OFF en el resto de los casos.
Indicador de mayor o igual >= ON si S1 S2.
que OFF en el resto de los casos.
Indicador de igual = ON si S1 = S2.
OFF en el resto de los casos.
Indicador de distinto de <> ON si S1 S2.
OFF en el resto de los casos.
Indicador de menor que < ON si S1 < S2.
OFF en el resto de los casos.
Indicador de menor o igual <= ON si S1 S2.
que OFF en el resto de los casos.
Indicador de negativo N OFF o sin cambios (vase la nota).

Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Precauciones No programe otra instruccin entre CPS(114) y una condicin de entrada que
acceda al resultado de CPS(114) porque la otra instruccin puede cambiar el
estado de los indicadores aritmticos.

295
Instrucciones de comparacin Seccin 3-7

3-7-6 DOUBLE SIGNED BINARY COMPARE: CPSL(115)


Empleo Compara dos valores binarios dobles con signo (constantes y/o el contenido
de canales concretos) y enva el resultado a los indicadores aritmticos del
rea auxiliar.

Smbolo de diagrama de
rels CPSL(115)

S1 S1: Datos de comparacin 1

S2 S2: Datos de comparacin 2

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CPSL(115)
Se ejecuta una vez en el diferencial Incompatible
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S1 S2
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

296
Instrucciones de comparacin Seccin 3-7

Descripcin CPSL(115) compara los datos binarios dobles con signo de S1 +1, S1 y S2+1,
S2 y entrega el resultado a los indicadores aritmticos (los indicadores mayor
que, mayor o igual que, igual que, menor o igual que, menor que y distinto de)
del rea auxiliar.
Comparacin
binaria con signo
S2+1

Indicadores aritmticos
(>, >=, =, <=, <, <>)

Nota CPSL(115) trata los datos de S1 y S2 como datos binarios dobles con signo
en el rango de 8000 0000 hasta 7FFF FFFF (2.147.483.648 hasta
2.147.483.647 decimal).
Estado de los indicadores aritmticos
La siguiente tabla muestra el estado de los indicadores aritmticos despus
de la ejecucin de CPSL(115). (Un estado de --- indica que el indicador
puede estar en ON o en OFF).
Resultado de Estado del indicador
CPSL(115) > >= = <= < <>
S1 +1, S1 > S2+1, S2 ON ON OFF OFF OFF ON
S1+1, S1 = S2+1, S2 OFF ON ON ON OFF OFF
S1 +1, S1 < S2+1, S2 OFF OFF OFF ON ON ON

Resultados en el programa al utilizar CPSL(115)


Cuando se ejecuta CPSL(115) el resultado se refleja en los indicadores arit-
mticos. Controle la salida o instruccin de la derecha deseada con una bifur-
cacin desde la misma condicin de entrada que controla CPSL(115), tal y
como se muestra en el siguiente diagrama. Aqu, el indicador de igual y la
salida A se ponen en ON cuando S1 +1, S1 = S2+1, S2.
Uso correcto de CPSL(115)
CPSL
S1
S2

Indicador aritmtico
(ejemplo: Indicador de igual)
A

Resultados en el programa al utilizar CPSL(115)


No programe otra instruccin entre CPSL(115) y la instruccin controlada por
el indicador aritmtico, ya que la otra instruccin puede cambiar el estado del
indicador aritmtico. En este caso, los resultados de la instruccin B pueden
modificar los resultados de CPSL(115).

297
Instrucciones de comparacin Seccin 3-7

Uso incorrecto de CPSL(115)


CPSL
S1
S2

Instruccin
B

Indicador aritmtico
(Ejemplo: Indicador de igual)
A

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF o sin cambios (vase la nota).
Indicador de mayor que > ON si S1+1, S1 > S2+1, S2.
OFF en el resto de los casos.
Indicador de mayor o igual >= ON si S1+1, S1 S2+1, S2.
que
OFF en el resto de los casos.
Indicador de igual = ON si S1+1, S1 = S2+1, S2.
OFF en el resto de los casos.
Indicador de distinto de = ON si S1+1, S1 S2+1, S2.
OFF en el resto de los casos.
Indicador de menor que < ON si S1+1, S1 < S2+1, S2.
OFF en el resto de los casos.
Indicador de menor o igual <= ON si S1+1, S1 S2+1, S2.
que
OFF en el resto de los casos.
Indicador de negativo N OFF o sin cambios (vase la nota).

Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Precauciones No programe otra instruccin entre CPSL(115) y una condicin de entrada


que acceda al resultado de CPSL(115) porque la otra instruccin puede cam-
biar el estado de los indicadores aritmticos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, los datos binarios
con signo de ocho dgitos de D00002 y D00001 se comparan con los datos
binarios con signo de ocho dgitos de D00006 y D00005 y el resultado se
entrega a los indicadores aritmticos.
Si el contenido de D00002 y D00001 es mayor que el de D00006 y
D00005 el indicador de mayor que se pondr en ON, causando que
CIO 002000 se ponga en ON.
Si el contenido de D00002 y D00001 es igual que el de D00006 y D00005
el indicador de igual que se pondr en ON, causando que CIO 002001 se
ponga en ON.
Si el contenido de D00002 y D00001 es menor que el de D00006 y
D00005 el indicador de menor que se pondr en ON, causando que
CIO 002002 se ponga en ON.

298
Instrucciones de comparacin Seccin 3-7

Estado del indicador


1234 5678 > (1)
D0001 = (0)
D0005 Comparacin
< (0)

ABCD EF12

3-7-7 MULTIPLE COMPARE: MCMP(019)


Empleo Compara 16 canales consecutivos con otros 16 canales consecutivos y pone
en ON el bit correspondiente del canal de resultado si los contenidos de los
canales no son iguales.

Smbolo de diagrama de
rels MCMP(019)
S1: Primer canal
S1
del juego 1
S2 S2: Primer canal
del juego 2
R R: Canal de resultado
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MCMP(019)
Se ejecuta una vez en el diferencial @MCMP(019)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S1: Primer canal del juego 1


Especifica el comienzo del rango de los primeros 16 canales. S1 y S1+15
deben estar en el mismo rea de datos.
S2: Primer canal del juego 2
Especifica el comienzo del rango de los segundos 16 canales. S2 y S2+15
deben estar en el mismo rea de datos.
R: Canal de resultado
Cada uno de los bits de R contiene el resultado de una comparacin entre
dos canales de los juegos de 16 canales. El bit n de R (n = 00 hasta 15) con-
tiene el resultado de la comparacin entre los canales S1+n y S2+n.
15 14 1 0
R
Resultado de comparacin para
S1 y S2
Resultado de comparacin para
S1+1 y S2+1
Resultado de comparacin para S1+14 y S2+14
Resultado de comparacin para S1+15 y S2+15

299
Instrucciones de comparacin Seccin 3-7

Especificaciones del
operando rea S1 S2 R
rea CIO CIO 0000 hasta CIO 6128 CIO 0000 hasta
CIO 6143
rea de Trabajo W000 hasta W496 W000 hasta
W511
rea de bit en Espera H000 hasta H496 H000 hasta H511
rea Bit Auxiliar A000 hasta A944 A448 hasta A959
rea Temporizador T0000 hasta T4080 T0000 hasta
T4095
rea Contador C0000 hasta C4080 C0000 hasta
C4095
rea DM D00000 hasta D32752 D00000 hasta
D32767
rea EM sin banco E00000 hasta E32752 E00000 hasta
E32767
rea EM con Banco En_00000 hasta 32752 En_00000 hasta
(n = 0 a C) En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin MCMP(019) compara los contenudos de los 16 canales S1 hasta S1+15 con
los contenidos de los 16 canales S2 hasta S2+15, y pone en ON el bit corres-
pondiente del canal R cuando los contenidos no son iguales.
El contenido de S1 se compara con el contenido de S2, el contenido de S1+1
con el contenido de S2+1, ..., y el contenido de S1+15 con el contenido de
S2+15. El bit n de R se pone en OFF si el contenido de S1+n es igual al con-
tenido de S2+n; el bit n de R se pone en ON si los contenidos no son iguales.
Si los contenidos de todos los 16 pares de canales son los mismos, el indica-
dor de igual se pone en ON una vez se haya ejecutado la instruccin.
Comparacin R
0: Canales iguales.
1: Canales distintos.

300
Instrucciones de comparacin Seccin 3-7

Indicadores
Nombre Etiqueta Operacin
Indicador ER OFF
de error
Indicador = ON cuando el canal de resultado es 0000.
de igual (Los dos juefos de 16 canales contienen los mismos datos).
OFF en el resto de los casos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, MCMP(019) com-


para los canales D00100 hasta D00115 en orden con los canales D00200
hasta D00215 y pone en ON los bits correspondientes de D00300 cuando los
canales no son iguales.

R: D00300

S1: S2:

3-7-8 TABLE COMPARE: TCMP(085)


Empleo Compara los datos fuente con los contenidos de 16 canales consecutivos y
pone en ON el bit correspondiente del canal de resultado si los contenidos de
los canales son iguales.

Smbolo de diagrama de
rels TCMP(085)

S S: Datos de origen

T T: Primer canal de la
tabla
R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TCMP(085)
Se ejecuta una vez en el diferencial @TCMP(085)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

301
Instrucciones de comparacin Seccin 3-7

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos T: Primer canal de la tabla


Especifica el comienzo de la tabla de 16 canales. T y T+15 deben estar en el
mismo rea de datos.
R: Canal de resultado
Cada uno de los bits de R contiene el resultado de una comparacin entre S
y un canal de la tabla de 16 canales. El bit n de R (n = 00 hasta 15) contiene
el resultado de la comparacin entre S y T+n.
Datos de comparacin 0
Datos de comparacin 1
hasta hasta
Datos de comparacin 15

15 14 1 0
R
Resultado de comparacin
para S y T
Resultado de comparacin
para S y T+1
Resultado de comparacin para S y T+14
Resultado de comparacin para S y T+15
Especificaciones del
operando rea S T R
rea CIO CIO 0000 hasta
CIO 0000 hasta CIO 0000 hasta
CIO 6143CIO 6128 CIO 6143
rea de Trabajo W000 hasta
W000 hasta W000 hasta
W511 W496 W511
rea de bit en Espera H000 hasta H511
H000 hasta H496 H000 hasta H511
rea Bit Auxiliar A000 hasta A959
A000 hasta A944 A448 hasta A959
rea Temporizador T0000 hasta
T0000 hasta T0000 hasta
T4095 T4080 T4095
rea Contador C0000 hasta
C0000 hasta C0000 hasta
C4095 C4080 C4095
rea DM D00000 hasta
D00000 hasta D00000 hasta
D32767 D32752 D32767
rea EM sin banco E00000 hasta
E00000 hasta E00000 hasta
E32767 E32752 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32752 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta ---
#FFFF
(Binario)

302
Instrucciones de comparacin Seccin 3-7

rea S T R
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin TCMP(085) compara los datos fuente (S) con cada uno de los 16 canales T
hasta T+15 y pone en ON el bit correspondiente del canal R cuando los datos
son iguales. El bit n de R se pone en ON si el contenido de T+n es igual a S y
se pone en OFF si no son iguales.
S se compara con el contenido de T y el bit 00 de R se pone en ON si son
iguales o en OFF si no son iguales, S se compara con el contenido de T+1 y
el bit 01 de R se pone en ON si son iguales y en OFF si no son iguales, ..., y
S se compara con el contenido de T+15 y el bit 15 de R se pone en ON si son
iguales o en OFF si no son iguales.
Comparacin R
1: Datos iguales.
0: Datos distintos.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el canal de resultado es 0000.
igual (Ninguno de los 16 canales de la tabla es igual que S).
OFF en el resto de los casos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, TCMP(085) com-


para el contenido de D00100 con los contenidos de los canales D00200
hasta D00215 y pone en ON los bits correspondientes de D00300 cuando los
contenidos son iguales o en OFF cuando los contenidos no son iguales.
R: D00300

S: D00100 T:

303
Instrucciones de comparacin Seccin 3-7

3-7-9 BLOCK COMPARE: BCMP(068)


Empleo Compara los datos fuente con 16 rangos (definidos por 16 lmites inferiores y
16 superiores) y pone en ON el bit correspondiente en el canal de resultado si
los datos fuente estn dentro del rango.

Smbolo de diagrama de
rels BCMP(068)

S S: Datos de origen
B: Primer canal
B del bloque
R R: Canal de
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BCMP(068)
Se ejecuta una vez en el diferencial @BCMP(068)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos B: Primer canal del bloque


Especifica el comienzo de un bloque de 32 canales (16 pares de lmites infe-
riores/superiores). B y B+31 deben estar en el mismo rea de datos.
R: Canal de resultado
Cada bit de R contiene el resultado de una comparacin entre S y uno de los
16 rangos definidos para el bloque de 32 canales. El bit n de R (n = 00 hasta
15) contiene el resultado de la comparacin entre S y el navo par de canales.
15 14 1 0
R
Comparacin del
resultado para S y el
rango B B+1
Comparacin del resultado Comparacin del
para S y el rango B+28 resultado para S y el
B+29 rango B+2 B+3
Comparacin del resultado para
S y el rango B+30 B+31

Especificaciones del
operando rea S B R
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6112 CIO 6143
rea de Trabajo W000 hasta W0000 hasta W000 hasta
W511 W480 W511
rea de bit en Espera H000 hasta H511 H000 hasta H480 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A000 hasta A928 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4064 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4064 C4095

304
Instrucciones de comparacin Seccin 3-7

rea S B R
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32736 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32736 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32736 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta ---
#FFFF
(Binario)
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BCMP(068) compara los datos fuente (S) con los 16 rangos definidos por pares
de valores de lmite superior e inferior desde B hasta B+31. El primer canal de
cada par (B+2n) proporciona el lmite inferior y el segundo canal (B+2n+1) propor-
ciona el lmite superior del rango n (n = 0 hasta 15). Si S est dentro de cualquiera
de estos rangos (incluidos los lmites superior e inferior) el bit correspondiente de
R se pone en ON. El resto de los bits de R se ponen en OFF.
B S B+1 Bit 00 de R
B+2 S B+3 Bit 01 de R
B+4 S B+5 Bit 02 de R
B+6 S B+7 Bit 03 de R
B+8 S B+9 Bit 04 de R
B+10 S B+11 Bit 05 de R
B+12 S B+13 Bit 06 de R
B+14 S B+15 Bit 07 de R
B+16 S B+17 Bit 08 de R
B+18 S B+19 Bit 09 de R
B+20 S B+21 Bit 10 de R
B+22 S B+23 Bit 11 de R
B+24 S B+25 Bit 12 de R
B+26 S B+27 Bit 13 de R
B+28 S B+29 Bit 14 de R
B+30 S B+31 Bit 15 de R

Por ejemplo, el bit 00 de R se pone en ON si S est dentro del primer rango (B


S B+1), el bit 01 de R se pone en ON si S est dentro del segundo rango (B+2
S B+3), ..., y el bit 15 de R se pone en ON si S est dentro del decimoquinto
rango (B+30 S B+31). El resto de los bits de R se ponen en OFF.

305
Instrucciones de comparacin Seccin 3-7

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = ON cuando el canal de resultado es 0000.
(S no est dentro de los 16 rangos).
OFF en el resto de los casos.

Precauciones No se producir un error si el lmite inferior es mayor que el lmite superior,


pero se entregar 0 (fuera del rango) al bit correspondiente de R.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, BCMP(068) com-


para el contenido de D00100 con los 16 rangos definidos en D00200 hasta
D00231 y pone en ON los bits correspondientes de D00300 cuando S est
dentro del rango o en OFF cuando S no est dentro del rango.

R: D00300

S: D00100 hasta
hasta
hasta
hasta
hasta
hasta
hasta
hasta
hasta
hasta
hasta
hasta
hasta
hasta
hasta
hasta

3-7-10 EXPANDED BLOCK COMPARE: BCMP2(502)


Empleo Compara los datos fuente con hasta 256 rangos (definidos por 256 lmites
inferiores y 256 superiores) y pone en ON el bit correspondiente en el canal
de resultado si los datos fuente estn dentro del rango. BCMP2(502) slo se
admite en las CPUs CS1-H, CJ1-H y CS1D Ver. 2.0 posterior, CJ1M (Pre-
Ver. 2.0 oVer. 2.0 posterior).

Smbolo de diagrama de
rels
BCMP2(502)

S S: Datos de origen
B: Primer canal del
B bloque
R: Primer canal de
R resultado

306
Instrucciones de comparacin Seccin 3-7

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BCMP2(502)
Se ejecuta una vez en el diferencial @BCMP2(502)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos B: Primer canal del bloque


Especifica el cominezo de un bloque de comparacin que contiene hasta 513
canales incluidos hasta 256 pares de lmites inferiores/superiores). Todos los
canales deben estar en el mismo rea de datos.
Bloque de comparacin
Canal 15 8 7 0
00 hexadecimal N: 00 hasta FF
B ltimo rango "N"
hexadecimal
(0 hasta 255)
Rango 0 B+1 Rango 0 valor A
B+2 Rango 0 valor B
Rango 1 B+3 Rango 1 valor A
B+4 Rango 1 valor B
Rango 2 B+5 Rango 2 valor A
B+6 Rango 2 valor B

Datos de Rango 15 B+31 Rango 15 valor A


rango
B+32 Rango 15 valor B
Rango 16 B+33 Rango 16 valor A
B+34 Rango 16 valor B
Rango 17 B+35 Rango 17 valor A
B+36 Rango 17 valor B
Rango 18 B+37 Rango 18 valor A
B+38 Rango 18 valor B

Rango N B+2N+1 Rango N valor A


B+2(N+1) Rango N valor B

R: Primer canal de resultado


Cada bit de cada canal R contiene el resultado de una comparacin entre S y
uno de los rangos definidos para el bloque de comparacin. El nmero
mximo de canales de resultado es 16, es decir, m es igual a 0 hasta 15.
15 14 n 0
R+m
Resultado de
comparacin para
S y el rango 15
Resultado de
Resultado de comparacin comparacin para S y
para S y el rango 15m +14 el rango 15m + n
Resultado de comparacin
para S y el rango 15m + 15

307
Instrucciones de comparacin Seccin 3-7

Especificaciones del
operando rea S B R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD
Constantes #0000 hasta ---
#FFFF
(Binario)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BCMP2(502) compara los datos fuente (S) con los rangos definidos por pares
de valores de lmites inferior y superior en el bloque de comparacin. Si S
est dentro de cualquiera de estos rangos (incluidos los lmites superior e
inferior) los bits correspondientes de los canales de resultado (R hasta R+15
mx.) se ponen en ON. El resto de los bits de R se ponen en OFF.
El nmero de rangos es determinado por el valor de N configurado en el byte
inferior de B. N puede estar entre 0 y 255. El byte superior de B debe ser 00
hexadecimal.
Bloque de comparacin
15 87 0
00 hexa- ltimo
B decimal rango "N" N: 00 a FF hexadecimal (0 a 255)
Canales de resultado
Rangos de comparacin R Bit
B+1 Rango 0 valor A Rango 0 valor B B+2 0
B+3 Rango 1 valor A Rango 1 valor B B+4 1
Datos de origen
B+5 Rango 2 valor A Rango 2 valor B B+6 2
S
: :
B+31 Rango 15 valor A Rango 15 valor B B+32 15
R+1 Bit
B+33 Rango 16 valor A Rango 16 valor B B+34 0
B+35 Rango 17 valor A Rango 17 valor B B+36 1
B+37 Rango 18 valor A Rango 18 valor B B+38 2
: :
B+2N+1 Rango N valor A Rango N valor B B+2N+2
En el rango: ON
Rangos
Fuera del rango: OFF

Nmero de rangos
El nmero de rangos del bloque de comparacin se configura en el primer
canal del bloque. Se puede configurar un mximo de 256 rangos.

308
Instrucciones de comparacin Seccin 3-7

Rangos de configuracin
Los valores A y B de cada rango determinarn cmo opera la comparacin
dependiendo de qu valor es mayor, como se muestra a continuacin.
Si Valor A Valor B
entonces, Valor A Rango de comparacin Valor B

Rango de
comparacin

Valor A Valor B
Si Valor A > Valor B
entonces, Rango de comparacin Valor B y Valor A
Rango de comparacin

Rango de Rango de
comparacin comparacin

Valor B Valor A

Ejemplo
Si B+1 B+2
Si B+1 S B+2, entonces el bit 0 de R se pone en ON,
Si B+3 S B+4, entonces el bit 1 de R se pone en ON,
Si S < B+5 y B+6 < S, entonces el bit 2 de R se pone en OFF,
Si S < B+7 y B+8 < S, entonces el bit 3 de R se pone en OFF.
Si B+1 > B+2
Si S B+2 y B+1 S, entonces el bit 0 de R se pone en ON,
Si S B+4 y B+3 S, entonces el bit 1 de R se pone en ON,
Si B+6 < S < B+5, entonces el bit 2 de R se pone en OFF, y
Si B+8 < S < B+7, entonces el bit 3 de R se pone en OFF.
Ubicacin de almacenamiento de resultados
Los resultados se entregan a los correspondientes bits del canal R. Si hay
ms de 16 rangos de comparacin, se usarn los canales que siguen a R
consecutivamente. El nmero mximo de canales de resultado es 16, es
decir, m es igual a 0 hasta 15.
15 14 n 0
R+m
Resultado de
comparacin para
S y el rango 15
Resultado de
Resultado de comparacin comparacin para S y
para S y el rango 15m +14 el rango 15m + n
Resultado de comparacin
para S y el rango 15m + 15

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, BCMP2(502) com-


para el contenido de CIO 0010 con los 24 rangos definidos en D00200 hasta
D00247 (N = 17 hexadecimal = 23 decimal, es decir, 24 rangos) y pone en
ON los bits correspondientes de CIO 0100 y CIO 0101 cuando S est dentro
del rango y en OFF cuando S no est dentro del rango. Por ejemplo, si los
datos fuente de CIO 0010 estn en el rango definido por D00201 y D00202,
entonces el bit 00 de CIO 0100 se pone en ON y si estn en el rango, enton-
ces el bit 00 de CIO 0100 se pone en OFF. De manera similar, los datos

309
Instrucciones de comparacin Seccin 3-7

fuente de CIO 0010 se comparan con los rangos definidos por D00203 y
D00204, D00247 y D00248 y los otros canales del bloque de comparacin, y
el bit 1 de CIO 0100, el bit 7 de CIO 1010 y el resto de los bits de los canales
de resultado se manipulan de acuerdo a los resultados de comparacin.

000000 0 0 1 7
R: CIO 0100
BCMP2 Bit
0010 S: CIO 0010 0 1 7 5 D00201 0 0 0 0 0 1 0 0 D00202
D00200 D00203 0 0 8 0 0 1 8 0 D00204
0100 D00205 0 1 6 0 0 2 6 0 D00206

D00231 1 2 0 0 1 8 0 0 D00232
R: CIO 0101
D00233 1 5 0 0 0 5 0 0 D00234
D00235 1 9 0 0 0 1 0 0 D00236
D00237 1 8 0 0 0 2 0 0 D00238

D00247 0 1 0 0 2 0 0 0 D00248

3-7-11 AREA RANGE COMPARE: ZCP(088)


Empleo Compara un valor binario sin signo de 16 bits (CD) con el rango definido por
el lmite inferior LL y el lmite superior UL. Los resultados se entregan a los
indicadores aritmticos.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

ZCP(088)
CD CD: Datos de comparacin
LL LL: Lmite inferior del rango
UL UL: Lmite superior del rango
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ZCP(088)
Se ejecuta una vez en el diferencial Incompatible
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea CD LL UL
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095

310
Instrucciones de comparacin Seccin 3-7

rea CD LL UL
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ZCP(088) compara los datos binarios con signo de 16 bits de CD con el
rango definido por LL y UL y entrega el resultado a los indicadores mayor
que, igual que y menor que del rea auxiliar. (Los indicadores menor o igual
que, mayor o igual que y distinto de permanecen sin cambios).
Estado de los indicadores aritmticos
La siguiente tabla muestra el estado de los indicadores aritmticos despus
de la ejecucin de ZCP(088).
Resultado de Estado del indicador
ZCP(088) > = <
CD > UL ON OFF OFF
CD = UL OFF ON
LL < CD < UL
CD = LL
CD < LL OFF ON

Resultados en el programa al utilizar ZCP(088)


Cuando se ejecuta ZCP(088) el resultado se refleja en los indicadores aritm-
ticos. Controle la salida o instruccin de la derecha deseada con una bifurca-
cin desde la misma condicin de entrada que controla ZCP(088), tal y como
se muestra en el siguiente diagrama. En este caso, el indicador de igual y la
salida A se pondrn en ON cuando LL CD UL.

311
Instrucciones de comparacin Seccin 3-7

Uso correcto de ZCP(088)

ZCP
CD
LL
UL

Indicador aritmtico
(ejemplo: Indicador de igual)

No programe otra instruccin entre ZCP(088) y la instruccin controlada por


el indicador aritmtico, ya que la otra instruccin puede cambiar el estado del
indicador aritmtico. En este caso, los resultados de la instruccin B pueden
modificar los resultados de ZCP(088).
Uso incorrecto de ZCP(088)

ZCPL
CD
LL
UL

Instruc-
cin B
A

Indicador aritmtico
(Ejemplo: Indicador de igual)

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER ON si LL > UL.
Indicador de mayor que > ON si CD > UL.
OFF en el resto de los casos.
Indicador de mayor o igual que > = Se mantiene sin cambios.
Indicador de igual = ON si LL CD UL.
OFF en el resto de los casos.
Indicador de distinto de <> Se mantiene sin cambios.
Indicador de menor que < ON si CD < LL.
OFF en el resto de los casos.
Indicador de menor o igual que < = Se mantiene sin cambios.
Indicador de negativo N Se mantiene sin cambios.

Precauciones No programe otra instruccin entre ZCP(088) y una condicin de entrada que
acceda al resultado de ZCP(088) porque la otra instruccin puede cambiar el
estado de los indicadores aritmticos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, los datos binarios sin
signo de 16 bits de D00000 se comparan con el rango 0005 hasta 001F hexadeci-
mal (5 hasta 31 decimal) y el resultado se entrega a los indicadores aritmticos.
CIO 000200 se pone en ON si 0005 hexadecimal contenido de D00000 001F
hexadecimal.
CIO 000201 se pone en ON si el contenido de D00000 > 001F hexadecimal.
CIO 000202 se pone en ON si el contenido de D00000 < 0005F hexadecimal.

312
Instrucciones de comparacin Seccin 3-7

000000 LL CD UL Indicadores
ZCP
D00000 aritmticos
CD D00000 0005Hex 001FHex = ON(1)
LL #0005
#001F D00000
UL
> 001FHex > ON(1)

002000 D00000
0005Hex > < ON(1)
=
002001

>
002002

<

3-7-12 DOUBLE AREA RANGE COMPARE: ZCPL(116)


Empleo Compara un valor binario sin signo de 32 bits (CD+1, CD) con el rango defi-
nido por el lmite inferior (LL+1, LL) y el lmite superior(UL+1, UL). Los resul-
tados se entregan a los indicadores aritmticos.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

ZCPL(116)
CD CD: Primer canal de datos de comparacin
LL LL: Primer canal de lmite inferior
UL UL: Primer canal de lmite superior
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ZCP(088)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea CD LL UL
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)

313
Instrucciones de comparacin Seccin 3-7

rea CD LL UL
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 0000 hasta #FFFF FFFF
(Binario)
Registros de datos ---
Registros de ndice IR0 hasta IR15
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ZCPL(116) compara los datos binarios con signo de 32 bits de CD+1, CD con
el rango definido por LL+1, LL y UL+1, UL y entrega el resultado a los indica-
dores mayor que, igual que y menor que del rea auxiliar. (Los indicadores
menor o igual que, mayor o igual que y distinto de permanecen sin cambios).
Estado de los indicadores aritmticos
La siguiente tabla muestra el estado de los indicadores aritmticos despus
de la ejecucin de ZCPL(116).
Resultado de ZCPL(116) Estado del indicador
> = <
CD+1, CD > UL+1, UL ON OFF OFF
CD+1, CD = UL+1, UL OFF ON
LL+1, LL < CD+1, CD < UL+1, UL
CD+1, CD = LL+1, LL
CD+1, CD < LL+1, LL OFF ON

Resultados en el programa al utilizar ZCPL(116)


Cuando se ejecuta ZCPL(116) el resultado se refleja en los indicadores arit-
mticos. Controle la salida o instruccin de la derecha deseada con una bifur-
cacin desde la misma condicin de entrada que controla ZCPL(116).
No programe otra instruccin entre ZCPL(116) y la instruccin controlada por
el indicador aritmtico, ya que la otra instruccin puede cambiar el estado del
indicador aritmtico.
La operacin de ZCPL(116) es casi idntica a la de ZCP(088), excepto en
que ZCPL(116) compara valores de 32 bits en lugar de valores de 16 bits.
Consulte en 3-7-11 AREA RANGE COMPARE: ZCP(088) diagramas que
muestran cmo utilizar los resultados en el programa y un ejemplo de seccin
de programa.

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER ON if LL+1, LL > UL+1, UL.
Indicador de mayor que > ON si CD > UL+1, UL.
OFF en el resto de los casos.

314
Instrucciones de transferencia de datos Seccin 3-8

Nombre Etiqueta Operacin


Indicador de mayor o igual >= Se mantiene sin cambios.
que
Indicador de igual = ON si LL+1, LL CD+1, CD UL+1, UL.
OFF en el resto de los casos.
Indicador de distinto de <> Se mantiene sin cambios.
Indicador de menor que < ON si CD+1, CD < LL+1, LL.
OFF en el resto de los casos.
Indicador de menor o igual <= Se mantiene sin cambios.
que
Indicador de negativo N Se mantiene sin cambios.

Precauciones No programe otra instruccin entre ZCPL(116) y una condicin de entrada


que acceda al resultado de ZCPL(116) porque la otra instruccin puede cam-
biar el estado de los indicadores aritmticos.

3-8 Instrucciones de transferencia de datos


3-8-1 MOVE: MOV(021)
Empleo Transfiere un canal de datos al canal especificado.
Smbolo de diagrama de
rels MOV(021)

S S: Origen

D D: Destino
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MOV(021)
Se ejecuta una vez en el diferencial ascendente @MOV(021)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato (vase la nota). !MOV(021)
Variaciones Ejecutada una vez y destino refrescado !@MOV(021)
combinadas inmediatamente para diferencial ascendente
(vase la nota).

Nota Las CPUs CS1D no admiten el refresco inmediato.


reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767

315
Instrucciones de transferencia de datos Seccin 3-8

rea S D
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF (binario) ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Transfiere S a D. Si S es una constante, el valor se puede utilizar como


entrada de datos.

Canal fuente Estado del bit Canal de destino


no modificado.

MOV(021) tiene una variacin de refresco inmediato (!MOV(021)). Pueden


especificarse bits de entrada externa para S y bits de salida externa para D.
Los bits de entrada utilizados para S se refrescan justo antes, y los bits de
salida utilizados para D se refrescan justo despus de la ejecucin, a no ser
que los bits se asignen a una Unidad de E/S de alta densidad grupo 2, una
Unidad de E/S especial de alta densidad o una unidad montada en un basti-
dor esclavo de E/S remoto SYSMAC BUS.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON si los datos transferidos son 0000.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de los datos transferi-
negativo dos es "1".
OFF en el resto de los casos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, el contenido de


CIO 0100 se copia a D00100.

316
Instrucciones de transferencia de datos Seccin 3-8

3-8-2 MOVE NOT: MVN(022)


Empleo Transfiere el complemento de un canal de datos al canal especificado.

Smbolo de diagrama de
rels MVN(022)

S S: Origen

D D: Destino
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MVN(022)
Se ejecuta una vez en el diferencial @MVN(022)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK
Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF (bina- ---
rio)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

317
Instrucciones de transferencia de datos Seccin 3-8

Descripcin MVN(022) invierte los bits de S y transfiere el resultado a D. El contenido de S


se mantiene sin cambios.

Canal fuente Canal de destino

Estado del
bit invertido.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON si el contenido de D es 0000 despus de la ejecucin.
igual OFF en el resto de los casos.
Indicador de N ON si el bit de la izquierda de D es 1 despus de la ejecu-
negativo cin.
OFF en el resto de los casos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, el estado de los bits
de CIO 0100 se invierte, y el resultado se copia a D00100.

3-8-3 DOUBLE MOVE: MOVL(498)


Empleo Transfiere dos canales de datos a los canales especificados.

Smbolo de diagrama de
rels MOVL(498)

S S: Primer canal fuente

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MOVL(498)
Se ejecuta una vez en el diferencial @MOVL(498)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

318
Instrucciones de transferencia de datos Seccin 3-8

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF (binario)
Registros de datos ---
Registros de ndice IR0 hasta IR15
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( ) IR0 hasta, 1( ) IR5

Descripcin MOVL(498) transfiere S+1 y S a D+1 y D. Si S+1 y S son constantes, el valor


puede utilizarse para la configuracin de datos.
S S+1 D D+1

Estado del bit


no modificado.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON si los contenidos D+1 de D son 0000 0000 despus
igual de la ejecucin.
OFF en el resto de los casos.
Indicador de N ON si el bit de la izquierda de D+1 es 1 despus de la
negativo ejecucin.
OFF en el resto de los casos.

319
Instrucciones de transferencia de datos Seccin 3-8

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, el contenido de


D00101 y D00100 se copia en D00201 y D00200.

3-8-4 DOUBLE MOVE NOT: MVNL(499)


Empleo Transfiere el complemento de dos canales de datos a los canales especifica-
dos.
Smbolo de diagrama de
rels MVNL(499)

S S: Primer canal fuente

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MVNL(499)
Se ejecuta una vez en el diferencial ascendente @MVNL(499)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)

320
Instrucciones de transferencia de datos Seccin 3-8

rea S D
Constantes #00000000 hasta ---
#FFFFFFFF (binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin MVNL(499) invierte los bits de S+1 y S y transfiere el resultado a D+1 y D.


Los contenidos de S+1 y S se mantienen sin cambios.
S S+1 D D+1

Estado del bit


invertido.

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = ON si los contenidos D+1 de D son 0000 0000 des-
pus de la ejecucin.
OFF en el resto de los casos.
Indicador de N ON si el bit de la izquierda de D+1 es 1 despus de la
negativo ejecucin.
OFF en el resto de los casos.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, el estado de los bits
de D00101 y D00100 se invierte, y el resultado se copia a D00201 y D00200.
(Los contenidos originales de D00101 y D00100 se mantienen sin cambios).

3-8-5 MOVE BIT: MOVB(082)


Empleo Transfiere el bit especificado.

Smbolo de diagrama de
rels MOVB(082)

S S: Canal o datos fuente

C C: Canal de control

D D: Canal de destino

321
Instrucciones de transferencia de datos Seccin 3-8

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MOVB(082)
Se ejecuta una vez en el diferencial ascendente @MOVB(082)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal de control


Los dos dgitos de la derecha de C indican qu bit de S es el bit fuente y los
dos de la izquierda de C indican el bit destino de D.
15 8 7 0
C m n

Bit fuente: 00 a 0F
(0 a 15 decimal)
Bit de destino: 00 a 0F
(0 a 15 decimal)

Especificaciones del
operando rea S C D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta Slo valores ---
#FFFF (binario) especificados
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

322
Instrucciones de transferencia de datos Seccin 3-8

Descripcin MOVB(082) copia el bit especificado (n) de S al bit especificado (m) de D. El


resto de los bits del canal de destino permanecen sin cambios.

Nota Puede especificarse el mismo canal para S y D para copiar un bit dentro de
un canal.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los dos dgitos de la izquierda y de la derecha de C
error no estn dentro del rango especificado de 00 hasta 0F.
OFF en el resto de los casos.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, el 5o bit del canal
fuente (CIO 0200) se copia al 12avo bit del canal de destino (CIO 0300) de
acuerdo al valor del canal de control de 0C05.

1 2 0 5

3-8-6 MOVE DIGIT: MOVD(083)


Empleo Transfiere los dgitos especificados. (Cada dgito se compone de 4 bits).

Smbolo de diagrama de
rels MOVD(083)

S S: Canal o datos fuente

C C: Canal de control

D D: Canal de destino
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MOVD(083)
Se ejecuta una vez en el diferencial ascendente @MOVD(083)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

323
Instrucciones de transferencia de datos Seccin 3-8

Operandos S: Canal fuente


Los dgitos fuente se leen de derecha a izquierda, volviendo al dgito de la
derecha (dgito 0) si es necesario.
15 12 11 8 7 4 3 0

S Dgito 3 Dgito 2 Dgito 1 Dgito 0

C: Canal de control
Los tres primeros dgitos de C indican el primer dgito fuente (m), el nmero
de dgitos a transferir (n) y el primer dgito de destino (l), como se muestra en
el siguiente diagrama.
15 12 11 8 7 4 3 0
C 0 l n m

Primer dgito de S (l):


0 hasta 3
Nmero de dgitos (n):
0 hasta 3
Primer dgito de D (l): 0 a 3 0: 1 dgito
1: 2 dgitos
2: 3 dgitos
3: 4 dgitos
Siempre 0.

D: Canal de destino
Los dgitos de destino se escriben de derecha a izquierda, volviendo al dgito
de la derecha (dgito 0) si es necesario.
15 12 11 8 7 4 3 0

D Dgito 3 Dgito 2 Dgito 1 Dgito 0

Especificaciones del
operando rea S C D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta Slo valores ---
#FFFF (binario) especificados
Registros de datos DR0 hasta DR15

324
Instrucciones de transferencia de datos Seccin 3-8

rea S C D
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin MOVD(083) copia el contenido de n dgitos de S (empezando por el dgito m)


a D (empezando por el dgito l). Slo se modifican los dgitos especificados,
el resto se mantienen sin cambios.
Si el nmero de dgitos ledos o escritos excede el dgito de la izquierda de S
o D, MOVD(083) volver al dgito de la derecha del mismo canal.

Nota Puede especificarse el mismo canal para S y D para copiar un bit dentro de
un canal.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si uno de los tres primeros dgitos de C no est den-
error tro del rango especificado 0 hasta 3.
OFF en el resto de los casos.

Ejemplos Transferencia de cuatro dgitos


Cuando CIO 000000 est en ON en el siguiente ejemplo, se copian cuatro
dgitos de datos de CIO 0200 a CIO 0300. La transferencia comienza por el
dgito 1 de CIO 0200 y el dgito 0 de CIO 0300, de acuerdo al valor del canal
de control de 0031.

Primer dgito de S:
Dgito n
Dgito 1

Nmero de dgitos: 3
Dgito n (4 dgitos)

Primer dgito de D: Dgito 0

Nota Despus de leer el dgito de la izquierda de S (dgito 3), MOVD(083) vuelve al


dgito de la derecha (dgito 0).

325
Instrucciones de transferencia de datos Seccin 3-8

Ejemplos de C
El siguiente diagrama muestra ejemplos de transferencia de datos para varios
valores de C.

Dgito 0 Dgito 0 Dgito 0 Dgito 0 Dgito 0 Dgito 0 Dgito 0 Dgito 0


Dgito 1 Dgito 1 Dgito 1 Dgito 1 Dgito 1 Dgito 1 Dgito 1 Dgito 1
Dgito 2 Dgito 2 Dgito 2 Dgito 2 Dgito 2 Dgito 2 Dgito 2 Dgito 2
Dgito 3 Dgito 3 Dgito 3 Dgito 3 Dgito 3 Dgito 3 Dgito 3 Dgito 3

3-8-7 MULTIPLE BIT TRANSFER: XFRB(062)


Empleo Transfiere el nmero especificado de bits consecutivos.

Smbolo de diagrama de
rels XFRB(062)

C C: Canal de control

S S: Primer canal fuente

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON XFRB(062)
Se ejecuta una vez en el diferencial ascendente @XFRB(062)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal de control


Los tres primeros dgitos de C indican el primer dgito fuente (m), el nmero
de dgitos a transferir (n) y el primer dgito de destino (l), como se muestra en
el siguiente diagrama.
15 8 7 4 3 0
C n m l

Primer bit de S (l):


0 hasta F
Primer bit de D (m):
0 hasta 3
Nmero de dgitos (n):
00 hasta FF (0 a 255)

S: Primer canal fuente


Especifica el primer canal fuente. Se leen los bits de derecha a izquierda,
continuando por canales consecutivos (hasta S+16) cuando sea necesario.
15 0
S

hasta hasta
S+16 mx.

Nota Los canales fuente deben estar en el mismo rea de datos.

326
Instrucciones de transferencia de datos Seccin 3-8

D: Primer canal de destino


Especifica el primer canal de destino. Se escriben los bits de derecha a
izquierda, continuando por canales consecutivos (hasta D+16) cuando sea
necesario.
15 0
D

hasta hasta
D+16 max.

Nota Los canales de destino deben estar en el mismo rea de datos.

Especificaciones del
operando rea C S D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores --- ---
especificados
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta 5+(++)
,( )IR0 hasta, ( )IR15

Descripcin XFRB(062) transfiere hasta 255 bits consecutivos de los canales fuente
(empezando por el bit l de S) a los canales de destino (empezando por el bit
m de D). Los bits de los canales de destino que no se sobrescriben por los
bits fuente permanecen inalterados.
Los bits iniciales y el nmero de bits se especifican en C, como se muestra en
el siguiente diagrama.

327
Instrucciones de transferencia de datos Seccin 3-8

Es posible que se solapen los canales fuente y destino. Transfiriendo los


datos solapando varios canales se puede aprovechar ms eficientemente el
espacio del rea de datos. (Esto es particularmente til cuando se gestionan
datos para control de posicin).
Ya que los canales fuente y los canales de destino pueden solaparse,
XFRB(062) puede combinarse con ANDW(034) para desplazar m bits n espa-
cios.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error

Precauciones Pueden transferirse hasta 255 bits de datos con cada ejecucin de
XFRB(062).
Asegrese de que los canales fuente y los canales de destino no exceden el
final del rea de datos.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, los 20 bits empe-
zando por CIO 020006 se copian a los 20 bits empezando por CIO 030000.

20 bits

3-8-8 BLOCK TRANSFER: XFER(070)


Empleo Transfiere el nmero especificado de canales consecutivos.
Smbolo de diagrama de
rels XFER(070)

N N: Nmero de canales

S S: Primer canal fuente

D D: Primer canal de destino

328
Instrucciones de transferencia de datos Seccin 3-8

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON XFER(070)
Se ejecuta una vez en el diferencial ascendente @XFER(070)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de canales


Especifica el nmero de canales que han de transmitirse. El rango posible
para N es desde 0000 hasta FFFF (0 hasta 65.535 decimal).
S: Primer canal fuente
Especifica el primer canal fuente.
15 0
S

hasta hasta
S+(N1)

D: Primer canal de destino


Especifica el primer canal de destino.
15 0
D

hasta hasta
D+(N1)

Especificaciones del
operando rea N S D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta --- ---
#FFFF (binario) o
bien &0 hasta
&65535

329
Instrucciones de transferencia de datos Seccin 3-8

rea N S D
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin XFER(070) copia N canales comenzando por S (S hasta S+(N1)) en los N


canales comenzando por D (D hasta D+(N1)).

Canales
hasta hasta
S+(N1) D+
(N1)

Es posible el solapamiento de los canales fuente y los canales de destino, as


que XFER(070) puede llevar a cabo operaciones de desplazamiento de
canal.

&10

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error

Precauciones Asegrese de que los canales fuente (S hasta S+N1) y los canales de des-
tino (D hasta D+N1) no excedan el final de rea de datos.
Ser necesario algn tiempo para finalizar la operacin de XFER(070)
cuando se transfiere un gran nmero de canales. En este caso, la transferen-
cia mediante la instruccin XFER(070) puede no completarse si se produce
una interrupcin de la alimentacin durante la ejecucin de la instruccin.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, los 10 canales


desde D00100 hasta D00109 se copian en D00200 hasta D00209.

&10

10
canales

330
Instrucciones de transferencia de datos Seccin 3-8

3-8-9 BLOCK SET: BSET(071)


Empleo Copia el mismo canal en un rango de canales consecutivos.

Smbolo de diagrama de
rels BSET(071)

S S: Canal fuente

St St: Canal inicial

E E: Canal final

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BSET(071)
Se ejecuta una vez en el diferencial ascendente @BSET(071)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Canal fuente


Especifica los datos de origen o el canal que contiene los datos de origen.
St: Canal inicial
Especifica el primer canal del rango de destino.
E: Canal final
Especifica el canal final del rango de destino.

St

hasta

Datos de origen Rango de destino


St

Nota St y E deben estar en el mismo rea de datos.

Especificaciones del
operando rea S St E
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095

331
Instrucciones de transferencia de datos Seccin 3-8

rea S St E
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta ---
#FFFF (binario)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( ) IR0 hasta, 15( ) IR

Descripcin BSET(071) copia el mismo canal fuente (S) a todos los canales de destino del
rango St hasta E.
Canal fuente Canales de destino
St

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si St es mayor que E.
error OFF en el resto de los casos.

Precauciones Asegrese de que el canal inicial (St) y el canal final (E) estn en el mismo
rea de datos y de que St E.
Ser necesario algn tiempo para finalizar la operacin de BSET(071)
cuando se transfieren datos fuente a un gran nmero de canales. En este
caso, la transferencia mediante la instruccin BSET(071) puede no comple-
tarse si se produce una interrupcin de la alimentacin durante la ejecucin
de la instruccin.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, los datos fuente de
D00100 hasta D00200 se copian en D00209.

332
Instrucciones de transferencia de datos Seccin 3-8

S
St
St:
E

E:

3-8-10 DATA EXCHANGE: XCHG(073)


Empleo Intercambia el contenido de los dos canales especificados.

Smbolo de diagrama de
rels XCHG(073)
E1: Primer canal
E1 de intercambio
E2 E2: Segundo canal
de intercambio

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON XCHG(073)
Se ejecuta una vez en el diferencial ascendente @XCHG(073)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea E1 E2
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

333
Instrucciones de transferencia de datos Seccin 3-8

rea E1 E2
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin XCHG(073) intercambia los contenidos de E1 y E2.


E1 E2

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF o sin cambios (vase la nota).
Indicador de igual = OFF o sin cambios (vase la nota).
Indicador de N OFF o sin cambios (vase la nota).
negativo

Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, el contenido de


D00100 se intercambia con el contenido de D00200.

3-8-11 DOUBLE DATA EXCHANGE: XCGL(562)


Empleo Intercambia el contenido de un par de canales consecutivos con otro par.

Smbolo de diagrama de
rels XCGL(562)
E1: Primer canal de
E1 intercambio
E2 E2: Segundo canal de
intercambio

334
Instrucciones de transferencia de datos Seccin 3-8

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON XCGL(562)
Se ejecuta una vez en el diferencial ascendente @XCGL(562)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea E1 E2
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- ---
Registros de datos ---
Registros de ndice IR0 hasta IR15
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin XCHG(073) intercambia los contenidos de E1+1 y E1 con los contenidos de


E2+1 y E2.
E1 E1+1 E2 E2+1

Para intercambiar 3 o ms canales, use XFER(070) para transferir los cana-


les a un tercer juego de canales (bfer) como se muestar en el siguiente
diagrama.

335
Instrucciones de transferencia de datos Seccin 3-8

E1 1a operacin
de XFER(070)
Bfer

2a operacin
de XFER(070)

E2
3a operacin de
XFER(070)

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF o sin cambios (vase la nota).
Indicador de igual = OFF o sin cambios (vase la nota).
Indicador de nega- N OFF o sin cambios (vase la nota).
tivo

Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, los contenidos de


D00100 y D00101 se intercambian con los contenidos de D00200 y D00201.

3-8-12 SINGLE WORD DISTRIBUTE: DIST(080)


Empleo Transfiere el canal fuente a un canal de destino, que se calcula aadiendo un
valor de desplazamiento a la direccin base.

Smbolo de diagrama de
rels DIST(080)

S S: Canal fuente

Bs Bs: Direccin base de destino

Of Of: Desplazamiento

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DIST(080)
Se ejecuta una vez en el diferencial ascendente @DIST(080)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

336
Instrucciones de transferencia de datos Seccin 3-8

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos Bs: Direccin base de destino


Especifica la direccin base de destino: El desplazamiento se aade a esta
direccin para calcular el canal de destino.
Of: Desplazamiento
Este valor se aade a la direccin base para calcular el canal de destino. El
desplazamiento puede ser cualquier valor desde 0000 hasta FFFF (0 hasta
65,535 decimal), pero la Bs y la Bs+Of deben estar en el mismo rea de
datos.
15 0

Bs
hasta
hasta
Bs+Of

Especificaciones del
operando rea S Bs Of
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta --- #0000 hasta
#FFFF (binario) #FFFF (binario) o
bien &0 hasta
&65535
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

337
Instrucciones de transferencia de datos Seccin 3-8

Descripcin DIST(080) copia S al canal destino calculado sumando Of a Bs. Se puede uti-
lizar la misma instruccin DIST(080) para distribuir el canal fuente a varios
canales del rea de datos con slo cambiar el valor de Of.

S Bs Of

Bs+n

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = ON si los datos de origen son 0000.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de los datos fuente es
negativo "1".
OFF en el resto de los casos.

Precauciones Asegrese de que el desplazamiento no excede el final del rea de datos, es


decir, Bs y Bs+Of estn en el mismo rea de datos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, los contenidos de


D00100 se copian a D00210 (D00200 + 10) si el contenido de D00300 es 10
(0A hexadecimal). El contenido de D00100 puede copiarse a otros canales
cambiando el desplazamiento de D00300.

S: D00100
Copiado mediante DIST(080).
S
Bs Of:
Bs: 0 0 0 A
Of
Hexadecimal de 4 dgitos
Desplazamiento
D00210 +10 canales

3-8-13 DATA COLLECT: COLL(081)


Empleo Transfiere el canal fuente (que se calcula aadiendo un valor de desplaza-
miento a la direccin base) al canal de destino.

Smbolo de diagrama de
rels COLL(081)

Bs Bs: Direccin base de fuente

Of Of: Desplazamiento

D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON COLL(081)
Se ejecuta una vez en el diferencial ascendente @COLL(081)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

338
Instrucciones de transferencia de datos Seccin 3-8

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos Bs: Direccin base de origen


Especifica la direccin base de origen El desplazamiento se aade a esta
direccin para calcular el canal fuente.
Of: Desplazamiento
Este valor se aade a la direccin base para calcular el canal fuente. El des-
plazamiento puede ser cualquier valor desde 0000 hasta FFFF (0 hasta
65,535 decimal), pero la Bs y la Bs+Of deben estar en el mismo rea de
datos.
15 0

Bs

hasta hasta
Of

Especificaciones del
operando rea Bs Of D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta ---
#FFFF (binario) o
bien &0 hasta
&65535
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

339
Instrucciones de transferencia de datos Seccin 3-8

Descripcin COLL(081) copia el contenido del canal fuente (resultado de sumar Of a Bs)
al canal destino. Tambin se puede utilizar esta funcin para recoger los
datos de varios canales fuente del rea de datos, teniendo en cuenta que
debe cambiarse el valor de Of.

Bs Of

Bs+n

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = ON si los datos de origen son 0000.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de los datos fuente es
negativo "1".
OFF en el resto de los casos.

Precauciones Asegrese de que el desplazamiento no excede el final del rea de datos, es


decir, Bs y Bs+Of estn en el mismo rea de datos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, los contenidos de


D00110 (D00100 + 10) se copian a D00300 si el contenido de D00200 es 10
(0A hexadecimal). El contenido de otros canales puede copiarse a D00300
cambiando el desplazamiento de D00200.

D00200 0 0 0 A
Bs: D00100
Bs Hexadecimal de 4 dgitos
D00101
Of
Desplazamiento +10 canales
D
D00110
Copiado mediante COLL(081).

3-8-14 MOVE TO REGISTER: MOVR(560)


Empleo Establece la direccin de memoria del PLC del canal, bit o el indicador de
finalizacin del temporizador/contador especificado del registro de ndice
especificado. (utilice MOVRW(561) para configurar la direccin de memoria
en el PLC del valor actual de temporizador o contador, en un registro de
ndice).

Smbolo de diagrama de
rels MOVR(560)

S S: Fuente (canal o bit deseado)

D D: Destino (registro de ndice)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MOVR(560)
Se ejecuta una vez en el diferencial ascendente @MOVR(560)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

340
Instrucciones de transferencia de datos Seccin 3-8

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos D: Destino
El destino debe ser un registro de ndice (IR0 hasta IR15).

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6143 ---
CIO 000000 hasta
CIO 614315
rea de Trabajo W000 hasta W511 ---
W00000 hasta W51115
rea de bit en Espera H000 hasta H511 ---
H00000 hasta H51115
rea Bit Auxiliar A000 hasta A447 ---
A448 hasta A959
A00000 hasta A44715
A44800 hasta A95915
rea Temporizador T0000 hasta T4095 ---
(Indicador de finalizacin)
rea Contador C0000 hasta C4095 ---
(Indicador de finalizacin)
Indicador de tarea TK0000 hasta TK0031 ---
rea DM D00000 hasta D32767 ---
rea EM sin banco E00000 hasta E32767 ---
rea EM con Banco En_00000 hasta En_32767 ---
(n = 0 a C)
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice --- IR0 hasta IR15
Direccionamiento indi- ---
recto utilizando regis-
tros de ndice

Descripcin MOVR(560) busca la direccin de memoria del PLC (direccin absoluta) de S


y escribe esa direccin en D (un registro de ndice).
Direccin de memoria interna de E/S de S

Registro de ndice

Si se especifica un temporizador o contador en S, MOVR(560) escribe la


direccin de memoria del PLC del indicador de finalizacin de temporizador/
contador en D. Use MOVRW(561) para escribir el PV de la direccin de
memoria del PLC del temporizador/contador en D.

341
Instrucciones de transferencia de datos Seccin 3-8

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF o sin cambios (vase la nota).
Indicador de igual = OFF o sin cambios (vase la nota).
Indicador de negativo N OFF o sin cambios (vase la nota).

Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Precauciones MOVR(560) no puede configurar las direcciones de memoria del PLC de los
PV de temporizador/contador. Use MOVRW(561) para configurar las direccio-
nes de memoria del PLC de los PV de temporizador/contador.
Los contenidos de un registro de ndice de una tarea de interrupcin no son
predecibles hasta su configuracin. Asegrese de configurar el registro
mediante MOVR(560) en una tarea de interrupcin antes de utilizar este
registro.
Cualquier cambio hecho en los contenidos de un IR o DR hecho en una tarea
de interrupcin no afectar a los contenidos del registro en una tarea cclica.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, MOVR(560) escribe


la direccin de memoria del PLC de CIO 0020 en IR0.
Direccin de memoria de E/S interna
S: 0020 14

Direccin de
memoria interna de
E/S de CIO 0020

D: IR0 14

3-8-15 MOVE TIMER/COUNTER PV TO REGISTER: MOVRW(561)


Empleo Selecciona la direccin de memoria del PLC del PV del temporizador o conta-
dor especificado en el registro de ndice especificado. (Use MOVR(560) para
configurar la direccin de memoria del PLC de un canal, bit o indicador de
finalizacin de temporizador/contador en un registro de ndice).

Smbolo de diagrama de
rels MOVRW(561)
S: Fuente (nmero de
S TC deseado)
D D: Destino (registro de ndice)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MOVR(561)
Se ejecuta una vez en el diferencial ascendente @MOVR(561)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos D: Destino
El destino debe ser un registro de ndice (IR0 hasta IR15).

342
Instrucciones de transferencia de datos Seccin 3-8

Especificaciones del
operando rea S D
rea CIO ---
rea de Trabajo ---
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador T0000 hasta T4095 ---
(valor actual)
rea Contador C0000 hasta C4095 ---
(valor actual)
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice --- IR0 hasta IR15
Direccionamiento indi- ---
recto utilizando regis-
tros de ndice

Descripcin MOVRW(561) busca la direccin de memoria del PLC para el PV del tempori-
zador o contador especificado en S y escribe esa direccin en D (un registro
de ndice).
Direccin de memoria interna de E/S de S

Slo PV de
temporizador/contador

Registro de ndice

MOVRW(561) configura la direccin de memoria del PLC para el PV de tem-


porizador o contador en D. Use MOVR(560) para configurar la direccin de
memoria del PLC del indicador de finalizacin del temporizador o contador.

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF o sin cambios (vase la nota).
Indicador de igual = OFF o sin cambios (vase la nota).
Indicador de negativo N OFF o sin cambios (vase la nota).

Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Precauciones MOVRW(561) no puede configurar las direcciones de memoria del PLC de


canales de rea de datos, bits ni indicadores de finalizacin de temporizador/
contador. Use MOVR(560) para configurar estas direcciones de memoria del
PLC.

343
Instrucciones de desplazamiento de datos Seccin 3-9

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, MOVRW(561) escribe


la direccin de memoria del PLC del PV de temporizador T0000 en IR1.
Direccin de memoria de E/S interna
S:

3-9 Instrucciones de desplazamiento de datos


Esta seccin describe las instrucciones utilizadas para desplazar datos en un
canal o entre canales, pero en cantidades y direcciones diferentes.
Instruccin Nemnico Cdigo de Pgina
funcin
SHIFT REGISTER SFT 010 345
REVERSIBLE SHIFT REGIS- SFTR 084 346
TER
ASYNCHRONOUS SHIFT ASFT 017 349
REGISTER
WORD SHIFT WSFT 016 352
ARITHMETIC SHIFT LEFT ASL 025 354
DOUBLE SHIFT LEFT ASLL 570 355
ARITHMETIC SHIFT RIGHT ASR 026 357
DOUBLE SHIFT RIGHT ASRL 571 358
ROTATE LEFT ROL 027 360
DOUBLE ROTATE LEFT ROLL 572 362
ROTATE LEFT WITHOUT RLNC 574 367
CARRY
DOUBLE ROTATE LEFT RLNL 576 369
WITHOUT CARRY
ROTATE RIGHT ROR 028 364
DOUBLE ROTATE RIGHT RORL 573 365
ROTATE RIGHT WITHOUT RRNC 575 371
CARRY
DOUBLE ROTATE RIGHT RRNL 577 372
WITHOUT CARRY
ONE DIGIT SHIFT LEFT SLD 074 374
ONE DIGIT SHIFT RIGHT SRD 075 376
SHIFT N-BIT DATA LEFT NSFL 578 377
SHIFT N-BIT DATA RIGHT NSFR 579 379
SHIFT N-BITS LEFT NASL 580 381
DOUBLE SHIFT N-BITS LEFT NSLL 582 384
SHIFT N-BITS RIGHT NASR 581 387
DOUBLE SHIFT N-BITS NSRL 583 389
RIGHT

344
Instrucciones de desplazamiento de datos Seccin 3-9

3-9-1 SHIFT REGISTER: SFT(010)


Empleo Opera un registro de desplazamiento.

Smbolo de diagrama de Entrada de


rels datos SFT(010)
Entrada de
desplazamiento
St St: Canal inicial
Entrada de E E: Canal final
reset

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SFT(010)
Se ejecuta una vez en el diferencial Incompatible
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK OK

Nota St y E deben estar en el mismo rea de datos.

Especificaciones del
operando rea St E
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15

345
Instrucciones de desplazamiento de datos Seccin 3-9

Descripcin Cuando la condicin de ejecucin de la entrada de desplazamiento cambia


de OFF a ON, todos los datos desde St hasta E se desplazan hacia la
izquierda en un bit (desde el bit de la derecha hacia el bit de la izquierda), y el
estado ON/OFF de la entrada de datos se coloca en el bit de la derecha.
E St+1, St+2, ... St

Se pierde
Estado de la entrada de datos para
cada entrada de desplazamiento

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si la direccin indirecta de IR para St y E no est en
error las reas de datos CIO, AR, HR o WR.
OFF en el resto de los casos.

Precauciones Los datos del bit desplazados fuera del registro de desplazamiento se ignoran.
Cuando la entrada de reset se pone en ON, todos los bits del registro de des-
plazamiento desde el canal de la derecha designado (St) al canal de la
izquierda designado (E) se resetearn (es decir, se pondrn a 0). La entrada
de reset tiene prioridad sobre las otras entradas.
St debe ser menor o igual que E, pero aunque St se configure con un valor
mayor que E no se producir un error y se desplazar un canal de datos de St.
Cuando St y E se designan indirectamente utilizando registros de ndice y las
direcciones reales de la memoria de E/S no estn dentro de reas de memo-
ria para datos se producir un error y el indicador de error se pondr en ON.

Ejemplos Registro de desplazamiento de ms de 16 bits


El siguiente ejemplo muestra un registro de desplazamiento de 48 bits
usando los canales CIO 0128 hasta CIO 0130. Se usa un impulso de reloj de
1 segundo de tal manera que la condicin de ejecucin producida por
CIO 000005 se desplaza a un registro de 3 canales entre CIO 012800 y
CIO 013015 cada segundo.

Entrada de datos
E: CIO 0130 St+1: CIO 0129 St: CIO 0128 Contenidos
Entrada de de CIO
desplazamiento Se 000005
pierde
(Impulso de reloj de 1 s)
Reset

3-9-2 REVERSIBLE SHIFT REGISTER: SFTR(084)


Empleo Crea un registro de desplazamiento que desplaza datos hacia la derecha o
hacia la izquierda.

Smbolo de diagrama de
rels SFTR(084)
C: Canal de
C control

St St: Canal inicial

E E: Canal final

346
Instrucciones de desplazamiento de datos Seccin 3-9

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SFTR(084)
Se ejecuta una vez en el diferencial ascendente @SFTR(084)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal de control

15 14 13 12
Direccin de
desplazamiento
1 (ON): Izquierda
0 (OFF): Derecha

Entrada de datos
Entrada de
desplazamiento
Reset

Nota St y E deben estar en el mismo rea de datos.

Especificaciones del
operando rea C St E
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

347
Instrucciones de desplazamiento de datos Seccin 3-9

Descripcin Cuando la condicin de ejecucin del bit de entrada de desplazamiento (bit


14 de C) cambia a ON, todos los datos desde St hasta E se mueven en la
direccin de desplazamiento especificada (designada mediante el bit 12 de
C) en 1 bit, y el estado ON/OFF de la entrada de datos se coloca en el bit de
la derecha o de la izquierda. Los datos del bit desplazado fuera del registro
de desplazamiento se colocan en el indicador de acarreo (CY).

E St Entrada
de datos
Entrada E St Direccin de
de datos desplazamiento

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si St es mayor que E.
error OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 en l.
acarreo OFF cuando se desplaza 0 en l.
OFF cuando el reset est configurado como 1.

Precauciones Las operaciones de desplazamiento anteriores son aplicables cuando el bit


de reset (bit 15 de C) se configura como OFF.
Cuando el reset (bit 15 de C) se pone en ON todos los bits del registro de
datos, desde St hasta E, se resetearn (es decir, se pondrn a 0).
Cuando St es mayor que E, se generar un error y el indicador de error se
pondr en ON.

Ejemplos Desplazamiento de datos


Si la entrada de desplazamiento CIO 030014 se pone en ON cuando
CIO 000000 est en ON, y el bit de reset CIO 030015 est en OFF, los cana-
les CIO 0100 hasta CIO 0102 se desplazarn en un bit en la direccin desig-
nada por CIO 030012 (por ejemplo, 1: Derecha) y los contenidos del bit de
entrada CIO 030013 se desplazarn al bit de la derecha, CIO 010000. Los
contenidos de CIO 010215 se desplazarn al indicador de acarreo (CY).

C
St C: 0300
E
Direccin de desplazamiento

Bit de entrada de desplazamiento: 1


Bit de entrada de reset: 0

Entrada de da-
tos: CIO 030013

Reseteo de datos
Si CIO 030014 est en ON cuando CIO 000000 est en ON, y el bit de rese-
teo, CIO 030015, est en ON, los canales CIO 0100 hasta CIO 0102 y el indi-
cador de acarreo se restearn a OFF.

348
Instrucciones de desplazamiento de datos Seccin 3-9

Control de datos
Reseteo de datos
Todos los bits desde St hasta E y el indicador de acarreo se ponen a 0 y no
pueden recibirse otros datos cuando el bit de entrada de reset (bit 15 de C)
est en ON.

Desplazamiento de datos hacia la izquierda (del bit de la derecha al bit de


la izquierda)
Cuando el bit de entrada de desplazamiento (bit 14 de C) est en ON, los
contenidos del bit de entrada (bit 13 de C) se desplazan al bit 00 del canal ini-
cial, y cada bit consiguiente se desplaza en un bit hacia la izquierda. El
estado del bit 15 del canal final se desplaza al indicador de acarreo.
Entrada
de datos

Desplazamiento de datos hacia la derecha (del bit de la izquierda al bit de


la derecha)
Cuando el bit de entrada de desplazamiento (bit 14 de C) est en ON, los
contenidos del bit de entrada (bit 13 de C) (E/S) se desplazan al bit 15 del
canal final, y cada bit consiguiente se desplaza en un bit hacia la derecha. El
estado del bit 00 del canal inicial se desplaza al indicador de acarreo.
Entrada de
datos

3-9-3 ASYNCHRONOUS SHIFT REGISTER: ASFT(017)


Empleo Desplaza todos los datos de canal que no sean cero dentro del rango de
canales especificados hacia St o hacia E, reemplazando los datos de canales
0000Hex.

Smbolo de diagrama de
rels ASFT(017)
C: Canal de
C control
St St: Canal inicial

E E: Canal final

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ASFT(017)
Se ejecuta una vez en el diferencial ascendente @ASFT(017)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

349
Instrucciones de desplazamiento de datos Seccin 3-9

Operandos C: Canal de control

15 14 13 12
Direccin de desplazamiento
0: Datos no cero desplazados hacia E
1: Datos no cero desplazados hacia St
Bit de habilitacin de desplazamiento
0: Desplazamiento deshabilitado
1: Desplazamiento habilitado
Bit de borrado
0: Datos no resetados
1: Todos los datos desde St hasta E resetados

Nota St y E deben estar en el mismo rea de datos.

Especificaciones del
operando rea C St E
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Cuando el bit de habilitacin de desplazamiento (bit 14 de C) est en ON,


todos los canales con contenido no cero en el rango de canales de entre St y
E se desplazarn un canal en la direccin determinada por el bit de direccin
de desplazamiento (bit 13 de C) siempre que el canal que se encuentra en la
direccin de desplazamiento contenga todo ceros. Si ASFT(017) se repite las
veces suficientes, todos los canales todo cero se reemplazarn por canales
no cero. El resultado ser que todos los datos entre St y E se dividen en
datos cero y en datos no cero.

350
Instrucciones de desplazamiento de datos Seccin 3-9

Direccin de
St desplazamiento
Desplazamiento
Conversin habilitado
...
Borrar
Conversin

St

Datos no cero
...

Datos cero
E

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si St es mayor que E.
error ON si el indicador de habilitacin de puerto de comunica-
ciones para el nmero de puerto de comunicaciones
especificado como el N de puerto de comunicaciones
para Ejecucin en segundo plano est en OFF cuando se
especifica procesamiento en segundo plano.
OFF en el resto de los casos.

Precauciones Cuando el indicador de borrado (bit 15 de C) se pone en ON, todos los bits
del registro de datos, desde St hasta E, se resetearn (es decir, se pondrn a
0). El indicador de borrado tiene prioridad sobre el bit de habilitacin de des-
plazamiento (bit 14 de C).
Cuando St es mayor que E, se generar un error y el indicador de error se
pondr en ON.

Ejemplos Desplazamiento de datos:


Si el bit de habilitacin de desplazamiento, CIO 030014, se pone en ON
cuando CIO 000000 est en ON, todos los canales con contenido de datos
no cero desde CIO 0100 hasta CIO 0109 se desplazarn en la direccin
designada por el bit de direccin de desplazamiento, CIO 030013 (por ejem-
plo, 1: Hacia St) si el canal a la izquierda de los datos no cero es todo ceros.

351
Instrucciones de desplazamiento de datos Seccin 3-9

C
St
E C: 0300
Direccin de desplazamiento
1: Datos no cero desplazados hacia E
Bit de habilitacin de desplazamiento: 1
Borrar
Despus de
Antes de ejecutar ASFT(017) Despus de una ejecucin
dos ejecuciones
St:
Datos no cero
desplazados hacia St

E:

3-9-4 WORD SHIFT: WSFT(016)


Empleo Desplaza datos entre St y E en unidades de canal.

Smbolo de diagrama de
rels WSFT(016)

S S: Canal fuente

St St: Canal inicial

E E: Canal final

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON WSFT(016)
Se ejecuta una vez en el diferencial ascendente @WSFT(016)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Nota St y E deben estar en el mismo rea de datos.

Especificaciones del
operando rea S St E
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095

352
Instrucciones de desplazamiento de datos Seccin 3-9

rea S St E
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta ---
#FFFF (binario)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin WSFT(016) desplaza datos desde St hacia E en unidades de canal, y los


datos del canal fuente S se colocan en St. Los contenidos de E se pierden.

E St
Se
pierde

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si St es mayor que E.
error OFF en el resto de los casos.

Precauciones Cuando St es mayor que E, se generar un error y el indicador de error se


pondr en ON.
Nota Cuando se desplazan grandes cantidades de datos, el tiempo de ejecucin
de la instruccin es bastante largo. Asegrese de que no se interrumpe la ali-
mentacin mientras se est ejecutando WSFT(016), lo que causara que la
operacin de desplazamiento se interrumpiera a la mitad.

Ejemplos Cuando CIO 000000 est en ON, los datos de CIO 0100 hasta CIO 0102 se
desplazan en un canal hacia E. Los contenidos de CIO 0300 se almacenan
en CIO 0100 y los contenidos de CIO 0102 se pierden.

St
E
S: CIO 0300

E: CIO 0100 St: CIO 0101 St: CIO 0102


Se pierde

353
Instrucciones de desplazamiento de datos Seccin 3-9

3-9-5 ARITHMETIC SHIFT LEFT: ASL(025)


Empleo Desplaza el contenido de Wd un bit hacia la izquierda.

Smbolo de diagrama de
rels ASL(025)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ASL(025)
Se ejecuta una vez en el diferencial ascendente @ASL(025)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ASL(025) desplaza los contenidos de Wd un bit a la izquierda (del bit de la


derecha al bit de la izquierda). Se coloca 0 en el bit de la derecha y los
datos del bit de la izquierda se desplazan al indicador de acarreo (CY).

15 0

354
Instrucciones de desplazamiento de datos Seccin 3-9

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones Si se ejecuta ASL(025) el indicador de error se pondr en OFF.


Si como resultado del desplazamiento el contenido de Wd es cero, el indica-
dor de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
Wd es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON, se desplazar CIO 0100 un bit a la
izquierda. Se colocar 0 en CIO 010000 y los contenidos de CIO 010115 se
desplazarn al indicador de acarreo (CY).

Wd

3-9-6 DOUBLE SHIFT LEFT: ASLL(570)


Empleo Desplaza el contenido de Wd y Wd+1 un bit hacia la izquierda.

Smbolo de diagrama de
rels ASLL(570)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ASLL(570)
Se ejecuta una vez en el diferencial ascendente @ASLL(570)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510

355
Instrucciones de desplazamiento de datos Seccin 3-9

rea Wd
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ASLL(570) desplaza los contenidos de Wd y Wd +1 un bit a la izquierda (del


bit de la derecha al bit de la izquierda). Se coloca 0 en el bit de la derecha
de Wd y los contenidos del bit de la izquierda de Wd y Wd +1 se desplazan al
indicador de acarreo (CY).
Wd+1 Wd

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.
Precauciones Cuando se ejecuta ASLL(570) el indicador de error se pondr en OFF.
Si como resultado del desplazamiento el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
Wd +1 es 1, el indicador negativo se pondr en ON.

356
Instrucciones de desplazamiento de datos Seccin 3-9

Ejemplos Cuando CIO 000000 est en ON, los canales CIO 0100 y CIO 0101 se des-
plazarn un bit a la izquierda. Se colocar 0 en CIO 010000 y los conteni-
dos de CIO 010015 se desplazarn al indicador de acarreo (CY).

Wd

3-9-7 ARITHMETIC SHIFT RIGHT: ASR(026)


Empleo Desplaza el contenido del Wd un bit hacia la derecha.
Smbolo de diagrama de
rels ASR(026)

Wd Wd: Canal
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ASR(026)
Se ejecuta una vez en el diferencial ascendente @ASR(026)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK
Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15

357
Instrucciones de desplazamiento de datos Seccin 3-9

rea Wd
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ASR(026) desplaza los contenidos de Wd un bit a la derecha (del bit de la


izquierda al bit de la derecha). Se colocar 0 en el bit de la izquierda y los
contenidos del bit de la derecha se desplazarn al indicador de acarreo (CY).

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N OFF
negativo

Precauciones Cuando se ejecuta ASR(026) el indicador de error y el indicador de negativo


se pondrn en OFF.
Si como resultado del desplazamiento el contenido de Wd es cero, el indica-
dor de igual se pondr en ON.
Ejemplos Cuando CIO 000000 est en ON, se desplazar CIO 0100 un bit a la dere-
cha. Se colocar 0 en CIO 010015 y los contenidos de CIO 010000 se des-
plazarn al indicador de acarreo (CY).

Wd

3-9-8 DOUBLE SHIFT RIGHT: ASRL(571)


Empleo Desplaza el contenido de Wd y Wd +1 un bit hacia la derecha.

Smbolo de diagrama de
rels ASRL(571)

Wd Wd: Canal

358
Instrucciones de desplazamiento de datos Seccin 3-9

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ASRL(571)
Se ejecuta una vez en el diferencial ascendente @ASRL(571)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ASRL(571) desplaza los contenidos de Wd y Wd +1 un bit a la derecha (del


bit de la izquierda al bit de la derecha). Se colocar 0 en el bit de la
izquierda de Wd +1 y los contenidos del bit de la derecha de Wd se desplaza-
rn al indicador de acarreo (CY).
Wd+1 Wd

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = ON cuando el resultado de desplazamiento es 0.
OFF en el resto de los casos.

359
Instrucciones de desplazamiento de datos Seccin 3-9

Nombre Etiqueta Operacin


Indicador CY ON cuando se desplaza 1 al indicador de acarreo (CY).
de acarreo OFF en el resto de los casos.
Indicador N OFF
de negativo

Precauciones Cuando se ejecuta ASRL (571) el indicador de error y el indicador de nega-


tivo se pondrn en OFF.
Si como resultado del desplazamiento el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON, los canales CIO 0100 y CIO 0101 se des-
plazarn un bit a la derecha. Se colocar 0 en CIO 010115 y los contenidos
de CIO 010000 se desplazarn al indicador de acarreo (CY).

Wd

3-9-9 ROTATE LEFT: ROL(027)


Empleo Desplaza todos los bits de Wd un bit hacia la izquierda, incluyendo el indica-
dor de acarreo (CY).

Smbolo de diagrama de
rels ROL(027)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ROL(027)
Se ejecuta una vez en el diferencial ascendente @ROL(027)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767

360
Instrucciones de desplazamiento de datos Seccin 3-9

rea Wd
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ROL(027) desplaza todos los bits de Wd incluido el indicador de acarreo (CY)
a la izquierda (del bit de la derecha al bit de la izquierda).

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones Cuando se ejecuta ROL(027) el indicador de error se pondr en OFF.


Si como resultado del desplazamiento el contenido de Wd es cero, el indica-
dor de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
Wd es 1, el indicador negativo se pondr en ON.
Nota Es posible configurar los contenidos del indicador de acarreo como 1 o 0
inmediatamente antes de ejecutar esta instruccin utilizando las instruccio-
nes de configuracin de acarreo (STC(040)) o de borrado de acarreo
(CLC(041)).

Ejemplos Cuando CIO 000000 est en ON, el canal CIO 0100 y el indicador de acarreo
se desplazarn un bit a la izquierda. Los contenidos de CIO 010015 se des-
plazarn al indicador de acarreo (CY) y los contenidos del indicador de aca-
rreo se desplazarn a CIO 010000.

361
Instrucciones de desplazamiento de datos Seccin 3-9

Wd

Wd: CIO 0100

Instruccin ejecutada
una vez

3-9-10 DOUBLE ROTATE LEFT: ROLL(572)


Empleo Desplaza todos los bits de Wd y Wd +1 un bit hacia la izquierda, incluyendo el
indicador de acarreo (CY).

Smbolo de diagrama de
rels ROLL(572)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ROLL(572)
Se ejecuta una vez en el diferencial ascendente @ROLL(572)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---

362
Instrucciones de desplazamiento de datos Seccin 3-9

rea Wd
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ROLL(572) desplaza todos los bits de Wd y Wd +1 incluido el indicador de


acarreo (CY) a la izquierda (del bit de la derecha al bit de la izquierda).
Wd+1 Wd

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones Cuando se ejecuta ROLL(572) el indicador de error se pondr en OFF.


Si como resultado del desplazamiento el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
Wd +1 es 1, el indicador negativo se pondr en ON.
Nota Es posible configurar los contenidos del indicador de acarreo como 1 o 0
inmediatamente antes de ejecutar esta instruccin utilizando las instruccio-
nes de configuracin de acarreo (STC(040)) o de borrado de acarreo
(CLC(041)).

Ejemplos Cuando CIO 000000 est en ON, los canales CIO 0100 y CIO 0101 y el indi-
cador de acarreo se desplazarn un bit a la izquierda. Los contenidos de
CIO 010015 se desplazarn al indicador de acarreo (CY) y los contenidos del
indicador de acarreo se desplazarn a CIO 010000.

Wd

Wd+1: CIO 0101 Wd: CIO 0100

Instruccin ejecutada una vez

363
Instrucciones de desplazamiento de datos Seccin 3-9

3-9-11 ROTATE RIGHT: ROR(028)


Empleo Desplaza todos los bits de Wd un bit hacia la derecha, incluyendo el indicador
de acarreo (CY).

Smbolo de diagrama de
rels ROR(028)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ROR(028)
Se ejecuta una vez en el diferencial ascendente @ROR(028)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ROR(028) desplaza todos los bits de Wd incluido el indicador de acarreo (CY)
a la derecha (del bit de la izquierda al bit de la derecha).

364
Instrucciones de desplazamiento de datos Seccin 3-9

Wd

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones Cuando se ejecuta ROR(028) el indicador de error se pondr en OFF.


Si como resultado del desplazamiento el contenido de Wd es cero, el indica-
dor de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
Wd es 1, el indicador negativo se pondr en ON.
Nota Es posible configurar los contenidos del indicador de acarreo como 1 o 0
inmediatamente antes de ejecutar esta instruccin utilizando las instrucciones
de configuracin de acarreo (STC(040)) o de borrado de acarreo (CLC(041)).
Ejemplos Cuando CIO 000000 est en ON, el canal CIO 0100 y el indicador de acarreo
se desplazarn un bit a la derecha. Los contenidos de CIO 010000 se despla-
zarn al indicador de acarreo (CY) y los contenidos del indicador de acarreo
se desplazarn a CIO 010015.

Wd

Wd: CIO 0100

Instruccin ejecutada una


vez

3-9-12 DOUBLE ROTATE RIGHT: RORL(573)


Empleo Desplaza todos los bits de Wd y Wd +1 un bit hacia la derecha, incluyendo el
indicador de acarreo (CY).
Smbolo de diagrama de
rels RORL(573)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RORL(573)
Se ejecuta una vez en el diferencial ascendente @RORL(573)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

365
Instrucciones de desplazamiento de datos Seccin 3-9

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin RORL(573) desplaza todos los bits de Wd y Wd +1 incluido el indicador de


acarreo (CY) a la derecha (del bit de la izquierda al bit de la derecha).
Wd+1 Wd

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones Cuando se ejecuta RORL(573) el indicador de error se pondr en OFF.

366
Instrucciones de desplazamiento de datos Seccin 3-9

Si como resultado del desplazamiento el contenido de Wd y Wd +1 es cero, el


indicador de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
Wd +1 es 1, el indicador negativo se pondr en ON.
Nota Es posible configurar los contenidos del indicador de acarreo como 1 o 0
inmediatamente antes de ejecutar esta instruccin utilizando las instruccio-
nes de configuracin de acarreo (STC(040)) o de borrado de acarreo
(CLC(041)).

Ejemplos Cuando CIO 000000 est en ON, los canales CIO 0100 y CIO 0101 y el indi-
cador de acarreo se desplazarn un bit a la derecha. Los contenidos de
CIO 010000 se desplazarn al indicador de acarreo (CY) y los contenidos del
indicador de acarreo se desplazarn a CIO 010115.

Wd

Wd+1: CIO 0101 Wd: CIO 0100

Instruccin ejecutada una vez

3-9-13 ROTATE LEFT WITHOUT CARRY: RLNC(574)


Empleo Desplaza todos los bits de Wd un bit hacia la izquierda, sin incluir el indicador
de acarreo (CY).

Smbolo de diagrama de
rels RLNC(574)
Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RLNC(574)
Se ejecuta una vez en el diferencial ascendente @RLNC(574)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767

367
Instrucciones de desplazamiento de datos Seccin 3-9

rea Wd
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin RLNC(574) desplaza todos los bits de Wd a la izquierda (del bit de la derecha
al bit de la izquierda). El contenido del bit situado ms la izquierda de Wd se
desplaza hacia el bit situado ms a la derecha y al indicador de acarreo (CY).

Wd

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones Cuando se ejecuta RLNC(574) el indicador de error se pondr en OFF.


Si como resultado del desplazamiento el contenido de Wd es cero, el indica-
dor de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
Wd es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON, el canal CIO 0100 se desplazar un bit a la
izquierda (sin incluir el indicador de acarreo(CY)). Los contenidos de
CIO 010015 se desplazarn a CIO 010000.

368
Instrucciones de desplazamiento de datos Seccin 3-9

Wd

Wd: CIO 0100

Instruccin ejecutada una vez

3-9-14 DOUBLE ROTATE LEFT WITHOUT CARRY: RLNL(576)


Empleo Desplaza todos los bits de Wd y Wd +1 un bit hacia la izquierda, sin incluir el
indicador de acarreo (CY).

Smbolo de diagrama de
rels RLNL(576)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RLNL(576)
Se ejecuta una vez en el diferencial @RLNL(576)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---

369
Instrucciones de desplazamiento de datos Seccin 3-9

rea Wd
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin RLNL(576) desplaza todos los bits de Wd y Wd +1 a la izquierda (del bit de la


derecha al bit de la izquierda). El contenido del bit situado ms la izquierda de
Wd +1 se desplaza hacia el bit situado ms a la derecha de Wd y al indicador
de acarreo (CY).
Wd+1 Wd

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones Cuando se ejecuta RLNL(576) el indicador de error se pondr en OFF.


Si como resultado del desplazamiento el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
Wd +1 es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON, los canales CIO 0100 y CIO 0101 se des-
plazarn un bit a la izquierda (sin incluir el indicador de acarreo(CY)). Los
contenidos de CIO 010115 se desplazarn a CIO 010000.

Wd

Wd+1: CIO 0101 Wd: CIO 0100

Instruccin ejecutada una


vez

370
Instrucciones de desplazamiento de datos Seccin 3-9

3-9-15 ROTATE RIGHT WITHOUT CARRY: RRNC(575)


Empleo Desplaza todos los bits de Wd un bit hacia la derecha, sin incluir el indicador
de acarreo (CY). El contenido del bit situado ms la derecha de Wd se des-
plaza hacia el bit situado ms a la izquierda y al indicador de acarreo (CY).

Smbolo de diagrama de
rels RRNC(575)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RRNC(575)
Se ejecuta una vez en el diferencial ascendente @RRNC(575)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin RRNC(575) desplaza todos los bits de Wd a la derecha (del bit de la


izquierda al bit de la derecha) sin incluir el indicador de acarreo (CY).

371
Instrucciones de desplazamiento de datos Seccin 3-9

Wd

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones Cuando se ejecuta RRNC(575) el indicador de error se pondr en OFF.


Si como resultado del desplazamiento el contenido de Wd es cero, el indica-
dor de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
Wd es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON, el canal CIO 0100 se desplazar un bit a la
derecha (sin incluir el indicador de acarreo(CY)). Los contenidos de
CIO 010000 se desplazarn a CIO 010015.

Wd

Wd: CIO 0100

Instruccin ejecutada
una vez
CY

3-9-16 DOUBLE ROTATE RIGHT WITHOUT CARRY: RRNL(577)


Empleo Desplaza todos los bits de Wd y Wd +1 un bit hacia la derecha, sin incluir el
indicador de acarreo (CY). El contenido del bit situado ms la derecha de Wd
+1 se desplaza hacia el bit situado ms a la izquierda de Wd y al indicador de
acarreo (CY).

Smbolo de diagrama de
rels RRNL(577)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RRNL(577)
Se ejecuta una vez en el diferencial ascendente @RRNL(577)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

372
Instrucciones de desplazamiento de datos Seccin 3-9

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15
Descripcin RRNL(577) desplaza todos los bits de Wd y Wd +1 a la derecha (del bit de la
izquierda al bit de la derecha) sin incluir el indicador de acarreo (CY).
Wd+1 Wd

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.
Precauciones Cuando se ejecuta RRNL(577) el indicador de error se pondr en OFF.
Si como resultado del desplazamiento el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.

373
Instrucciones de desplazamiento de datos Seccin 3-9

Si como resultado del desplazamiento el contenido del bit de la izquierda de


Wd +1 es 1, el indicador negativo se pondr en ON.
Nota Es posible configurar los contenidos del indicador de acarreo como 1 o 0
inmediatamente antes de ejecutar esta instruccin utilizando las instruccio-
nes de configuracin de acarreo (STC(040)) o de borrado de acarreo
(CLC(041)).

Ejemplos Cuando CIO 000000 est en ON, los canales CIO 0100 y CIO 0101 se des-
plazarn un bit a la derecha (sin incluir el indicador de acarreo(CY)). Los con-
tenidos de CIO 010000 se desplazarn a CIO 010115.

Wd

Wd+1: CIO 0101 Wd: CIO 0100

Instruccin ejecutada una vez

3-9-17 ONE DIGIT SHIFT LEFT: SLD(074)


Empleo Desplaza los datos un dgito (4 bits) hacia la izquierda.

Smbolo de diagrama de
rels SLD(074)

St St: Canal inicial

E E: Canal final

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SLD(074)
Se ejecuta una vez en el diferencial ascendente @SLD(074)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Nota St y E deben estar en el mismo rea de datos.

Especificaciones del
operando rea St E
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767

374
Instrucciones de desplazamiento de datos Seccin 3-9

rea St E
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SLD(074) desplaza datos entre St y E un dgito (4 bits) a la izquierda. Se


coloca 0 en el dgito de la derecha (bits 3 hasta 0 de St), y el contenido del
dgito de la izquierda (bits 15 hasta 12 de E) se pierde.
E S t

Se pierde

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si St es mayor que E.
error OFF en el resto de los casos.

Precauciones Cuando St es mayor que E, se generar un error y el indicador de error se


pondr en ON.
Nota Cuando se desplazan grandes cantidades de datos, el tiempo de ejecucin
de la instruccin es bastante largo. Asegrese de que no se interrumpe la ali-
mentacin mientras se est ejecutando SLD(074), lo que causara que la
operacin de desplazamiento se interrumpiera a la mitad.

Ejemplos Cuando CIO 000000 est en ON, los canales CIO 0100 hasta CIO 0102 se
desplazarn un dgito (4 bits) a la izquierda. Se coloca un cero en los bits 0
hasta 3 del canal CIO 0100 y los contenidos de los bits 12 hasta 15 de
CIO 0102 se pierden.

St
E
E: CIO 0102 St+1: CIO 0101 St: CIO 0100

Se pierde

375
Instrucciones de desplazamiento de datos Seccin 3-9

3-9-18 ONE DIGIT SHIFT RIGHT: SRD(075)


Empleo Desplaza los datos un dgito (4 bits) hacia la derecha.

Smbolo de diagrama de
rels SRD(075)

St St: Canal inicial

E E: Canal final

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SRD(075)
Se ejecuta una vez en el diferencial ascendente @SRD(075)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Nota St y E deben estar en el mismo rea de datos.

Especificaciones del
operando rea St E
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

376
Instrucciones de desplazamiento de datos Seccin 3-9

Descripcin SRD(075) desplaza datos entre St y E un dgito (4 bits) a la derecha. Se


coloca 0 en el dgito de la izquierda (bits 15 hasta 12 de E), y el contenido
del dgito de la derecha (bits 3 hasta 0 de St) se pierde.
E S t
Se
pierde

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si St es mayor que E.
error OFF en el resto de los casos.

Precauciones Cuando St es mayor que E, se generar un error y el indicador de error se


pondr en ON.
Cuando se ejecuta SRD(075) el indicador de igual y el indicador de negativo
se pondrn en OFF.
Nota Cuando se desplazan grandes cantidades de datos, el tiempo de ejecucin
de la instruccin es bastante largo. Asegrese siempre de que no se inte-
rrumpe la alimentacin mientras se est ejecutando SRD(075), lo que causa-
ra que la operacin de desplazamiento se interrumpiera a la mitad.

Ejemplos Cuando CIO 000000 est en ON, los canales CIO 0100 hasta CIO 0102 se
desplazarn un dgito (4 bits) a la derecha. Se coloca un cero en los bits 12
hasta 15 del canal CIO 0102 y los contenidos de los bits 0 hasta 3 de
CIO 0100 se pierden.

St
E
E: CIO 0102 St+1: CIO 0101 St: CIO 0100
Se
pierde

3-9-19 SHIFT N-BIT DATA LEFT: NSFL(578)


Empleo Desplaza el nmero especificado de bits hacia la izquierda.

Smbolo de diagrama de
rels NSFL(578)
D: Canal inicial para
D desplazamiento
C C: Bit de inicio
N: Longitud de
N
desplazamiento de datos

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON NSFL(578)
Se ejecuta una vez en el diferencial ascendente @NSFL(578)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

377
Instrucciones de desplazamiento de datos Seccin 3-9

Operandos C: 0000 hasta 000F hexadecimal (0 hasta 15)


N: 0000 hasta FFFF hexadecimal (0 hasta 65535)
Nota Todos los canales del registro de desplazamiento deben estar en el mismo
rea.

Especificaciones del
operando rea D C N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta #0000 hasta
#000F (binario) o #FFFF (binario) o
bien &0 hasta &15 bien &0 hasta
&65535
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin NSFL(578) desplaza el nmero de bits especificado por la longitud de datos


de desplazamiento (N) desde el bit de inicio (C) del canal de la derecha, tal y
como designa D, un bit a la izquierda (hacia el canal de la izquierda y el bit de
la izquierda). Se coloca 0 en el bit de inicio y los contenidos del bit de la
izquierda del rea de desplazamiento se desplazan al indicador de acarreo
(CY).

Desplaza un bit hacia la


N1 bit izquierda

N1 bit

378
Instrucciones de desplazamiento de datos Seccin 3-9

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando los datos de C no estn entre 0000 y 000F
error hexadecimal.
OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.

Precauciones Cuando la longitud de los datos de desplazamiento (N) es 0, los contenidos


del bit de inicio se copiarn al indicador de acarreo (CY), y sus contenidos no
cambiarn.
Slo cambiarn los bits desplazados al canal de la derecha del rea de des-
plazamiento (es decir, los datos del canal de la izquierda).

Ejemplos Cuando CIO 000000 est en ON, todos los bits desde el bit de inicio 3 hasta la
longitud de datos de desplazamiento (B hexadecimal) se desplazarn un bit a
la izquierda (desde el bit de la derecha hacia el bit de la izquierda). Se coloca
0 en el bit 3 de CIO 0100. Los contenidos del bit de la izquierda del rea de
desplazamiento (bit 13 de CIO 0100) se copian al indicador de acarreo (CY).

D
C &3
N &11
C: Empezando por
N: 11 bits el bit 3

D: CIO 0100

D: CIO 0100
0

3-9-20 SHIFT N-BIT DATA RIGHT: NSFR(579)


Empleo Desplaza el nmero especificado de bits hacia la derecha.

Smbolo de diagrama de
rels NSFR(579)
D: Canal inicial para
D desplazamiento
C C: Bit de inicio
N: Longitud de
N
desplazamiento de datos

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON NSFR(579)
Se ejecuta una vez en el diferencial ascendente @NSFR(579)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

379
Instrucciones de desplazamiento de datos Seccin 3-9

Operandos C: 0000 hasta 000F hexadecimal (0 hasta 15)


N: 0000 hasta FFFF hexadecimal (0 hasta 65535)
Nota Todos los canales del registro de desplazamiento deben estar en el mismo
rea.

Especificaciones del
operando rea D C N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta #0000 hasta
#000F (binario) o #FFFF (binario) o
bien &0 hasta &15 bien &0 hasta
&65535
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin NSFR(579) desplaza el nmero de bits especificado por la longitud de datos


de desplazamiento (N) desde el bit de inicio (C) del canal de la derecha, tal y
como designa D, un bit a la derecha (hacia el canal de la derecha y el bit de la
derecha). Se colocar 0 en el bit de inicio y los contenidos del bit de la dere-
cha del rea de desplazamiento se desplazarn al indicador de acarreo (CY).

Desplaza un bit hacia la


derecha
N-1 bit

N-1 bit

380
Instrucciones de desplazamiento de datos Seccin 3-9

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando los datos de C no estn entre 0000 y 000F
error hexadecimal.
OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.

Precauciones Cuando la longitud de los datos de desplazamiento (N) es 0, los contenidos


del bit inicial se copiarn al indicador de acarreo (CY), y sus contenidos no
cambiarn.
Slo cambiarn los bits desplazados al canal de la derecha del rea de des-
plazamiento (es decir, los datos del canal de la izquierda).

Ejemplos Cuando CIO 000000 est en ON, todos los bits desde el bit de inicio 2 hasta la
longitud de datos de desplazamiento de 11 bits (B hexadecimal) se desplazarn
un bit a la derecha (desde el bit de la izquierda hacia el bit de la derecha). Se
desplaza 0 al bit 12 de CIO 0100. Los contenidos del bit de la derecha del rea
de desplazamiento (bit 2 de CIO 0100) se copian al indicador de acarreo (CY).

&2
&11

C: Empezando por
N: 11 bits el bit 2

3-9-21 SHIFT N-BITS LEFT: NASL(580)


Empleo Desplaza los 16 bits especificados de los datos de canal hacia la izquierda,
en funcin del nmero especificado de bits.

Smbolo de diagrama de
rels NASL(580)
D: Canal de
D desplazamiento
C: Canal de
C control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON NASL(580)
Se ejecuta una vez en el diferencial ascendente @NASL(580)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

381
Instrucciones de desplazamiento de datos Seccin 3-9

Operandos C: Canal de control


15 12 11 8 7 0
C
0

N de bits a desplazar:
00 hasta 10 Hex

Siempre 0.
Datos desplazados al registro
0 hexadecimal: 0 desplazado
8 hexadecimal: Contenidos del bit de la derecha desplazados

Especificaciones del
operando rea D C
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores especificados
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin NASL(580) desplaza D (el canal de desplazamiento) el nmero de bits bina-


rios especificado (en C) hacia la izquierda (del bit de la derecha hacia el bit
de la izquierda). Se colocan ceros o el valor del bit de la derecha en el
nmero de bits especificado del canal de desplazamiento empezando por el
bit de la derecha.

382
Instrucciones de desplazamiento de datos Seccin 3-9

Desplazar n bits

Contenido de "a" o "0"


desplazado
Se
pierde
N bits

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando el canal de control C (el nmero de bits a
error desplazar) no est dentro del rango.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado
negativo del desplazamiento.
OFF en el resto de los casos.

Precauciones En el caso de los bits que se desplazan fuera del canal especificado, los con-
tenidos del ltimo bit se desplazan al indicador de acarreo (CY), y el resto de
los datos se pierde.
Cuando el nmero de bits a desplazar (especificado en C) es 0, los datos no
se desplazarn. No obstante, los indicadores apropiados se pondrn en ON y
en OFF, segn los datos del canal especificado.
Cuando el contenido del canal de control C est fuera del rango se genera un
error y el indicador de error se pone en ON.
Si como resultado del desplazamiento el contenido de D es 0000 hexadeci-
mal, el indicador de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
D es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON, el contenido de CIO 0100 se desplaza 10
bits a la izquierda (desde el bit de la derecha al bit de la izquierda). El nmero
de bits a desplazar se especifica en los bits 0 hasta 7 del canal CIO 0300
(datos de control). El contenido del bit 0 de CIO 0100 se copia a los bits
desde los que se han desplazado datos y los contenidos del bit de la derecha
que fueron desplazados fuera del rango se desplazan al indicador de acarreo
(CY). El resto de los datos se pierde.

383
Instrucciones de desplazamiento de datos Seccin 3-9

15 12 11 8 7 4 3 0
C 8 0 0 A

N de bits a desplazar: 10 bits


(0A Hex)

Siempre 0.
Datos desplazados al registro
8 hexadecimal: Contenidos del bit de la derecha desplazados

Se
Bit de la
derecha

N de bits a desplazar:
10 bits (se inserta el contenido
del bit de la derecha).

3-9-22 DOUBLE SHIFT N-BITS LEFT: NSLL(582)


Empleo Desplaza los 32 bits especificados de los datos de canal hacia la izquierda,
en funcin del nmero especificado de bits.

Smbolo de diagrama de
rels NSLL(582)
D: Canal de
D desplazamiento
C C: Canal de
control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON NSLL(582)
Se ejecuta una vez en el diferencial ascendente @NSLL(582)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal de control

384
Instrucciones de desplazamiento de datos Seccin 3-9

15 12 11 8 7 0
C
0

N de bits a desplazar:
00 hasta 20 Hex

Siempre 0.
Datos desplazados al registro
0 hexadecimal: 0 desplazado
8 hexadecimal: Contenidos del bit de la derecha desplazados

Especificaciones del
operando rea D C
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W510 W000 hasta W511
rea de bit en Espera H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A448 hasta A958 A000 hasta A959
rea Temporizador T0000 hasta T4094 T0000 hasta T4095
rea Contador C0000 hasta C4094 C0000 hasta C4095
rea DM D00000 hasta D32766 D00000 hasta D32767
rea EM sin banco E00000 hasta E32766 E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta En_32767
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores especificados
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin NSLL(582) desplaza D y D+1 (los canales de desplazamiento) el nmero de


bits binarios especificado (en C) hacia la izquierda (del bit de la derecha
hacia el bit de la izquierda). Se colocan ceros o el valor del bit de la derecha
en el nmero de bits especificado del canal de desplazamiento empezando
por el bit de la derecha.

Desplazar n bits

Contenido de "a" o "0"


desplazado
Se
pierde
N bits

385
Instrucciones de desplazamiento de datos Seccin 3-9

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando el canal de control C (el nmero de bits a
error desplazar) no est dentro del rango.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones En el caso de los bits que se desplazan fuera del canal especificado, los con-
tenidos del ltimo bit se desplazan al indicador de acarreo (CY), y el resto de
los datos se pierde.
Cuando el nmero de bits a desplazar (especificado en C) es 0, los datos no
se desplazarn. No obstante, los indicadores apropiados se pondrn en ON y
en OFF, segn los datos del canal especificado.
Cuando el contenido del canal de control C est fuera del rango se genera un
error y el indicador de error se pone en ON.
Si como resultado del desplazamiento el contenido de D es 0000 hexadeci-
mal, el indicador de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
D, D +1 es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON, CIO 0100 y CIO 0101 se desplazan 10 bits
hacia la izquierda (desde el bit de la derecha al bit de la izquierda). El nmero
de bits a desplazar se especifica en los bits 0 hasta 7 del canal CIO 0300
(datos de control). El contenido del bit 0 de CIO 0100 se copia a los bits
desde los que se han desplazado datos y los contenidos del bit de la derecha
que fueron desplazados fuera del rango se desplazan al indicador de acarreo
(CY). El resto de los datos se pierde.

15 12 11 8 7 4 3 0
C
8 0 0 A

N de bits a desplazar: 10 bits


(0A Hex)

Siempre 0.
Datos desplazados al registro
8 hexadecimal: Contenido del bit
de la derecha desplazado

386
Instrucciones de desplazamiento de datos Seccin 3-9

Se pierde
Bit a de la
derecha
0100

0100

N de bits a desplazar: 10 bits


(contenido del bit de la derecha
desplazado)

3-9-23 SHIFT N-BITS RIGHT: NASR(581)


Empleo Desplaza los 16 bits especificados de los datos de canal hacia la derecha, en
funcin del nmero especificado de bits.

Smbolo de diagrama de
rels NASR(581)

D D: Canal de desplazamiento

C C: Canal de control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON NASR(581)
Se ejecuta una vez en el diferencial ascendente @NASR(581)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal de control


15 12 11 8 7 0
C 0

N de bits a desplazar:
00 hasta 10 Hex

Siempre 0.
Datos desplazados al registro
0 hexadecimal: 0 desplazado
8 hexadecimal: Contenidos del bit de la derecha desplazados

Especificaciones del
operando rea D C
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 hasta A447
A448 hasta A959
rea Temporizador T0000 hasta T4095

387
Instrucciones de desplazamiento de datos Seccin 3-9

rea D C
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores especificados
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin NASR(581) desplaza D (el canal de desplazamiento) el nmero de bits binarios


especificado (en C) hacia la derecha (del bit de la izquierda hacia el bit de la
derecha). Se colocan ceros o el valor del bit de la derecha en el nmero de bits
especificado del canal de desplazamiento empezando por el bit de la derecha.

Contenido de "a" o
"0" desplazado
Se
pierde
N bits

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando el canal de control C (el nmero de bits a
error desplazar) no est dentro del rango.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones En el caso de los bits que se desplazan fuera del canal especificado, los con-
tenidos del ltimo bit se desplazan al indicador de acarreo (CY), y el resto de
los datos se ignora.
Cuando el nmero de bits a desplazar (especificado en C) es 0, los datos no
se desplazarn. No obstante, los indicadores apropiados se pondrn en ON y
en OFF, segn los datos del canal especificado.

388
Instrucciones de desplazamiento de datos Seccin 3-9

Cuando el contenido del canal de control C est fuera del rango se genera un
error y el indicador de error se pone en ON.
Si como resultado del desplazamiento el contenido de D es 0000 hexadeci-
mal, el indicador de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
D es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON, el contenido de CIO 0100 se desplaza 10
bits a la derecha (desde el bit de la izquierda al bit de la derecha). El nmero
de bits a desplazar se especifica en los bits 0 hasta 7 del canal CIO 0300. Los
contenidos del bit 15 de CIO 0100 se copian a los bits desde los que se han
desplazado datos y los contenidos del bit de datos de la izquierda que fueron
desplazados fuera del rango se desplazan al indicador de acarreo (CY). El
resto de los datos se pierde.

15 12 11 8 7 4 3 0
C
8 0 0 A

N de bits a desplazar: 10 bits


(0A Hex)

Siempre 0.
Datos desplazados al registro
8 hexadecimal: Contenidos del bit de la izquierda desplazados

Bit de la izquierda
Se pierde

N de bits a desplazar: 10 bits


(se inserta el contenido del bit
de la izquierda).

3-9-24 DOUBLE SHIFT N-BITS RIGHT: NSRL(583)


Empleo Desplaza los 32 bits especificados de los datos de canal hacia la derecha, en
funcin del nmero especificado de bits.

Smbolo de diagrama de
rels NSRL(583)
D: Canal de
D desplazamiento
C: Canal de
C control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON NSRL(583)
Se ejecuta una vez en el diferencial ascendente @NSRL(583)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

389
Instrucciones de desplazamiento de datos Seccin 3-9

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal de control


15 12 11 8 7 0
C 0

N de bits a desplazar:
00 hasta 20 Hex

Siempre 0.
Datos desplazados al registro
0 hexadecimal: 0 desplazado
8 hexadecimal: Contenidos del bit de la derecha desplazados

Especificaciones del
operando rea D C
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W510 W000 hasta W511
rea de bit en Espera H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A448 hasta A958 A000 hasta A959
rea Temporizador T0000 hasta T4094 T0000 hasta T4095
rea Contador C0000 hasta C4094 C0000 hasta C4095
rea DM D00000 hasta D32766 D00000 hasta D32767
rea EM sin banco E00000 hasta E32766 E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta En_32767
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores especificados
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- -2048 hasta +2047 ,IR0 hasta -2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin NSRL(583) desplaza D y D+1 (los canales de desplazamiento) el nmero de


bits binarios especificado (en C) hacia la derecha (del bit de la izquierda
hacia el bit de la derecha). Se colocan ceros o el valor del bit de la derecha en
el nmero de bits especificado del canal de desplazamiento empezando por
el bit de la derecha.

390
Instrucciones de desplazamiento de datos Seccin 3-9

Desplazar n bits

Contenido de "a"
o "0" desplazado Se
pierde
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando el canal de control C (el nmero de bits a
error desplazar) no est dentro del rango.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado de desplazamiento es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando se desplaza 1 al indicador de acarreo (CY).
acarreo OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda es 1 como resultado del
negativo desplazamiento.
OFF en el resto de los casos.

Precauciones En el caso de los bits que se desplazan fuera del canal especificado, los con-
tenidos del ltimo bit se desplazan al indicador de acarreo (CY), y el resto de
los datos se pierde.
Cuando el nmero de bits a desplazar (especificado en C) es 0, los datos no
se desplazarn. No obstante, los indicadores apropiados se pondrn en ON y
en OFF, segn los datos del canal especificado.
Cuando el contenido del canal de control C est fuera del rango se genera un
error y el indicador de error se pone en ON.
Si como resultado del desplazamiento el contenido de D +1 es 00000000
hexadecimal, el indicador de igual se pondr en ON.
Si como resultado del desplazamiento el contenido del bit de la izquierda de
D +1 es 1, el indicador negativo se pondr en ON.
Ejemplos Cuando CIO 000000 est en ON, el contenido de CIO 0100 y CIO 0101 se
desplaza 10 bits a la derecha (desde el bit de la izquierda al bit de la dere-
cha). El nmero de bits a desplazar se especifica en los bits 0 hasta 7 del
canal CIO 0300 (datos de control). El contenido del bit 15 de CIO ???? se
copia a los bits desde los que se han desplazado datos y los contenidos del
bit de datos de la izquierda que fueron desplazados fuera del rango se des-
plazan al indicador de acarreo (CY). El resto de los datos se pierde.

15 12 11 8 7 4 3 0
C 8 0 0 A

N de bits a desplazar: 10 bits


(0A hexadecimal)

Siempre 0.
Datos desplazados al registro
8 hexadecimal: Contenidos del bit de la izquierda desplazados

391
Instrucciones de desplazamiento de datos Seccin 3-9

Bit de la izquierda Se pierde

CY
1

N de bits a desplazar: 10 bits


(se inserta el contenido del bit
de la izquierda).

392
Instrucciones de aumento/disminucin Seccin 3-10

3-10 Instrucciones de aumento/disminucin


3-10-1 INCREMENT BINARY: ++(590)
Empleo Aumenta el contenido hexadecimal de 4 dgitos del canal especificado en 1.

Smbolo de diagrama de
rels ++(590)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ++(590)
Se ejecuta una vez en el diferencial @++(590)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin ++(590) aade 1 al contenido binario del canal (Wd). El canal
especificado aumentar en 1 cada ciclo mientras la condicin de ejecucin de

393
Instrucciones de aumento/disminucin Seccin 3-10

++(590) est en ON. Cuando se utiliza la variacin de diferencial ascendente


de esta instruccin (@++(590)), el canal especificado aumenta slo cuando
la condicin de ejecucin haya cambiado de OFF a ON.

Wd Wd

El indicador de igual se pondr en ON si el resultado es 0000, el indicador de


acarreo se pondr en ON cuando un dgito cambia de F a 0, y el indicador
negativo se pondr en ON cuando el bit 15 del canal (Wd) est en ON en el
resultado.
Los indicadores de igual y de acarreo se pondrn en ON cuando el contenido
de Wd cambie de FFFF a 0000.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON si el contenido de Wd es 0000 despus de la ejecucin.
igual OFF en el resto de los casos.
Indicador de CY ON cuando un dgito de Wd haya cambiado de F a 0
acarreo durante la ejecucin.
OFF en el resto de los casos.
Indicador de N ON si el bit 15 de Wd est en ON despus de la ejecucin.
negativo OFF en el resto de los casos.
Ejemplos Operacin de ++(590)
En el siguiente ejemplo, el contenido de D00100 aumenta en 1 cada ciclo
mientras CIO 000000 est en ON.

Aumento cada ciclo mientras


CIO 000000 est en ON.
Wd: D00100 Wd: D00100
0 0 1 9 0 0 1 A

: Ejecucin de ++(590)

Aumento Aumento Aumento Aumento

Operacin de @++(590)
La variacin de diferencial ascendente se utiliza en el siguiente ejemplo, de
tal manera que el contenido de D00100 aumenta en 1 solamente cuando
CIO 000000 haya cambiado de OFF a ON.

@++ Aumento slo en


diferencial ascendente.
Wd: D00100 Wd: D00100
0 0 1 9 0 0 1 A

: Ejecucin de @++(590)

Aumento Aumento

394
Instrucciones de aumento/disminucin Seccin 3-10

3-10-2 DOUBLE INCREMENT BINARY: ++L(591)


Empleo Aumenta el contenido hexadecimal de 8 dgitos del canal especificado en 1.

Smbolo de diagrama de
rels ++L(591)

Wd Wd: Primer canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ++L(591)
Se ejecuta una vez en el diferencial @++L(591)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice IR0 hasta IR15
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin ++L(591) aade 1 al contenido hexadecimal de 8 dgitos de


Wd+1 y Wd. El contenido de los canales especificados aumentar en 1 cada
ciclo mientras la condicin de ejecucin de ++L(591) est en ON. Cuando se
utiliza la variacin de diferencial ascendente de esta instruccin (@++L(591)),

395
Instrucciones de aumento/disminucin Seccin 3-10

el contenido de los canales especificados aumenta slo cuando la condicin


de ejecucin haya cambiado de OFF a ON.

Wd+1 Wd Wd+1 Wd

El indicador de igual se pondr en ON si el resultado es 0000 0000, el indica-


dor de acarreo se pondr en ON cuando un dgito cambia de F a 0, y el indi-
cador negativo se pondr en ON cuando el bit 15 de Wd+1 est en ON en el
resultado.
Los indicadores de igual y de acarreo se pondrn en ON cuando el contenido
de Wd+1 cambie de FFFF FFFF a 0000 0000.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON si el resultado es 0000 0000 despus de la ejecucin.
igual OFF en el resto de los casos.
Indicador de CY ON cuando un dgito de Wd+1 o Wd haya cambiado de F
acarreo a 0 durante la ejecucin.
OFF en el resto de los casos.
Indicador de N ON si el bit 15 de Wd+1 est en ON despus de la
negativo ejecucin.
OFF en el resto de los casos.
Ejemplos Operacin de ++L(591)
En el siguiente ejemplo, el contenido hexadecimal de 8 dgitos de D00101 y
D00100 aumenta en 1 cada ciclo mientras CIO 000000 est en ON.
Aumento cada ciclo mientras
CIO 000000 est en ON.

Wd+1: D00101 Wd: D00100 Wd+1: D00101 Wd: D00100

: Ejecucin de ++L(591)

Aumento Aumento Aumento Aumento

Operacin de @++L(591)
La variacin de diferencial ascendente se utiliza en el siguiente ejemplo, de
tal manera que el contenido de D00101 y D00100 aumenta en 1 solamente
cuando CIO 000000 haya cambiado de OFF a ON.

@++L Aumento slo en


diferencial ascendente.

Wd+1: D00101 Wd: D00100 Wd+1: D00101 Wd: D00100

: Ejecucin de @++L(591)

Aumento Aumento

396
Instrucciones de aumento/disminucin Seccin 3-10

3-10-3 DECREMENT BINARY: (592)


Empleo Disminuye el contenido hexadecimal de 4 dgitos del canal especificado en 1.

Smbolo de diagrama de
rels (592)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON (592)
Se ejecuta una vez en el diferencial ascendente @ (592)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin (592) resta 1 al contenido binario de Wd. El canal especifi-


cado disminuir en 1 cada ciclo mientras la condicin de ejecucin de
(592) est en ON. Cuando se utiliza la variacin de diferencial ascen-
dente de esta instruccin (@ (592)), el canal especificado disminuye slo
cuando la condicin de ejecucin haya cambiado de OFF a ON.

Wd Wd

397
Instrucciones de aumento/disminucin Seccin 3-10

El indicador de igual se pondr en ON si el resultado es 0000, el indicador de


acarreo se pondr en ON cuando un dgito cambia de F a 0, y el indicador
negativo se pondr en ON cuando el bit 15 de Wd est en ON en el resultado.
Los indicadores de igual y de acarreo se pondrn en ON cuando el contenido
de Wd cambie de 0000 a FFFF.

Indicadores
Nombre Etiqueta Operacin
Indicador ER OFF
de error
Indicador = ON si el contenido de Wd es 0000 despus de la ejecucin.
de igual OFF en el resto de los casos.
Indicador CY ON cuando un dgito de Wd haya cambiado de F a 0
de acarreo durante la ejecucin.
OFF en el resto de los casos.
Indicador N ON si el bit 15 de Wd est en ON despus de la ejecucin.
de negativo OFF en el resto de los casos.

Ejemplos Operacin de (592)


En el siguiente ejemplo, el contenido de D00100 disminuye en 1 cada ciclo
mientras CIO 000000 est en ON.

Disminucin cada ciclo mientras


CIO 000000 est en ON.
Wd: D00100 Wd: D00100
1

: Ejecucin de (592)

Disminucin Disminucin Disminucin Disminucin

Operacin de @ (592)
La variacin de diferencial ascendente se utiliza en el siguiente ejemplo, de
tal manera que el contenido de D00100 disminuye en 1 solamente cuando
CIO 000000 haya cambiado de OFF a ON.

@ Disminucin slo en
diferencial ascendente.
Wd: D00100 Wd: D00100
1

: Ejecucin de @ (592)

Disminucin Disminucin

398
Instrucciones de aumento/disminucin Seccin 3-10

3-10-4 DOUBLE DECREMENT BINARY: L(593)


Empleo Disminuye el contenido hexadecimal de 8 dgitos del canal especificado en 1.

Smbolo de diagrama de
rels L(593)

Wd Wd: Primer canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON L(593)
Se ejecuta una vez en el diferencial ascendente @ L(593)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice IR0 hasta IR15
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin L(593) resta 1 al contenido hexadecimal de 8 dgitos de


Wd+1 y Wd. El contenido de los canales especificados disminuir en 1 cada
ciclo mientras la condicin de ejecucin de L(593) est en ON. Cuando se
utiliza la variacin de diferencial ascendente de esta instruccin (@ L(593))

399
Instrucciones de aumento/disminucin Seccin 3-10

el contenido de los canales especificados disminuye slo cuando la condicin


de ejecucin haya cambiado de OFF a ON.

Wd+1 Wd Wd+1 Wd

El indicador de igual se pondr en ON si el resultado es 0000 0000, el indica-


dor de acarreo se pondr en ON cuando un dgito cambia de 0 a F, y el indi-
cador negativo se pondr en ON cuando el bit 15 de Wd+1 est en ON en el
resultado.
Los indicadores de igual y de acarreo se pondrn en ON cuando el contenido
cambie de 0000 0000 a FFFF FFFF.

Indicadores
Nombre Etiqueta Operacin
Indicador ER OFF
de error
Indicador = ON si el resultado es 0000 0000 despus de la ejecucin.
de igual OFF en el resto de los casos.
Indicador CY ON cuando un dgito de Wd+1 o Wd haya cambiado de 0 a F
de acarreo durante la ejecucin.
OFF en el resto de los casos.
Indicador N ON si el bit 15 de Wd+1 est en ON despus de la
de negativo ejecucin.
OFF en el resto de los casos.

Ejemplos Operacin de L(593)


En el siguiente ejemplo, el contenido hexadecimal de 8 dgitos de D00101 y
D00100 disminuye en 1 cada ciclo mientras CIO 000000 est en ON.
Disminucin cada ciclo mientras
CIO 000000 est en ON.

Wd+1: D00101 Wd: D00100 Wd+1: D00101 Wd: D00100


1

: Ejecucin de L(593)

Disminucin Disminucin Disminucin Disminucin

Operacin de @ L(593)
La variacin de diferencial ascendente se utiliza en el siguiente ejemplo, de
tal manera que el contenido de D00101 y D00100 aumenta en 1 solamente
cuando CIO 000000 haya cambiado de OFF a ON.
Disminucin slo en
diferencial ascendente.
@ L Wd+1: D00101 Wd: D00100 Wd+1: D00101 Wd: D00100
1

: Ejecucin de @ L(593)

Disminucin Disminucin

400
Instrucciones de aumento/disminucin Seccin 3-10

3-10-5 INCREMENT BCD: ++B(594)


Empleo Aumenta el contenido hexadecimal de 4 dgitos del canal especificado en 1.

Smbolo de diagrama de
rels ++B(594)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ++B(594)
Se ejecuta una vez en el diferencial ascendente @++B(594)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en BCD @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin ++B(594) aade 1 al contenido BCD de Wd. El canal especifi-


cado aumentar en 1 cada ciclo mientras la condicin de ejecucin de
++B(594) est en ON. Cuando se utiliza la variacin de diferencial ascen-

401
Instrucciones de aumento/disminucin Seccin 3-10

dente de esta instruccin (@++B(594)), el canal especificado aumenta slo


cuando la condicin de ejecucin haya cambiado de OFF a ON.

Wd Wd

El indicador de igual se pondr en ON si el resultado es 0000 y el indicador


de acarreo se pondr en ON cuando un dgito cambie de 9 a 0.
Los indicadores de igual y de acarreo se pondrn en ON cuando el contenido
de Wd cambie de 9999 a 0000.

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si el contenido de Wd no es BCD.
de error OFF en el resto de los casos.
Indicador = ON si el contenido de Wd es 0000 despus de la ejecucin.
de igual OFF en el resto de los casos.
Indicador CY ON cuando un dgito de Wd haya cambiado de 9 a 0 durante
de acarreo la ejecucin.
OFF en el resto de los casos.

Precauciones El contenido de Wd debe ser BCD. Si no es BCD se producir un error y el


indicador de error se pondr en ON.

Ejemplos Operacin de ++B(594)


En el siguiente ejemplo, el contenido BCD de D00100 aumenta en 1 cada
ciclo mientras CIO 000000 est en ON.
Aumento cada ciclo mientras
CIO 000000 est en ON.

Wd: D00100 Wd: D00100

: Ejecucin de ++B(594)

Aumento Aumento Aumento Aumento

Operacin de @++B(594)
La variacin de diferencial ascendente se utiliza en el siguiente ejemplo, de
tal manera que el contenido de D00100 aumenta en 1 solamente cuando
CIO 000000 haya cambiado de OFF a ON.

Aumento slo en
@++B diferencial ascendente.
Wd: D00100 Wd: D00100

: Ejecucin de @++B(594)

Aumento Aumento

402
Instrucciones de aumento/disminucin Seccin 3-10

3-10-6 DOUBLE INCREMENT BCD: ++BL(595)


Empleo Aumenta el contenido hexadecimal de 8 dgitos de los canales especificados
en 1.

Smbolo de diagrama de
rels ++BL(595)

Wd Wd: Primer canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ++BL(595)
Se ejecuta una vez en el diferencial ascendente @++BL(595)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en BCD @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin ++BL(595) aade 1 al contenido BCD de 8 dgitos de Wd+1 y


Wd. El contenido de los canales especificados aumentar en 1 cada ciclo
mientras la condicin de ejecucin de ++BL(595) est en ON. Cuando se uti-

403
Instrucciones de aumento/disminucin Seccin 3-10

liza la variacin de diferencial ascendente de esta instruccin (@++BL(595)),


el contenido de los canales especificados aumenta slo cuando la condicin
de ejecucin haya cambiado de OFF a ON.

Wd+1 Wd Wd+1 Wd

El indicador de igual se pondr en ON si el resultado es 0000 0000 y el indi-


cador de acarreo se pondr en ON cuando un dgito cambie de 9 a 0.
Los indicadores de igual y de acarreo se pondrn en ON cuando el contenido
de Wd+1 cambie de 9999 9999 a 0000 0000.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de Wd+1 y Wd no es BCD.
error OFF en el resto de los casos.
Indicador de = ON si el resultado es 0000 0000 despus de la ejecucin.
igual OFF en el resto de los casos.
Indicador de CY ON cuando un dgito de Wd+1 o Wd haya cambiado de 9
acarreo a 0 durante la ejecucin.
OFF en el resto de los casos.

Precauciones El contenido de Wd+1 y Wd debe ser BCD. Si no es BCD se producir un


error y el indicador de error se pondr en ON.

Ejemplos Operacin de ++BL(595)


En el siguiente ejemplo, el contenido BCD de 8 dgitos de D00101 y D00100
aumenta en 1 cada ciclo mientras CIO 000000 est en ON.
Aumento cada ciclo mientras
CIO 000000 est en ON.
Wd+1: D00101 Wd: D00100 Wd+1: D00101 Wd: D00100

: Ejecucin de ++BL(595)

Aumento Aumento Aumento Aumento

Operacin de @++BL(595)
La variacin de diferencial ascendente se utiliza en el siguiente ejemplo, de
tal manera que el contenido BCD de D00101 y D00100 aumenta en 1 sola-
mente cuando CIO 000000 haya cambiado de OFF a ON.
Aumento slo en
diferencial ascendente.
@++BL
Wd+1: D00101 Wd: D00100 Wd+1: D00101 Wd: D00100

: Ejecucin de @++BL(595)

Aumento Aumento

404
Instrucciones de aumento/disminucin Seccin 3-10

3-10-7 DECREMENT BCD: B(596)


Empleo Disminuye el contenido hexadecimal de 4 dgitos del canal especificado en 1.

Smbolo de diagrama de
rels B(596)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON B(596)
Se ejecuta una vez en el diferencial ascendente @ B(596)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en BCD @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin B(596) resta 1 al contenido BCD de Wd. El canal especifi-


cado disminuir en 1 cada ciclo mientras la condicin de ejecucin de
B(596) est en ON. Cuando se utiliza la variacin de diferencial ascen-
dente de esta instruccin (@ B(596)), el canal especificado disminuye slo
cuando la condicin de ejecucin haya cambiado de OFF a ON.

405
Instrucciones de aumento/disminucin Seccin 3-10

Wd 1 Wd

El indicador de igual se pondr en ON si el resultado es 0000 y el indicador


de acarreo se pondr en ON cuando un dgito cambie de 0 a 9.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de Wd no es BCD.
error OFF en el resto de los casos.
Indicador de = ON si el contenido de Wd es 0000 despus de la
igual ejecucin.
OFF en el resto de los casos.
Indicador de CY ON cuando un dgito de Wd haya cambiado de 0 a 9
acarreo durante la ejecucin.
OFF en el resto de los casos.

Precauciones El contenido de Wd debe ser BCD. Si no es BCD se producir un error y el


indicador de error se pondr en ON.

Ejemplos Operacin de B(596)


En el siguiente ejemplo, el contenido BCD de D00100 disminuir en 1 cada
ciclo mientras CIO 000000 est en ON.
Disminucin cada ciclo mientras
CIO 000000 est en ON.
Wd: D00100 Wd: D00100
1

: Ejecucin de B(596)

Disminucin Disminucin Disminucin Disminucin

Operacin de @ B(596)
La variacin de diferencial ascendente se utiliza en el siguiente ejemplo, de
tal manera que el contenido BCD de D00100 disminuye en 1 solamente
cuando CIO 000000 haya cambiado de OFF a ON.

@ B Disminucin slo en
diferencial ascendente.
Wd: D00100 Wd: D00100
1

: Ejecucin de @ B(596)

Disminucin Disminucin

406
Instrucciones de aumento/disminucin Seccin 3-10

3-10-8 DOUBLE DECREMENT BCD: BL(597)


Empleo Disminuye el contenido hexadecimal de 8 dgitos de los canales especifica-
dos en 1.

Smbolo de diagrama de
rels BL(597)

Wd Wd: Primer canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BL(597)
Se ejecuta una vez en el diferencial ascendente @ BL(597)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en BCD @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin BL(597) resta 1 al contenido BCD de 8 dgitos de Wd+1 y


Wd. El contenido de los canales especificados disminuir en 1 cada ciclo
mientras la condicin de ejecucin de BL(597) est en ON. Cuando se uti-
liza la variacin de diferencial ascendente de esta instruccin (@ BL(597))

407
Instrucciones de aumento/disminucin Seccin 3-10

el contenido de los canales especificados disminuye slo cuando la condicin


de ejecucin haya cambiado de OFF a ON.

Wd+1 Wd Wd+1 Wd

El indicador de igual se pondr en ON si el resultado es 0000 0000 y el indi-


cador de acarreo se pondr en ON cuando un dgito cambie de 0 a 9.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de Wd+1 y Wd no es BCD.
error OFF en el resto de los casos.
Indicador de = ON si el resultado es 0000 0000 despus de la ejecucin.
igual OFF en el resto de los casos.
Indicador de CY ON cuando un dgito de Wd+1 o Wd haya cambiado de 0 a
acarreo 9 durante la ejecucin.
OFF en el resto de los casos.

Precauciones El contenido de Wd+1 y Wd debe ser BCD. Si no es BCD se producir un


error y el indicador de error se pondr en ON.

Ejemplos Operacin de BL(597)


En el siguiente ejemplo, el contenido BCD de 8 dgitos de D00101 y D00100
aumentar en 1 cada ciclo mientras CIO 000000 est en ON.

Disminucin cada ciclo mientras


CIO 000000 est en ON.
Wd+1: D00101 Wd: D00100 Wd+1: D00101 Wd: D00100
1

: Ejecucin de BL(597)

Disminucin Disminucin Disminucin Disminucin

Operacin de @ BL(597)
La variacin de diferencial ascendente se utiliza en el siguiente ejemplo, de
tal manera que el contenido BCD de D00101 y D00100 disminuye en 1 sola-
mente cuando CIO 000000 haya cambiado de OFF a ON.
Disminucin slo en
diferencial ascendente.
@ BL Wd+1: D00101 Wd: D00100 Wd+1: D00101 Wd: D00100
1

: Ejecucin de @ BL(597)

Disminucin Disminucin

408
Instrucciones matemticas de smbolos Seccin 3-11

3-11 Instrucciones matemticas de smbolos


Esta seccin describe las instrucciones matemticas de smbolos con las que
se realizan operaciones aritmticas en datos BCD o binarios.
Instruccin Nemnico Cdigo de Pgina
funcin
SIGNED BINARY ADD + 400 410
WITHOUT CARRY
DOUBLE SIGNED BINARY +L 401 412
ADD WITHOUT CARRY
SIGNED BINARY ADD WITH +C 402 414
CARRY
DOUBLE SIGNED BINARY +CL 403 416
ADD WITH CARRY
BCD ADD WITHOUT CARRY +B 404 418
DOUBLE BCD ADD WITHOUT +BL 405 419
CARRY
BCD ADD WITH CARRY +BC 406 421
DOUBLE BCD ADD WITH +BCL 407 423
CARRY
SIGNED BINARY SUBTRACT 410 424
WITHOUT CARRY
DOUBLE SIGNED BINARY L 411 426
SUBTRACT WITHOUT CARRY
SIGNED BINARY SUBTRACT C 412 430
WITH CARRY
DOUBLE SIGNED BINARY CL 413 432
SUBTRACT WITH CARRY
BCD SUBTRACT WITHOUT B 414 435
CARRY
DOUBLE BCD SUBTRACT BL 415 436
WITHOUT CARRY
BCD SUBTRACT WITH BC 416 440
CARRY
DOUBLE BCD SUBTRACT BCL 417 441
WITH CARRY
SIGNED BINARY MULTIPLY * 420 443
DOUBLE SIGNED BINARY *L 421 445
MULTIPLY
UNSIGNED BINARY *U 422 447
MULTIPLY
DOUBLE UNSIGNED BINARY *UL 423 449
MULTIPLY
BCD MULTIPLY *B 424 450
DOUBLE BCD MULTIPLY *BL 425 452
SIGNED BINARY DIVIDE / 430 454
DOUBLE SIGNED BINARY /L 431 456
DIVIDE
UNSIGNED BINARY DIVIDE /U 432 458
DOUBLE UNSIGNED BINARY /UL 433 460
DIVIDE
BCD DIVIDE /B 434 462
DOUBLE BCD DIVIDE /BL 435 464

409
Instrucciones matemticas de smbolos Seccin 3-11

3-11-1 SIGNED BINARY ADD WITHOUT CARRY: +(400)


Empleo Suma datos y/o constantes hexadecimales de 4 dgitos (un canal).

Smbolo de diagrama de
rels +(400)

Au Au: Canal de sumando

Ad Ad: Canal de nmero adicional

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON +(400)
Se ejecuta una vez en el diferencial ascendente @+(400)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Au Ad R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

410
Instrucciones matemticas de smbolos Seccin 3-11

Descripcin +(400) aade los valores binarios en Au y Ad y entrega el resultado a R.

Au (Binario con signo)

Ad (Binario con signo)


+
CY se pondr en
ON cuando exista CY R (Binario con signo)
un acarreo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la suma resulta en un acarreo.
acarreo OFF en el resto de los casos.
Indicador de OF ON cuando el resultado de aadir dos nmeros
desbordamiento positivos est en el rango de 8000 a FFFF hex.
OFF en el resto de los casos.
Indicador de UF ON cuando el resultado de sumar dos nmeros
subdesborda- negativos est en el rango de 0000 a 7FFF hex.
miento OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta +(400) el indicador de error se pondr en OFF.


Si como resultado de la suma el contenido de R es 0000 hex, el indicador de
igual se pondr en ON.
Si la suma resulta en un acarreo, el indicador de acarreo se pondr en ON.
Si el resultado de aadir dos nmeros positivos es negativo (en el rango de
8000 hasta FFFF hex), el indicador de desbordamiento se pondr en ON.
Si el resultado de aadir dos nmeros negativos es positivo (en el rango de
0000 hasta 7FFF hex), el indicador de subesbordamiento se pondr en ON.
Si como resultado de la suma el contenido del bit de la izquierda de R es 1, el
indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100 y D00110


se aaden como valores binarios con signo de 4 dgitos y el resultado se
entrega a D00120.

411
Instrucciones matemticas de smbolos Seccin 3-11

3-11-2 DOUBLE SIGNED BINARY ADD WITHOUT CARRY: +L(401)


Empleo Suma datos y/o constantes hexadecimales de 8 dgitos (dos canales).

Smbolo de diagrama de
rels +L(401)

Au Au: Primer canal de sumando

Ad Ad: Primer canal de nmero adicional

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON +L(401)
Se ejecuta una vez en el diferencial @+L(401)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Au Ad R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice IR0 hasta IR15
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

412
Instrucciones matemticas de smbolos Seccin 3-11

Descripcin +L(401) aade los valores binarios en Au y Au+1 y Ad y Ad+1 y entrega el


resultado a R.
Au+1 Au (Binario con signo)

Ad+1 Ad (Binario con signo)


+
CY se pondr
en ON cuando
exista un CY R+1 R (Binario con signo)
acarreo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la suma resulta en un acarreo.
acarreo OFF en el resto de los casos.
Indicador de OF ON cuando el resultado de aadir dos nmeros positi-
desbordamiento vos est en el rango de 80000000 a FFFFFFFF hex.
OFF en el resto de los casos.
Indicador de UF ON cuando el resultado de sumar dos nmeros negati-
subdesborda- vos est en el rango de 00000000 a 7FFFFFFF hex.
miento OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta +L(401) el indicador de error se pondr en OFF.


Si como resultado de la suma el contenido de R, R+1 es 00000000 hex, el
indicador de igual se pondr en ON.
Si la suma resulta en un acarreo, el indicador de acarreo se pondr en ON.
Si el resultado de aadir dos nmeros positivos es negativo (en el rango de
80000000 hasta FFFFFFFF hex, el indicador de desbordamiento se pondr
en ON.
Si el resultado de aadir dos nmeros negativos es positivo (en el rango de
00000000 hasta 7FFFFFFF hex), el indicador de subesbordamiento se pon-
dr en ON.
Si como resultado de la suma el contenido del bit de la izquierda de R+1 es 1,
el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON, D00100 y D00110 y D00111 y D00110 se
aaden como valores binarios con signo de 8 dgitos y el resultado se entrega
a D00120 y D00120.

413
Instrucciones matemticas de smbolos Seccin 3-11

3-11-3 SIGNED BINARY ADD WITH CARRY: +C(402)


Empleo Suma datos y/o constantes hexadecimales de 4 dgitos (un canal) con el indi-
cador de acarreo (CY).

Smbolo de diagrama de
rels +C(402)

Au Au: Canal de sumando

Ad Ad: Canal de nmero adicional

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON +C(402)
Se ejecuta una vez en el diferencial ascendente @+C(402)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Au Ad R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

414
Instrucciones matemticas de smbolos Seccin 3-11

Descripcin +C(402) aade los valores binarios en Au, Ad y CY y entrega el resultado a R.


Au (Binario con signo)

Ad (Binario con signo)

+ CY
CY se pondr
en ON cuando
exista un CY R (Binario con signo)
acarreo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de la suma es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la suma resulta en un acarreo.
acarreo OFF en el resto de los casos.
Indicador de OF ON cuando el resultado de aadir dos nmeros
desbordamiento positivos y CY est en el rango de 8000 a FFFF hex.
OFF en el resto de los casos.
Indicador de UF ON cuando el resultado de sumar dos nmeros
subdesborda- negativos y CY est en el rango de 0000 a 7FFF hex.
miento OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta +C(402) el indicador de error se pondr en OFF.


Si como resultado de la suma el contenido de R es 0000 hex, el indicador de
igual se pondr en ON.
Si la suma resulta en un acarreo, el indicador de acarreo se pondr en ON.
Si el resultado de aadir dos nmeros positivos y CY es negativo (en el rango
de 8000 hasta FFFF hex), el indicador de desbordamiento se pondr en ON.
Si el resultado de aadir dos nmeros negativos y CY es positivo (en el rango
de 0000 hasta 7FFF hex), el indicador de subesbordamiento se pondr en
ON.
Si como resultado de la suma el contenido del bit de la izquierda de R es 1, el
indicador negativo se pondr en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin de borrar aca-
rreo (CLC(041)).

Ejemplos Cuando CIO 000000 est en ON, D00100, D00110 y CY se aaden como
valores binarios con signo de 4 dgitos y el resultado se entrega a D00220.

415
Instrucciones matemticas de smbolos Seccin 3-11

3-11-4 DOUBLE SIGNED BINARY ADD WITH CARRY: +CL(403)


Empleo Aade datos y/o constantes hexadecimales de 8 dgitos (canal doble) con el
indicador de acarreo (CY).

Smbolo de diagrama de
rels +CL(403)

Au Au: Primer canal de sumando

Ad Ad: Primer canal de nmero adicional

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON +CL(403)
Se ejecuta una vez en el diferencial ascendente @+CL(403)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Au Ad R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

416
Instrucciones matemticas de smbolos Seccin 3-11

Descripcin +CL(403) aade los valores binarios en Au y Au+1 y Ad y Ad+1 y CY y


entrega el resultado a R.

Au+1 Au (Binario con signo)

Ad+1 Ad (Binario con signo)

+ CY
CY se pondr
en ON cuando
exista un CY R+1 R (Binario con signo)
acarreo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la operacin resulta en un acarreo.
acarreo OFF en el resto de los casos.
Indicador de OF ON cuando el resultado de aadir dos nmeros positi-
desbordamiento vos y CY est en el rango de 80000000 a FFFFFFFF
hex.
OFF en el resto de los casos.
Indicador de UF ON cuando el resultado de sumar dos nmeros negati-
subdesborda- vos y CY est en el rango de 00000000 a 7FFFFFFF
miento hex.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta +CL(403) el indicador de error se pondr en OFF.


Si como resultado de la suma el contenido de R, R+1 es 00000000 hex, el
indicador de igual se pondr en ON.
Si la suma resulta en un acarreo, el indicador de acarreo se pondr en ON.
Si el resultado de aadir dos nmeros positivos y CY es negativo (en el rango
de 80000000 hasta FFFFFFFF hex), el indicador de desbordamiento se pon-
dr en ON.
Si el resultado de aadir dos nmeros negativos y CY es positivo (en el rango
de 00000000 a 7FFFFFFF hex), el indicador de subesbordamiento se pondr
en ON.
Si como resultado de la suma el contenido del bit de la izquierda de R+1 es 1,
el indicador negativo se pondr en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin de borrar aca-
rreo (CLC(041)).

Ejemplos Cuando CIO 000000 est en ON, D00201, D00200, D00211, D00210 y CY se
aaden como valores binarios con signo de 8 dgitos y el resultado se entrega
a D00221 y D00220.

417
Instrucciones matemticas de smbolos Seccin 3-11

3-11-5 BCD ADD WITHOUT CARRY: +B(404)


Empleo Suma datos y/o constantes BCD de 4 dgitos (un canal).

Smbolo de diagrama de
rels +B(404)

Au Au: Canal de sumando

Ad Ad: Canal de nmero adicional

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON +B(404)
Se ejecuta una vez en el diferencial ascendente @+B(404)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Au Ad R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes 0000 a 9999 ---
(BCD)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

418
Instrucciones matemticas de smbolos Seccin 3-11

Descripcin +B(404) aade los valores BCD en Au y Ad y entrega el resultado a R.

Au (BCD)

+ Ad (BCD)

CY se pondr
en ON cuando CY R (BCD)
exista un
acarreo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Au no es BCD.
error ON cuando Ad no es BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la suma resulta en un acarreo.
acarreo OFF en el resto de los casos.

Precauciones Si Au o Ad no son BCD se genera un error y el indicador de error se pondr


en ON.
Si como resultado de la suma el contenido de R es 0000 hex, el indicador de
igual se pondr en ON.
Si una suma resulta en un acarreo, el indicador de acarreo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100 y D00110


se aaden como valores BCD de 4 dgitos y el resultado se entrega a
D00120.

3-11-6 DOUBLE BCD ADD WITHOUT CARRY: +BL(405)


Empleo Suma datos y/o constantes BCD de 8 dgitos (dos canales).

Smbolo de diagrama de
rels +BL(405)

Au Au: Primer canal de sumando

Ad Ad: Primer canal de nmero adicional

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON +BL(405)
Se ejecuta una vez en el diferencial ascendente @+BL(405)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

419
Instrucciones matemticas de smbolos Seccin 3-11

Especificaciones del
operando rea Au Ad R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #99999999 ---
(BCD)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin +BL(405) aade los valores BCD en Au y Au+1 y Ad y Ad+1 y entrega el


resultado a R, R+1.

Au +1 Au (BCD)

Ad+1 Ad (BCD)
+
CY se pondr
en ON cuando CY R+1 R (BCD)
exista un
acarreo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Au, Au +1 no son BCD.
error ON cuando Ad, Ad +1 no son BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la suma resulta en un acarreo.
acarreo OFF en el resto de los casos.

420
Instrucciones matemticas de smbolos Seccin 3-11

Precauciones Si Au, Au +1 o Ad, Ad +1 no son BCD se genera un error y el indicador de


error se pondr en ON.
Si como resultado de la suma el contenido de R, R+1 es 00000000 hex, el
indicador de igual se pondr en ON.
Si una suma resulta en un acarreo, el indicador de acarreo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00101 y D00100 y


D00111 y D00110 se aaden como valores BCD de 8 dgitos y el resultado se
entrega a D00121 y D00120.

3-11-7 BCD ADD WITH CARRY: +BC(406)


Empleo Aade datos y/o constantes BCD de 4 dgitos (canal nico) con el indicador
de acarreo (CY).

Smbolo de diagrama de
rels +BC(406)

Au Au: Canal de sumando

Ad Ad: Canal de nmero adicional

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON +BC(406)
Se ejecuta una vez en el diferencial ascendente @+BC(406)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Au Ad R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)

421
Instrucciones matemticas de smbolos Seccin 3-11

rea Au Ad R
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta 9999 ---
(BCD)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15
Descripcin +BC(406) aade los valores BCD en Au, Ad y CY y entrega el resultado a R.

Au (BCD)

Ad (BCD)

+ CY
CY se pondr
en ON cuando CY R (BCD)
exista un
acarreo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Au no es BCD.
error ON cuando Ad no es BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la suma resulta en un acarreo.
acarreo OFF en el resto de los casos.

Precauciones Si Au o Ad no son BCD se genera un error y el indicador de error se pondr


en ON.
Si como resultado de la suma el contenido de R es 0000 hex, el indicador de
igual se pondr en ON.
Si una suma resulta en un acarreo, el indicador de acarreo se pondr en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin de borrar aca-
rreo (CLC(041)).
Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100, D00110 y
CY se aaden como valores BCD de 4 dgitos y el resultado se entrega a
D00120.

422
Instrucciones matemticas de smbolos Seccin 3-11

3-11-8 DOUBLE BCD ADD WITH CARRY: +BCL(407)


Empleo Aade datos y/o constantes BCD de 8 dgitos (canal doble) con el indicador
de acarreo (CY).

Smbolo de diagrama de
rels +BCL(407)

Au Au: Primer canal de sumando

Ad Ad: Primer canal de nmero adicional

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON +BCL(407)
Se ejecuta una vez en el diferencial ascendente @+BCL(407)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Au Ad R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #99999999 ---
(BCD)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

423
Instrucciones matemticas de smbolos Seccin 3-11

Descripcin +BCL(407) aade los valores BCD en Au y Au+1 y Ad y Ad+1 y CY y entrega


el resultado a R, R+1.

Au +1 Au (BCD)

Ad+1 Ad (BCD)

+ CY
CY se pondr
en ON cuando CY R+1 R (BCD)
exista un
acarreo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Au, Au +1 no son BCD.
error ON cuando Ad, Ad +1 no son BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la suma resulta en un acarreo.
acarreo OFF en el resto de los casos.

Precauciones Si Au, Au +1 o Ad, Ad +1 no son BCD se genera un error y el indicador de


error se pondr en ON.
Si como resultado de la suma el contenido de R, R+1 es 00000000 hex, el
indicador de igual se pondr en ON.
Si una suma resulta en un acarreo, el indicador de acarreo se pondr en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin de borrar aca-
rreo (CLC(041)).

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00101, D00100,


D00111, D00110 y CY se aaden como valores BCD de 8 dgitos y el resul-
tado se entrega a D00121 y D00120.

3-11-9 SIGNED BINARY SUBTRACT WITHOUT CARRY: (410)


Empleo Resta datos y/o constantes hexadecimales de 4 dgitos (un canal).

Smbolo de diagrama de
rels (410)

Mi Mi: Canal de minuendo

Su Su: Canal de sustraendo

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON (410)
Se ejecuta una vez en el diferencial ascendente @(410)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

424
Instrucciones matemticas de smbolos Seccin 3-11

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Mi Su R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D0000 hasta D4095
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin (400) resta los valores binarios de Su de Mi y entrega el resultado a R.


Cuando el resultado es negativo, se entrega a R como complemento a 2.
(Consulte en 3-11-10 DOUBLE SIGNED BINARY SUBTRACT WITHOUT
CARRY: L(411) un ejemplo de manipulacin de complementos a 2).
Mi (Binario con signo)

Su (Binario con signo)



CY se pondr
en ON cuando CY R (Binario con signo)
exista un
acarreo

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la resta resulta en un acarreo negativo.
acarreo OFF en el resto de los casos.

425
Instrucciones matemticas de smbolos Seccin 3-11

Nombre Etiqueta Operacin


Indicador de OF ON cuando el resultado de restar un nmero negativo de
desborda- un nmero positivo est en el rango de 8000 a FFFF hex.
miento OFF en el resto de los casos.
Indicador de UF ON cuando el resultado de restar un nmero negativo de
subdesborda- un nmero positivo est en el rango de 0000 a 7FFF hex.
miento OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta (410) el indicador de error se pondr en OFF.


Si como resultado de la resta el contenido de R es 0000 hex, el indicador de
igual se pondr en ON.
Si la resta resulta en un acarreo negativo, el indicador de acarreo se pondr
en ON.
Si el resultado de restar un nmero negativo de un nmero positivo es nega-
tivo (en el rango de 8000 hasta FFFF hex), el indicador de desbordamiento se
pondr en ON.
Si el resultado de restar un nmero positivo de un nmero negativo es posi-
tivo (en el rango de 0000 hasta 7FFF hex), el indicador de subdesborda-
miento se pondr en ON.
Si como resultado de la resta el contenido del bit de la izquierda de R es 1, el
indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00110 se resta de


D00100 como valor binario con signo de 4 dgitos y el resultado se entrega a
D00120.

3-11-10 DOUBLE SIGNED BINARY SUBTRACT WITHOUT CARRY: L(411)


Empleo Resta datos y/o constantes hexadecimales de 8 dgitos (dos canales).

Smbolo de diagrama de
rels L(411)

Mi Mi: Canal de minuendo

Su Su: Canal de sustraendo

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON L(411)
Se ejecuta una vez en el diferencial ascendente @L(411)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

426
Instrucciones matemticas de smbolos Seccin 3-11

Especificaciones del
operando rea Mi Su R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice IR0 hasta IR15
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin L(411) resta los valores binarios de Su y Su+1 de Mi y Mi+1 y entrega el


resultado a R, R+1. Cuando el resultado es negativo, se entrega a R y R+1
como complemento a 2.
Mi+1 Mi (Binario con signo)

Su+1 Su (Binario con signo)

CY se pondr en
ON cuando exista CY R+1 R (Binario con signo)
un acarreo negativo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la resta resulta en un acarreo negativo.
acarreo OFF en el resto de los casos.
Indicador de OF ON cuando el resultado de restar un nmero negativo
desbordamiento de un nmero positivo est en el rango de 80000000 a
FFFFFFFF hex.
OFF en el resto de los casos.

427
Instrucciones matemticas de smbolos Seccin 3-11

Nombre Etiqueta Operacin


Indicador de UF ON cuando el resultado de restar un nmero positivo
subdesborda- de un nmero negativo est en el rango de 00000000 a
miento 7FFFFFFF hex.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta L(411) el indicador de error se pondr en OFF.


Si como resultado de la resta el contenido de R, R+1 es 00000000 hex, el
indicador de igual se pondr en ON.
Si la resta resulta en un acarreo negativo, el indicador de acarreo se pondr
en ON.
Si el resultado de restar un nmero negativo de un nmero positivo es nega-
tivo (en el rango de 80000000 hasta FFFFFFFF hex), el indicador de desbor-
damiento se pondr en ON.
Si el resultado de restar un nmero positivo de un nmero negativo es posi-
tivo (en el rango de 00000000 hasta 7FFFFFFF hex), el indicador de subdes-
bordamiento se pondr en ON.
Si como resultado de la resta el contenido del bit de la izquierda de R+1 es 1,
el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00111 y D00110


se restan de D00101 y D00100 como valores binarios con signo de 8 dgitos
y el resultado se entrega a D00121 y D00120.

Ejemplos Si el resultado de la resta es un nmero negativo (Mi<Su o Mi+1, Mi <Su+1,


Su), el resultado se entrega como el complemento a 2 y el indicador de aca-
rreo (CY) se pondr en ON para indicar que el resultado de la resta es nega-
tivo. Para convertir el complemento a 2 en un nmero verdadero es necesaria
una instruccin que reste el resultado de 0 utilizando el indicador de acarreo
(CY) como condicin de ejecucin.
Nota Complemento a 2
Un complemento a 2 es el valor obtenido de restar cada dgito binario de 1 y
de aadir uno al resultado. Por ejemplo, el complemento a 2 para 1101 se cal-
cula como sigue: 1111 (F hexadecimal) 1101 (D hexadecimal) + 1 (1 hexa-
decimal) = 0011 (3 hexadecimal). El complemento a 2 para 3039 (hexa-
decimal) se calcula como sigue: FFFF (hexadecimal) 3039 (hexadecimal) +
0001 (hexadecimal) CFC7 (hexadecimal). Por lo tanto, en el caso de un
valor hexadecimal de 4 dgitos, el complemento a 2 puede calcularse como
sigue: FFFF (hexadecimal) a (hexadecimal) + 0001 (hexadecimal) = b
(hexadecimal). Para obtener el nmero verdadero del complemento a 2 b
(hexadecimal): a (hexadecimal) = 10000 (hexadecimal) b (hexadecimal).
Por ejemplo, para obtener el nmero verdadero del complemento a 2 CFC7
(hexadecimal): 10000 (hexadecimal) CFC7 = 3039.

428
Instrucciones matemticas de smbolos Seccin 3-11

Ejemplo 1 Datos con signo Datos sin signo

FFFF hex. 1 65535 Nota 1. Ya que el indicador negativo est en ON, el resultado
) 0001 Hex ) +1 ) 1 (FFFE hex) es un valor negativo (complemento a 2) y es
por tanto 2.
2 Nota 1 65534 Nota 2 2. Ya que el indicador de acarreo est en OFF, el
FFFE Hex resultado (FFFE hex) es un valor positivo sin signo de
Indicador negativo ON 65534.
Indicador de acarreo OFF

Ejemplo 2 Datos con signo Datos sin signo

FFFD Hex 3 65533 3. Ya que el indicador negativo est en ON, el resultado


) FFFF hex. ) 1 ) 65535 (FFFE hex) es un valor negativo (complemento a 2) y es
por tanto
FFFE Hex 2 Nota 3 65534 Nota 4 4. Ya que el indicador de acarreo est en ON, el resultado
(FFFE hex) es un valor negativo (complemento a 2) y se
Indicador negativo ON convierte en 2 cuando se convierte a un valor real.
Indicador de acarreo OFF

Ejemplo de programa 20F55A10 B8A360E3 = 97AE06D3.


En este ejemplo, el valor binario de 8 dgitos de CIO 0121 y CIO 0120 se
resta del valor de CIO 0201 y CIO 0200, y el resultado se entrega en binario
de 8 dgitos a D00101 y D00100. Si el resultado es negativo la instruccin en
(2) se ejecutar, y el resultado real se entregar a D00101 y D00100.
000000
RSET
002100

L (1)
0200
0120
D00100

CY
L (2)
#00000000
D00100

D00100
CY
SET ""elemento
de pantalla
002100

Resta en 1
Mi+1: CIO 0201 Mi: CIO 0200
2 0 F 5 5 A 1 0

Su+1: CIO 0121 Su: CIO 0120


B 8 A 3 6 0 E 3

CY R+1: D00101 R+1: D00100


1 6 8 5 1 F 9 2 D

El indicador de acarreo (CY) est en ON, as que el resultado se resta de


0000 0000 para obtener el nmero real.

429
Instrucciones matemticas de smbolos Seccin 3-11

Resta en 2
0 0 0 0 0 0 0 0

Su+1: D00101 Su: D00100


6 8 5 1 F 9 2 D

CY R+1: D00101 R+1: D00100


1 9 7 A E 0 6 D 3

Resultado final de la resta


Mi+1: CIO 0201 Mi: CIO 0200
2 0 F 5 5 A 1 0

Su+1: D00101 Su: D00100


6 8 5 1 F 9 2 D

CY R+1: D00101 R+1: D00100


1 9 7 A E 0 6 D 3

El indicador de acarreo (CY) se pondr en ON, as que el nmero real es


97AE06D3. Ya que el contenido de D00101 y D00100 es negativo, se utiliza
CY para poner en ON CIO 002100 con el fin de indicarlo.

3-11-11 SIGNED BINARY SUBTRACT WITH CARRY: C(412)


Empleo Resta datos y/o constantes hexadecimales de 4 dgitos (canal nico) con el
indicador de acarreo (CY).

Smbolo de diagrama de
rels C(412)

Mi Mi: Canal de minuendo

Su Su: Canal de sustraendo

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON C(412)
Se ejecuta una vez en el diferencial @C(412)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Mi Su R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959

430
Instrucciones matemticas de smbolos Seccin 3-11

rea Mi Su R
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin C(412) resta los valores binarios de Su y CY de Mi y entrega el resultado a


R. Cuando el resultado es negativo, se entrega a R como complemento a 2.

Mi (Binario con signo)

Su (Binario con signo)

CY
CY se pondr
en ON cuando
exista un
acarreo CY R (Binario con signo)
negativo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado de la resta es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la resta resulta en un acarreo negativo.
acarreo OFF en el resto de los casos.
Indicador de OF ON cuando el resultado de restar un nmero negativo y
desbordamiento CY de un nmero positivo est en el rango de 8000 a
FFFF hex.
OFF en el resto de los casos.
Indicador de UF ON cuando el resultado de restar un nmero positivo y
subdesborda- CY de un nmero negativo est en el rango de 0000 a
miento 7FFF hex.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

431
Instrucciones matemticas de smbolos Seccin 3-11

Precauciones Cuando se ejecuta C(412) el indicador de error se pondr en OFF.


Si como resultado de la resta el contenido de R es 0000 hex, el indicador de
igual se pondr en ON.
Si la resta resulta en un acarreo negativo, el indicador de acarreo se pondr
en ON.
Si el resultado de restar un nmero negativo y CY de un nmero positivo es
negativo (en el rango de 8000 hasta FFFF hex), el indicador de desborda-
miento se pondr en ON.
Si el resultado de restar un nmero positivo y CY de un nmero negativo es
positivo (en el rango de 0000 hasta 7FFF hex), el indicador de subdesborda-
miento se pondr en ON.
Si como resultado de la resta el contenido del bit de la izquierda de R es 1, el
indicador negativo se pondr en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin de borrar aca-
rreo (CLC(041)).

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00110 y CY se


restan de D00100 como valor binario con signo de 4 dgitos y el resultado se
entrega a D00120.

3-11-12 DOUBLE SIGNED BINARY SUBTRACT WITH CARRY: CL(413)


Empleo Resta datos y/o constantes hexadecimales de 8 dgitos (canal doble) con el
indicador de acarreo (CY).

Smbolo de diagrama de
rels CL(413)

Mi Mi: Canal de minuendo

Su Su: Canal de sustraendo

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CL(413)
Se ejecuta una vez en el diferencial @CL(413)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Mi Su R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510

432
Instrucciones matemticas de smbolos Seccin 3-11

rea Mi Su R
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin CL(413) resta los valores binarios de Su y Su+1 y CY de Mi y Mi+1 y


entrega el resultado a R, R+1. Cuando el resultado es negativo, se entrega a
R y R+1 como complemento a 2.
Mi+1 Mi (Binario con signo)

Su+1 Su (Binario con signo)

CY
CY se pondr
en ON cuando
exista un
acarreo CY R+1 R (Binario con signo)
negativo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando el resultado es un acarreo negativo.
acarreo OFF en el resto de los casos.
Indicador de OF ON cuando el resultado de restar un nmero negativo y
desborda- CY de un nmero positivo est en el rango de 80000000
miento a FFFFFFFF hex.
OFF en el resto de los casos.
Indicador de UF ON cuando el resultado de restar un nmero positivo y
subdesborda- CY de un nmero negativo est en el rango de
miento 00000000 a 7FFFFFFF hex.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

433
Instrucciones matemticas de smbolos Seccin 3-11

Precauciones Cuando se ejecuta CL(413) el indicador de error se pondr en OFF.


Si como resultado de la resta el contenido de R, R+1 es 00000000 hex, el
indicador de igual se pondr en ON.
Si la resta resulta en un acarreo negativo, el indicador de acarreo se pondr
en ON.
Si el resultado de restar un nmero negativo y CY de un nmero positivo es
negativo (en el rango de 80000000 hasta FFFFFFFF hex), el indicador de
desbordamiento se pondr en ON.
Si el resultado de restar un nmero positivo y CY de un nmero negativo es
positivo (en el rango de 00000000 hasta 7FFFFFFF hex), el indicador de sub-
desbordamiento se pondr en ON.
Si como resultado de la resta el contenido del bit de la izquierda de R+1 es 1,
el indicador negativo se pondr en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin de borrar aca-
rreo (CLC(041)).

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00111, D00110 y


CY se restan de D00101 y D00100 como valores binarios con signo de 8 dgi-
tos y el resultado se entrega a D00121 y D00120.

Si el resultado de la resta es un nmero negativo (Mi<Su o Mi+1, Mi <Su+1,


Su), el resultado se entrega como complemento a 2. El indicador de acarreo
(CY) se pondr en ON. Para convertir el complemento a 2 en un nmero ver-
dadero es necesario un programa que reste el resultado de 0 como condicin
de entrada para el indicador de acarreo (CY). El indicador de acarreo se pon-
dr en ON lo que indica que el resultado de la resta es negativo.
Nota Complemento a 2
Un complemento a 2 es el valor obtenido de restar cada dgito binario de 1 y
de aadir uno al resultado.
Ejemplo: El complemento a 2 para el nmeto binario 1101 se calcula como
sigue:
1111 (F hex) 1101 (D hex) + 1 (1 hex) = 0011 (3 hex).
Ejemplo: El complemento a 2 para el nmero hexadecimal de 4 dgitos 3039
se calcula como sigue:
FFFF hex 3039 hex + 0001 hex = CFC7 hex.
Correspondientemente, el complemento a 2 para el valor hexadecimal de 4
dgitos "a" se calcula como sigue:
FFFF hex a hex + 0001 hex = b hex.
Y para obtener el nmero verdadero "a" para el complemento a 2 "b" hexade-
cimal:
a hex + 10000 hex b hex.
Ejemplo: Para obtener el nmero verdadero del complemento a 2 CFC&
hexadecimal:
10000 hex CFC7 hex = 3039 hex.

434
Instrucciones matemticas de smbolos Seccin 3-11

3-11-13 BCD SUBTRACT WITHOUT CARRY: B(414)


Empleo Resta datos y/o constantes BCD de 4 dgitos (un canal).

Smbolo de diagrama de
rels B(414)

Mi Mi: Canal de minuendo

Su Su: Canal de sustraendo

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON B(414)
Se ejecuta una vez en el diferencial ascendente @B(414)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Mi Su R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes 0000 a 9999 ---
(BCD)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

435
Instrucciones matemticas de smbolos Seccin 3-11

Descripcin B(414) resta los valores BCD de Su de Mi y entrega el resultado a R. Si el


resultado de la resta es negativo, el resultado se entrega como un comple-
mento a 10.

Mi (BCD)

Su (BCD)

CY se pondr
en ON cuando CY R (BCD)
exista un acarreo
negativo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Mi no es BCD.
error ON cuando Su no es BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la resta resulta en un acarreo negativo.
acarreo OFF en el resto de los casos.

Precauciones Si Mi y/o Su no son BCD se genera un error y el indicador de error se pondr


en ON.
Si como resultado de la resta el contenido de R es 0000 hex, el indicador de
igual se pondr en ON.
Si una suma resulta en un acarreo negativo, el indicador de acarreo se pon-
dr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00110 se resta de


D00100 como valor BCD de 4 dgitos y el resultado se entrega a D00120.

3-11-14 DOUBLE BCD SUBTRACT WITHOUT CARRY: BL(415)


Empleo Resta datos y/o constantes BCD de 8 dgitos (dos canales).

Smbolo de diagrama de
rels BL(415)

Mi Mi: Primer canal de minuendo

Su Su: Primer canal de sustraendo

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BL(415)
Se ejecuta una vez en el diferencial ascendente @BL(415)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

436
Instrucciones matemticas de smbolos Seccin 3-11

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Mi Su R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #99999999 ---
(BCD)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BL(415) resta los valores binarios de Su y Su+1 de Mi y Mi+1 y entrega el


resultado a R, R+1. Cuando el resultado es negativo, se entrega a R y R+1
como complemento a 10.
Mi +1 Mi (BCD)

Su+1 Su (BCD)

CY se pondr en
ON cuando CY R+1 R (BCD)
exista un acarreo
negativo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Mi y/o Mi +1 no son BCD.
error ON cuando Su y/o Su +1 no son BCD.
OFF en el resto de los casos.

437
Instrucciones matemticas de smbolos Seccin 3-11

Nombre Etiqueta Operacin


Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la resta resulta en un acarreo negativo.
acarreo OFF en el resto de los casos.

Precauciones Si Mi, Mi +1 y/o Su, Su +1 no son BCD se genera un error y el indicador de


error se pondr en ON.
Si como resultado de la resta el contenido de R, R+1 es 00000000 hex, el
indicador de igual se pondr en ON.
Si una suma resulta en un acarreo negativo, el indicador de acarreo se pon-
dr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00111 y D00110


se restan de D00101 y D00100 como valores BCD con signo de 8 dgitos y el
resultado se entrega a D00121 y D00120.

Si el resultado de la resta es un nmero negativo (Mi<Su o Mi+1, Mi <Su+1,


Su), el resultado se entrega como complemento a 10. El indicador de acarreo
(CY) se pondr en ON. Para convertir el complemento a 10 en un nmero
verdadero es necesario un programa que reste el resultado de 0 como condi-
cin de entrada para el indicador de acarreo (CY). El indicador de acarreo se
pondr en ON lo que indica que el resultado de la resta es negativo.
Nota Complemento a 10
Un complemento a 10 es el valor obtenido de restar cada dgito de 9 y de
aadir uno al resultado. Por ejemplo, el complemento a 10 para 7556 se cal-
cula como sigue: 9999 7556 + 1 = 2444. Para un nmero de cuatro dgitos,
el complemento a 10 de A es 9999 A + 1 = B. Para obtener el valor real del
complemento a 10 B: A = 10000 B. Por ejemplo, para obtener el nmero
verdadero del complemento a 10 2444: 10000 2444 = 7556.

Ejemplo de programa 9.583.960 17.072.641 = 7.488.681.


En este ejemplo, el contenido BCD de 8 dgitos de CIO 0121 y CIO 0120 se
resta del contenido de CIO 0201 y CIO 0200, y el resultado se entrega en
BCD de 8 dgitos a D00101 y D00100. El resultado es negativo, as que la
instruccin en (2) se ejecutar, y el resultado real se entregar entonces a
D00101 y D00100.

438
Instrucciones matemticas de smbolos Seccin 3-11

000000
RSET
002100

BL (1)
0200
0120
D00100

CY
BL (2)
#00000000

D00100
D00100
CY
SET ""elemento
de pantalla
002100

Resta en 1
Mi+1: CIO 0201 Mi: CIO 0200
0 9 5 8 3 9 6 0

Su+1: CIO 0121 Su: CIO 0120


1 7 0 7 2 6 4 1

09583960 + (100000000 17072641)

CY R+1: D00101 R+1: D00100


1 9 2 5 1 1 3 1 9

El indicador de acarreo (CY) est en ON, as que el resultado se resta de


0000 0000.
Resta en 2
0 0 0 0 0 0 0 0

Su+1: D00101 Su: D00100


9 2 5 1 1 3 1 9

00000000 + (100000000 92511319)


CY R+1: D00101 R+1: D00100
1 0 7 4 8 8 6 8 1

Resultado final de la resta


Mi+1: CIO 0201 Mi: CIO 0200
2 0 F 5 5 A 1 0

Su+1: D00101 Su: D00100


6 8 5 1 F 9 2 D

CY R+1: D00101 R+1: D00100


1 0 7 4 8 8 6 8 1

El indicador de acarreo (CY) se pondr en ON, as que el nmero real


es 7.488.681. Ya que el contenido de D00101 y D00100 es negativo, se uti-
liza CY para poner en ON CIO 002100 con el fin de indicarlo.

439
Instrucciones matemticas de smbolos Seccin 3-11

3-11-15 BCD SUBTRACT WITH CARRY: BC(416)


Empleo Resta datos y/o constantes BCD de 4 dgitos (canal nico) con el indicador de
acarreo (CY).

Smbolo de diagrama de
rels BC(416)

Mi Mi: Canal de minuendo

Su Su: Canal de sustraendo

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BC(416)
Se ejecuta una vez en el diferencial ascendente @BC(416)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Mi Su R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta D32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #9999 ---
(BCD)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

440
Instrucciones matemticas de smbolos Seccin 3-11

Descripcin BC(416) resta los valores BCD de Su y CY de Mi y entrega el resultado a R.


Cuando el resultado es negativo, se entrega a R como complemento a 2.

Mi (BCD)

Su (BCD)

CY

CY se pondr en
ON cuando CY R (BCD)
exista un acarreo
negativo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Mi no es BCD.
error ON cuando Su no es BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la resta resulta en un acarreo negativo.
acarreo OFF en el resto de los casos.

Precauciones Si Mi y/o Su no son BCD se genera un error y el indicador de error se pondr


en ON.
Si como resultado de la resta el contenido de R es 0000 hex, el indicador de
igual se pondr en ON.
Si una suma resulta en un acarreo negativo, el indicador de acarreo se pon-
dr en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin de borrar aca-
rreo (CLC(041)).

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00110 y CY se


restan de D00100 como valores BCD de 4 dgitos y el resultado se entrega a
D00120.

3-11-16 DOUBLE BCD SUBTRACT WITH CARRY: BCL(417)


Empleo Resta datos y/o constantes BCD de 8 dgitos (canal doble) con el indicador
de acarreo (CY).

Smbolo de diagrama de
rels BCL(417)

Mi Mi: Primer canal de minuendo

Su Su: Primer canal de sustraendo

R R: Primer canal de resultado

441
Instrucciones matemticas de smbolos Seccin 3-11

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BCL(417)
Se ejecuta una vez en el diferencial ascendente @BCL(417)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Mi Su R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #99999999 ---
(BCD)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BCL(417) resta los valores BCD de Su, Su+1 y CY de Mi y Mi+1 y entrega el
resultado a R, R+1. Cuando el resultado es negativo, se entrega a R y R+1
como complemento a 10.

Mi +1 Mi (BCD)

Su+1 Su (BCD)

CY

CY se pondr en
ON cuando exista CY R+1 R (BCD)
un acarreo
negativo.

442
Instrucciones matemticas de smbolos Seccin 3-11

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Mi y/o Mi +1 no son BCD.
error ON cuando Su y/o Su +1 no son BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON cuando la resta resulta en un acarreo negativo.
acarreo OFF en el resto de los casos.

Precauciones Si Mi, Mi +1 y/o Su, Su +1 no son BCD se genera un error y el indicador de


error se pondr en ON.
Si como resultado de la resta el contenido de R, R+1 es 00000000 hex, el
indicador de igual se pondr en ON.
Si una resta resulta en un acarreo negativo, el indicador de acarreo se pondr
en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin de borrar aca-
rreo (CLC(041)).

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00111, D00110 y


CY se restan de D00101 y D00100 como valores BCD con signo de 8 dgitos
y el resultado se entrega a D00121 y D00120.

Si el resultado de la resta es un nmero negativo (Mi<Su o Mi+1, Mi <Su+1,


Su), el resultado se entrega como complemento a 10. El indicador de acarreo
(CY) se pondr en ON. Para convertir el complemento a 10 en un nmero
verdadero es necesario un programa que reste el resultado de 0 como condi-
cin de entrada para el indicador de acarreo (CY). El indicador de acarreo se
pondr en ON lo que indica que el resultado de la resta es negativo.
Nota Complemento a 10
Un complemento a 10 es el valor obtenido de restar cada dgito de 9 y de
aadir uno al resultado. Por ejemplo, el complemento a 10 para 7556 se cal-
cula como sigue: 9999 7556 + 1 = 2444. Para un nmero de cuatro dgitos,
el complemento a 10 de A es 9999 A + 1 = B. Para obtener el valor real del
complemento a 10 B: A = 10000 B. Por ejemplo, para obtener el nmero
verdadero del complemento a 10 2444: 10000 2444 = 7556.

3-11-17 SIGNED BINARY MULTIPLY: *(420)


Empleo Multiplica datos y/o constantes hexadecimales con signo de 4 dgitos.

Smbolo de diagrama de
rels *(420)

Md Md: Canal de multiplicando

Mr Mr: Canal de multiplicador

R R: Canal de resultado

443
Instrucciones matemticas de smbolos Seccin 3-11

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON *(420)
Se ejecuta una vez en el diferencial ascendente @*(420)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Md Mr R
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta
T4094
rea Contador C0000 hasta C4095 C0000 hasta
C4094
rea DM D00000 hasta D32767 D00000 hasta
D32766
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32766
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin *(420) multiplica los valores binarios con signo de Md y Mr y entrega el resul-
tado a R, R+1.

Md (Binario con signo)

Mr (Binario con signo)

R +1 R (Binario con signo)

444
Instrucciones matemticas de smbolos Seccin 3-11

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta *(420) el indicador de error se pondr en OFF.


Si como resultado de la multiplicacin el contenido de R es 0000 hex, el indi-
cador de igual se pondr en ON.
Si como resultado de la multiplicacin el contenido del bit de la izquierda de
R+1 y R es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100 y D00110


se multiplican como valores hexadecimales con signo de 4 dgitos y el resul-
tado se entrega a D00120.

3-11-18 DOUBLE SIGNED BINARY MULTIPLY: *L(421)


Empleo Multiplica datos y/o constantes hexadecimales con signo de 8 dgitos.

Smbolo de diagrama de
rels *L(421)

Md Md: Primer canal de multiplicando

Mr Mr: Primer canal de multiplicador

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON *L(421)
Se ejecuta una vez en el diferencial ascendente @*L(421)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Md Mr R
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta
CIO 6140
rea de Trabajo W000 hasta W510 W000 hasta W508
rea de bit en Espera H000 hasta H510 H000 hasta H508
rea Bit Auxiliar A000 hasta A958 A448 hasta A956

445
Instrucciones matemticas de smbolos Seccin 3-11

rea Md Mr R
rea Temporizador T0000 hasta T4094 T0000 hasta
T4092
rea Contador C0000 hasta C4094 C0000 hasta
C4092
rea DM D00000 hasta D32766 D00000 hasta
D32764
rea EM sin banco E00000 hasta E32766 E00000 hasta
E32764
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta
(n = 0 a C) En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin *L(421) multiplica los valores binarios con signo de Md y Md+1 y Mr y Mr+1 y
entrega el resultado a R, R+1, R+2 y R+3.

Md + 1 Md (Binario con signo)

Mr + 1 Mr (Binario con signo)

R +3 R +2 R+1 R (Binario con signo)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta *L(421) el indicador de error se pondr en OFF.


Si como resultado de la multiplicacin el contenido de R, R+1, R+2, R+3 es
0000 hex, el indicador de igual se pondr en ON.
Si como resultado de la multiplicacin el contenido del bit de la izquierda de
R+1 es 1, el indicador negativo se pondr en ON.

446
Instrucciones matemticas de smbolos Seccin 3-11

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100, D00110,


D00111 y D00110 se multiplican como valores hexadecimales con signo de 8
dgitos y el resultado se entrega a D00121 y D00120.

3-11-19 UNSIGNED BINARY MULTIPLY: *U(422)


Empleo Multiplica datos y/o constantes hexadecimales sin signo de 4 dgitos.

Smbolo de diagrama de
rels *U(422)

Md Md: Canal de multiplicando

Mr Mr: Canal de multiplicador

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON *U(422)
Se ejecuta una vez en el diferencial ascendente @*U(422)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Md Mr R
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta
T4094
rea Contador C0000 hasta C4095 C0000 hasta
C4094
rea DM D00000 hasta D32767 D00000 hasta
D32766
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32766
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

447
Instrucciones matemticas de smbolos Seccin 3-11

rea Md Mr R
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_ 32767
(n = 0 a C)
Constantes #0000 a #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin *(420) multiplica los valores binarios de Md y Mr y entrega el resultado a R,


R+1.

Md (Binario sin signo)

Mr (Binario sin signo)

R +1 R (Binario sin signo)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta *U(422) el indicador de error se pondr en OFF.


Si como resultado de la multiplicacin el contenido de R, R+1 es 0000 hex, el
indicador de igual se pondr en ON.
Si como resultado de la multiplicacin el contenido del bit de la izquierda de
R+1 es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100 y D00110


se multiplican como valores binarios sin signo de 4 dgitos y el resultado se
entrega a D00121 y D00120.

448
Instrucciones matemticas de smbolos Seccin 3-11

3-11-20 DOUBLE UNSIGNED BINARY MULTIPLY: *UL(423)


Empleo Multiplica datos y/o constantes hexadecimales sin signo de 8 dgitos.

Smbolo de diagrama de
rels *UL(423)

Md Md: Primer canal de multiplicando

Mr Mr: Primer canal de multiplicador

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON *UL(423)
Se ejecuta una vez en el diferencial @*UL(423)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Md Mr R
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta
CIO 6140
rea de Trabajo W000 hasta W510 W000 hasta W508
rea de bit en Espera H000 hasta H510 H000 hasta H508
rea Bit Auxiliar A000 hasta A958 A448 hasta A956
rea Temporizador T0000 hasta T4094 T0000 hasta
T4092
rea Contador C0000 hasta C4094 C0000 hasta
C4092
rea DM D00000 hasta D32766 D00000 hasta
D32764
rea EM sin banco E00000 hasta E32766 E00000 hasta
E32764
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta
(n = 0 a C) En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #FFFFFFFF ---
(Binario)
Registros de datos ---

449
Instrucciones matemticas de smbolos Seccin 3-11

rea Md Mr R
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin *UL(423) multiplica los valores binarios sin signo de Md y Md+1 y Mr y Mr+1 y
entrega el resultado a R, R+1, R+2 y R+3.

Md + 1 Md (Binario sin signo)

Mr + 1 Mr (Binario sin signo)

R +3 R +2 R+1 R (Binario sin signo)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta *UL(423) el indicador de error se pondr en OFF.


Si como resultado de la multiplicacin el contenido de R, R+1, R+2, R+3 es
0000 hex, el indicador de igual se pondr en ON.
Si como resultado de la multiplicacin el contenido del bit de la izquierda de
R+3 es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100, D00110,


D00111 y D00110 se multiplican como valores binarios con signo de 8 dgitos
y el resultado se entrega a D00123, D00122, D00121, y D00120.

3-11-21 BCD MULTIPLY: *B(424)


Empleo Multiplica datos y/o constantes BCD de 4 dgitos (canal nico).

Smbolo de diagrama de
rels *B(424)

Md Md: Canal de multiplicando

Mr Mr: Canal de multiplicador

R R: Canal de resultado

450
Instrucciones matemticas de smbolos Seccin 3-11

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON *B(424)
Se ejecuta una vez en el diferencial ascendente @*B(424)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Md Mr R
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta
T4094
rea Contador C0000 hasta C4095 C0000 hasta
C4094
rea DM D00000 hasta D32767 D00000 hasta
D32766
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32766
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #9999 ---
(BCD)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin *B(424) multiplica los valores BCD de Md y Mr y entrega el resultado a R,


R+1.

Md (BCD)

Mr (BCD)

R +1 R (BCD)

451
Instrucciones matemticas de smbolos Seccin 3-11

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Md no es BCD.
error ON cuando Mr no es BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.

Precauciones Si Md y/o Mr no son BCD se genera un error y el indicador de error se pondr


en ON.
Si como resultado de la multiplicacin el contenido de R, R+1 es 0000 hex, el
indicador de igual se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100 y D00110


se multiplican como valores BCD de 4 dgitos y el resultado se entrega a
D00121 y D00120.

3-11-22 DOUBLE BCD MULTIPLY: *BL(425)


Empleo Multiplica datos y/o constantes BCD de 8 dgitos (dos canales).

Smbolo de diagrama de
rels *BL(425)

Md Md: Primer canal de multiplicando

Mr Mr: Primer canal de multiplicador

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON *BL(425)
Se ejecuta una vez en el diferencial ascendente @*BL(425)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Md Mr R
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta
CIO 6140
rea de Trabajo W000 hasta W510 W000 hasta W508
rea de bit en Espera H000 hasta H510 H000 hasta H508
rea Bit Auxiliar A000 hasta A958 A448 hasta A956
rea Temporizador T0000 hasta T4094 T0000 hasta T4092
rea Contador C0000 hasta C4094 C0000 hasta
C4092

452
Instrucciones matemticas de smbolos Seccin 3-11

rea Md Mr R
rea DM D00000 hasta D32766 D00000 hasta
D32764
rea EM sin banco E00000 hasta E32766 E00000 hasta
E32764
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta
(n = 0 a C) En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #99999999 ---
(BCD)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin *BL(425) multiplica los valores BCD de Md y Md+1 y Mr y Mr+1 y entrega el


resultado a R, R+1, R+2 y R+3.

Md + 1 Md (BCD)

Mr + 1 Mr (BCD)

R +3 R +2 R+1 R (BCD)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Md y/o Md +1 no son BCD.
error ON cuando Mr y/o Mr +1 no son BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.

Precauciones Si Md, Md+1 y/o Mr, Mr+1 no son BCD se genera un error y el indicador de
error se pondr en ON.
Si como resultado de la multiplicacin el contenido de R, R+1, R+2, R+3 es
00000000 hex, el indicador de igual se pondr en ON.

453
Instrucciones matemticas de smbolos Seccin 3-11

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00101, D00100,


D00111, y D00110 se multiplican como valores BCD con signo de 8 dgitos y
el resultado se entrega a D00123, D00122, D00121, y D00120.

3-11-23 SIGNED BINARY DIVIDE: /(430)


Empleo Divide datos y/o constantes hexadecimales de 4 dgitos (un canal).
Smbolo de diagrama de
rels /(430)

Dd Dd: Canal de dividendo

Dr Dr: Canal de divisor

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON /(430)
Se ejecuta una vez en el diferencial ascendente @/(430)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Dd Dr R
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta
W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta
T4094
rea Contador C0000 hasta C4095 C0000 hasta
C4094
rea DM D00000 hasta D32767 D00000 hasta
D32766
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32766
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

454
Instrucciones matemticas de smbolos Seccin 3-11

rea Dd Dr R
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #FFFF #0001 hasta ---
(Binario) #FFFF
(Binario)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin /(430) divide los valores binarios con signo (16 bits) de Dd por los de Dr y
entrega el resultado a R, R+1. El cociente se coloca en R y el resto en R+1.

Dd (Binario con signo)

Dr (Binario con signo)

R +1 R (Binario con signo)

Resto Cociente

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando el resultado es 0.
error OFF en el resto de los casos.
Indicador de = ON cuando como resultado de la divisin R es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando el contenido de Dr es 0, se generar un error y el indicador de error


se pondr en ON.
Si como resultado de la divisin el contenido de R es 0000 hex, el indicador
de igual se pondr en ON.
Si como resultado de la divisin el contenido del bit de la izquierda de R es 1,
el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100 se divide


por D00110 como valor binario con signo de 4 dgitos y el cociente se entrega
a D00120 y el resto a D00121.

455
Instrucciones matemticas de smbolos Seccin 3-11

3-11-24 DOUBLE SIGNED BINARY DIVIDE: /L(431)


Empleo Divide datos y/o constantes hexadecimales de 8 dgitos (dos canales).

Smbolo de diagrama de
rels /L(431)

Dd Dd: Primer canal de dividendo

Dr Dr: Primer canal de divisor

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON /L(431)
Se ejecuta una vez en el diferencial ascendente @/L(431)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Dd Dr R
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta
CIO 6140
rea de Trabajo W000 hasta W510 W000 hasta
W508
rea de bit en Espera H000 hasta H510 H000 hasta H508
rea Bit Auxiliar A000 hasta A958 A448 hasta A956
rea Temporizador T0000 hasta T4094 T0000 hasta
T4092
rea Contador C0000 hasta C4094 C0000 hasta
C4092
rea DM D00000 hasta D32766 D00000 hasta
D32764
rea EM sin banco E00000 hasta E32766 E00000 hasta
E32764
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta
(n = 0 a C) En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #00000001 hasta ---
#FFFFFFFF #FFFFFFFF
(Binario) (Binario)
Registros de datos ---

456
Instrucciones matemticas de smbolos Seccin 3-11

rea Dd Dr R
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin /L(431) divide los valores binarios con signo de Dd y Dd+1 por los de Dr y
Dr+1 y entrega el resultado a R, R+1, R+2, y R+3. El cociente se entrega a R
y R+1 y el resto se entrega a R+2 y R+3.

Dd + 1 Dd (Binario con signo)

Dr + 1 Dr (Binario con signo)

R +3 R +2 R+1 R (Binario con signo)

Resto Cociente

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando el resultado es 0.
error OFF en el resto de los casos.
Indicador de = ON cuando como resultado de la divisin R+1, R es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R+1, R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando el resto del resultado, R+3, R+2 es 0, el indicador de error se pondr
en ON.
Si como resultado de la divisin el contenido de R, R+1 es 00000000 hex, el
indicador de igual se pondr en ON.
Si como resultado de la divisin el contenido del bit de la izquierda de R+1, R
es 1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00101 y D00100


se dividen por D00111 y D00110 como valores hexadecimales con signo de 8
dgitos y el cociente se entrega a D00121 y D00120 y el resto a D00123 y
D00122.

457
Instrucciones matemticas de smbolos Seccin 3-11

3-11-25 UNSIGNED BINARY DIVIDE: /U(432)


Empleo Divide datos y/o constantes hexadecimales sin signo de 4 dgitos (un canal).

Smbolo de diagrama de
rels /U(432)

Dd Dd: Canal de dividendo

Dr Dr: Canal de divisor

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON /U(432)
Se ejecuta una vez en el diferencial ascendente @/U(432)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Dd Dr R
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta
T4094
rea Contador C0000 hasta C4095 C0000 hasta
C4094
rea DM D00000 hasta D32767 D00000 hasta
D32766
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32766
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #FFFF #0001 hasta ---
(Binario) #FFFF
(Binario)
Registros de datos DR0 hasta 15 ---

458
Instrucciones matemticas de smbolos Seccin 3-11

rea Dd Dr R
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin /U(432) divide los valores binarios sin signo de Dd por los de Dr y entrega el
cociente a R y el resto a R+1.

Dd (Binario sin signo)

Dr (Binario sin signo)

R +1 R (Binario sin signo)

Resto Cociente

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando el resultado es 0.
error OFF en el resto de los casos.
Indicador de = ON cuando como resultado de la divisin R es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Si como resultado de la divisin el contenido de R+1 es 0, el indicador de


error se pondr en ON.
Si como resultado de la divisin el contenido de R es 0000 hex, el indicador
de igual se pondr en ON.
Si como resultado de la divisin el contenido del bit de la izquierda de R es 1,
el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100 se divide


por D00110 como valor binario sin signo de 4 dgitos y el cociente se entrega
a D00120 y el resto a D00121.

459
Instrucciones matemticas de smbolos Seccin 3-11

3-11-26 DOUBLE UNSIGNED BINARY DIVIDE: /UL(433)


Empleo Divide datos y/o constantes hexadecimales sin signo de 8 dgitos (canal
doble).

Smbolo de diagrama de
rels /UL(433)

Dd Dd: Primer canal de dividendo

Dr Dr: Primer canal de divisor

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON /UL(433)
Se ejecuta una vez en el diferencial ascendente @/UL(433)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Dd Dr R
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta
CIO 6140
rea de Trabajo W000 hasta W510 W000 hasta
W508
rea de bit en Espera H000 hasta H510 H000 hasta H508
rea Bit Auxiliar A000 hasta A958 A448 hasta A956
rea Temporizador T0000 hasta T4094 T0000 hasta
T4092
rea Contador C0000 hasta C4094 C0000 hasta
C4092
rea DM D00000 hasta D32766 D00000 hasta
D32764
rea EM sin banco E00000 hasta E32766 E00000 hasta
E32764
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta
(n = 0 a C) En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #00000001 hasta ---
#FFFFFFFF #FFFFFFFF
(Binario) (Binario)
Registros de datos ---

460
Instrucciones matemticas de smbolos Seccin 3-11

rea Dd Dr R
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin /UL(433) divide los valores binarios sin signo de Dd y Dd+1 por los de Dr y
Dr+1 y entrega el cociente a R, R+1 y el resto a R+2, y R+3.

Dd + 1 Dd (Binario sin signo)

Dr + 1 Dr (Binario sin signo)

R +3 R +2 R+1 R (Binario sin signo)


Resto Cociente

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando el resultado es 0.
error OFF en el resto de los casos.
Indicador de = ON cuando como resultado de la divisin R+1, R es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R+1, R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando el contenido de Dr, Dr+1 es 0, el indicador de error se pondr en ON.


Si como resultado de la divisin el contenido de R, R+1 es 0000 hex, el indi-
cador de igual se pondr en ON.
Si como resultado de la divisin el contenido del bit de la izquierda de R+1 es
1, el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100 y D00101


se dividen por D00111 y D00110 como valores hexadecimales sin signo de 8
dgitos y el cociente se entrega a D00121 y D00120 y el resto a D00123 y
D00122.

461
Instrucciones matemticas de smbolos Seccin 3-11

3-11-27 BCD DIVIDE: /B(434)


Empleo Divide datos y/o constantes BCD de 4 dgitos (canal nico).

Smbolo de diagrama de
rels /B(434)

Dd Dd: Canal de dividendo

Dr Dr: Canal de divisor

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON *B(434)
Se ejecuta una vez en el diferencial ascendente @/B(434)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Dd Dr R
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta T4094
rea Contador C0000 hasta C4095 C0000 hasta C4094
rea DM D00000 hasta D32767 D00000 hasta
D32766
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32766
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #0001 hasta ---
#9999 #9999
(BCD) (BCD)
Registros de datos DR0 hasta DR15 ---

462
Instrucciones matemticas de smbolos Seccin 3-11

rea Dd Dr R
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin /B(434) divide el contenido BCD de Dd por el de Dr y entrega el cociente a R


y el resto a R+1.

Dd (BCD)

Dr (BCD)

R +1 R (BCD)

Resto Cociente

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Dd no es BCD.
error ON cuando Dr no es BCD.
ON cuando el resto es 0.
OFF en el resto de los casos.
Indicador de = ON cuando R es 0.
igual OFF en el resto de los casos.

Precauciones Si Dd o Dr no son BCD o si el resto (R+1) es 0 se generar un error y el indi-


cador de error se pondr en ON.
Si como resultado de la divisin el contenido de R es 0000 hex, el indicador
de igual se pondr en ON.
Si como resultado de la divisin el contenido del bit de la izquierda de R es 1,
el indicador negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00100 se divide


por D00110 como valor BCD de 4 dgitos y el cociente se entrega a D00120 y
el resto a D00121.

463
Instrucciones matemticas de smbolos Seccin 3-11

3-11-28 DOUBLE BCD DIVIDE: /BL(435)


Empleo Divide datos y/o constantes BCD de 8 dgitos (dos canales).

Smbolo de diagrama de
rels /BL(435)

Dd Dd: Primer canal de dividendo

Dr Dr: Primer canal de divisor

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON /BL(435)
Se ejecuta una vez en el diferencial @/BL(435)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Dd Dr R
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta
CIO 6140
rea de Trabajo W000 hasta W510 W000 hasta
W508
rea de bit en Espera H000 hasta H510 H000 hasta H508
rea Bit Auxiliar A000 hasta A958 A448 hasta A956
rea Temporizador T0000 hasta T4094 T0000 hasta
T4092
rea Contador C0000 hasta C4094 C0000 hasta
C4092
rea DM D00000 hasta D32766 D00000 hasta
D32764
rea EM sin banco E00000 hasta E32766 E00000 hasta
E32764
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta
(n = 0 a C) En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #00000001 hasta ---
#99999999 #99999999
(BCD) (BCD)

464
Instrucciones de conversin Seccin 3-12

rea Dd Dr R
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin /BL(435) divide los valores BCD de Dd y Dd+1 por los de Dr y Dr+1 y entrega
el cociente a R, R+1 y el resto a R+2, R+3.

Dd + 1 Dd (BCD)

Dr + 1 Dr (BCD)

R +3 R +2 R+1 R (BCD)
Resto Cociente

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON cuando Dd, Dd+1 no es BCD.
error ON cuando Dr, Dr +1 no son BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.

Precauciones Si Dd, Dd+1 y/o Dr, Dr+1 no son BCD o si el contenido de Dr, Dr+1 es 0 se
generar un error y el indicador de error se pondr en ON.
Si como resultado de la divisin el contenido de R, R+1 es 00000000 hex, el
indicador de igual se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, D00101 y D00100


se dividen por D00111 y D00110 como valores BCD de 8 dgitos y el cociente
se entrega a D00121 y D00120 y el resto a D00123 y D00122.

3-12 Instrucciones de conversin


Esta seccin describe las instrucciones utilizadas para la conversin de
datos.
Instruccin Nemnico Cdigo de funcin Pgina
BCD-TO-BINARY BIN 023 466
DOUBLE BCD-TO-DOUBLE BINL 058 467
BINARY
BINARY-TO-BCD BCD 024 469
DOUBLE BINARY-TO- BCDL 059 470
DOUBLE BCD
2S COMPLEMENT NEG 160 472
DOUBLE 2'S COMPLEMENT NEGL 161 474

465
Instrucciones de conversin Seccin 3-12

Instruccin Nemnico Cdigo de funcin Pgina


16-BIT TO 32-BIT SIGNED SIGN 600 476
BINARY
DATA DECODER MLPX 076 477
DATA ENCODER DMPX 077 482
ASCII CONVERT ASC 086 486
ASCII TO HEX HEX 162 490
COLUMN TO LINE LINE 063 494
LINE TO COLUMN COLM 064 496
SIGNED BCD-TO-BINARY BINS 470 499
DOUBLE SIGNED BCD-TO- BISL 472 502
BINARY
SIGNED BINARY-TO-BCD BCDS 471 505
DOUBLE SIGNED BINARY-TO- BDSL 473 507
BCD
GRAY CODE CONVERSION GRY 474 511

3-12-1 BCD-TO-BINARY: BIN(023)


Empleo Convierte los datos BCD en datos binarios.

Smbolo de diagrama de
rels BIN(023)

S S: Canal fuente

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BIN(023)
Se ejecuta una vez en el diferencial ascendente @BIN(023)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

466
Instrucciones de conversin Seccin 3-12

rea S R
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BIN(023) convierte los datos BCD de S en datos binarios y escribe el resul-
tado en R.

(BCD) R (BIN)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de S no es BCD.
error OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N OFF
negativo

Ejemplo El siguiente diagrama muestra un ejemplo de conversin de BCD a binario.

R
103 102 101 100 163 162 161 160

3-12-2 DOUBLE BCD-TO-DOUBLE BINARY: BINL(058)


Empleo Convierte datos BCD de 8 dgitos en datos hexadecimales de 8 dgitos (bina-
rios de 32 bits).

Smbolo de diagrama de
rels BINL(058)

S S: Primer canal fuente

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BINL(058)
Se ejecuta una vez en el diferencial ascendente @BINL(058)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

467
Instrucciones de conversin Seccin 3-12

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BINL(058) convierte los datos BCD de 8 dgitos de S y S+1 en hexadecimales


de 8 dgitos (binarios de 32 bits) y escribe el resultado en R y R+1.
S+1 S R+1 R

(BCD) (BCD) (BIN) (BIN)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los contenidos de S+1, S no son BCD.
error OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N OFF
negativo

Ejemplos El siguiente diagrama muestra un ejemplo de conversin de BCD de 8 dgitos


a binario.

R+1 R

107106105104103102101100 167166165164163 162161160

Cuando CIO 000000 est en ON en el siguiente ejemplo, el valor BCD de 8


dgitos de CIO 0010 y CIO 0011 se convierte a hexadecimal y se almacena
en D00200 y D00201.

468
Instrucciones de conversin Seccin 3-12

S+1: CIO 0011 S: CIO 0010


0 0 2 0 0 0 5 0 200050=3X164+13X162+7X161+2X160
x107 x106 x105 x104 x103 x102 x101 x100

0 0 0 3 0 D 7 2
x167 x166 x165 x164 x163 x162 x161 x160
R+1: D00201 R: D00200

3-12-3 BINARY-TO-BCD: BCD(024)


Empleo Convierte un canal de datos binarios en uno de datos BCD.

Smbolo de diagrama de
rels BCD(024)

S S: Canal fuente

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BCD(024)
Se ejecuta una vez en el diferencial ascendente @BCD(024)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Canal fuente


S debe estar entre 0000 y 270F hexadecimal (0000 y 9999 decimal).

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)

469
Instrucciones de conversin Seccin 3-12

rea S R
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BCD(024) convierte los datos binarios de S en datos BCD y escribe el resul-
tado en R.

(BIN) R (BCD)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de S excede de 270F (9999 decimal).
error OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.

Precauciones El contenido de S no debe exceder de 270F (9999 decimal).

Ejemplo El siguiente diagrama muestra un ejemplo de conversin de BCD a binario.

R
163 162 161 160 103 102 101 100

3-12-4 DOUBLE BINARY-TO-DOUBLE BCD: BCDL(059)


Empleo Convierte datos hexadecimales de 8 dgitos en datos BCD de 8 dgitos (bina-
rios de 32 bits).

Smbolo de diagrama de
rels
BCDL(059)

S S: Primer canal fuente

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BCDL(059)
Se ejecuta una vez en el diferencial ascendente @BCDL(059)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

470
Instrucciones de conversin Seccin 3-12

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Primer canal fuente


El contenido de S+1 y S debe estar entre 0000 0000 y 05F5 E0FF hexadeci-
mal (0000 0000 y 9999 9999 decimal).

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BCDL(059) convierte los datos hexadecimales de 8 dgitos (binarios de 32


bits) de S y S+1 en BCD de 8 dgitos y escribe el resultado en R y R+1.
S+1 S R+1 R

(BCD) (BCD) (BIN) (BIN)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los contenidos de S y S+1 exceden de 05F5 E0FF
error (9999 9999 decimal).
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.

Precauciones El contenido de S+1 y S no debe exceder de 05F5 E0FF (9999 9999 deci-
mal).

471
Instrucciones de conversin Seccin 3-12

Ejemplos El siguiente diagrama muestra un ejemplo de conversin de BCD de 8 dgitos


a binario.

R+1 R

167166165164 163162161160 107106105104103 102101100

Cuando CIO 000000 est en ON en el siguiente ejemplo, el valor hexadeci-


mal de CIO 0011 y CIO 0010 se convierte a BCD y se almacena en D00200 y
D00201.

S+1: CIO 0011 S: CIO 0010


MBS 0 0 2 D 3 2 0 A LSB
x167 x166 x165 x164 x163 x162 x161 x160
2X165 +13X164+3X163+2X162+10=2961930

R+1: D00101 R: D00100


MBS 0 2 9 6 1 9 3 0 LSB
x107 x106 x105 x104 x103 x102 x101 x100

3-12-5 2S COMPLEMENT: NEG(160)


Empleo Calcula el complemento a 2 de un canal de datos hexadecimales.

Smbolo de diagrama de
rels NEG(160)

S S: Canal fuente

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON NEG(160)
Se ejecuta una vez en el diferencial ascendente @NEG(160)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767

472
Instrucciones de conversin Seccin 3-12

rea S R
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin NEG(160) calcula el complemento a 2 de S y escribe el resultado en R. El


clculo del complemento a 2 invierte bsicamente el estado de los bits de S y
aade 1.
Complemento a 2
(Complemento + 1)
(S) (R)

Nota Esta operacin (la inversin del estado de los bits y la adicin de 1) es equi-
valente a restar el contenido de S de 0000.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 del resultado est en ON.
negativo OFF en el resto de los casos.

Nota El resultado para 8000 hex ser 8000 hex.

473
Instrucciones de conversin Seccin 3-12

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, NEG(160) calcula el


complemento a 2 del contenido de D00100 y escribe el resultado en D00200.

Clculo Resta
actual equivalente

Estado de bit inverso

)
Aadir 1

3-12-6 DOUBLE 2S COMPLEMENT: NEGL(161)


Empleo Calcula el complemento a 2 de dos canales de datos hexadecimales.

Smbolo de diagrama de
rels NEGL(161)

S S: Primer canal fuente

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON NEGL(161)
Se ejecuta una vez en el diferencial ascendente @NEGL(161)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

474
Instrucciones de conversin Seccin 3-12

rea S R
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 a #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Nota R y R+1 deben estar en el mismo rea de datos.

Descripcin NEGL(161) calcula el complemento a 2 de S+1 y S y escribe el resultado en


R+1 y R. El clculo del complemento a 2 invierte bsicamente el estado de
los bits de S+1 y S y aade 1.
Complemento a 2
(Complemento + 1)
(S+1, S) (R+1, R)

Nota Esta operacin (la inversin del estado de los bits y la adicin de 1) es equi-
valente a restar el contenido de S+1 y S de 0000.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0000 0000.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 de R+1 est en ON.
negativo OFF en el resto de los casos.

Nota El resultado para 8000 hex ser 8000 hex.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, NEGL(161) calcula


el complemento a 2 del contenido de D00101 y D00100 y escribe el resultado
en D00201 y D00200.

Clculo Resta
actual equivalente

Estado de bit inverso

)
Aadir 1

475
Instrucciones de conversin Seccin 3-12

3-12-7 16-BIT TO 32-BIT SIGNED BINARY: SIGN(600)


Empleo Expande un valor binario con signo de 16 bits a su equivalente de 32 bits.

Smbolo de diagrama de
rels SIGN(600)

S S: Canal fuente

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SIGN(600)
Se ejecuta una vez en el diferencial ascendente @SIGN(600)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta T4094
rea Contador C0000 hasta C4095 C0000 hasta C4094
rea DM D00000 hasta D32767 D00000 hasta D32766
rea EM sin banco E00000 hasta E32767 E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta En_32766
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Nota R y R+1 deben estar en el mismo rea de datos.

476
Instrucciones de conversin Seccin 3-12

Descripcin SIGN(600) convierte el nmero binario con signo de 16 bits de S en su equi-


valente binario con signo de 32 bits y escribe el resultado en R+1 y R.
La conversin se logra copiando el contenido de S en R y escribiendo FFFF
en R+1 si el bit 15 de S es 1 o escribiendo 0000 en R+1 si el bit 15 de S es 0.

Canal fuente (S)


1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Si el bit 15 de S es 1, se transfiere FFFF a R+1. El contenido de S se
Si el bit 15 de S es 0, se transfiere 0000 a R+1. transfiere "como es" a R.

2o canal de resultado (R+1) 1er canal de resultado (R)


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 0 0 0 0

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0000 0000.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 de R+1 est en ON.
negativo OFF en el resto de los casos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, SIGN(600) con-


vierte el contenido binario con signo de 16 bits de D00100 (#8000 = 32.768
decimal) en su equivalente de 32 bits (#FFFF 8000 = 32.768 decimal) y
escribe el resultado en D00201 y D00200.

Ejemplo: 8000 hex.

3-12-8 DATA DECODER: MLPX(076)


Empleo Lee el valor numrico del dgito especificado (o byte) en el canal fuente, pone
en ON el bit correspondiente en el canal de resultado (o rango de 16 canales)
y pone en OFF los otros bits del canal de resultado (o rango de 16 canales).

Smbolo de diagrama de
rels MLPX(076)

S S: Canal fuente

C C: Canal de control

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MLPX(076)
Se ejecuta una vez en el diferencial ascendente @MLPX(076)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

477
Instrucciones de conversin Seccin 3-12

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Canal fuente


Los datos del canal fuente indican la posicin del bit o de los bits que se pon-
drn en ON.
C: Canal Control
El canal de control especifica si MLPX(076) llevar a cabo una conversin de
4 a 16 bits o una conversin de 8 a 256 bits, el nmero de dgitos o bytes a
convertir y el dgito o byte inicial.
Nmero 3 2 1 0
de dgito: 0
Especifica el primer dgito/byte a convertir
4 a 16: 0 a 3 (dgito 0 a 3)
8 a 256: 0 1 (byte 0 1)

Nmero de dgitos/bytes a convertir


4 a 16: 0 a 3 (1 a 4 dgitos)
8 a 256: 0 1 (1 2 bytes)
Proceso de conversin
0: 4 a 16 bits (dgito a canal)
1: 8 a 256 bits (byte a rango de 16 canales)

R: Primer canal de resultado


Pueden existir de 1 a 32 canales de resultado, dependiendo del tipo del pro-
ceso de conversin y del nmero de dgitos/bytes que se convierten. Los
canales de resultado deben estar en el mismo rea de datos.

Especificaciones del
operando rea S C R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores ---
especificados
Registros de datos DR0 hasta DR15 ---

478
Instrucciones de conversin Seccin 3-12

rea S C R
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin MLPX(076) puede llevar a cabo conversiones de 4 a 16 bits o de 8 a 256 bits.


Configure el dgito de la izquierda de C como 0 para especificar conversin
de 4 a 16 bits y como 1 para especificar conversin de 8 a 256 bits.
Conversin de 4 a 16 bits
Cuando el dgito de la izquierda de C es 0, MLPX(076) toma el valor del dgito
especificado de S (0 a F) y pone en ON el bit correspondiente en el canal de
resultado. El resto de los bits del canal de resultado se ponen en OFF. Pue-
den convertirse hasta cuatro dgitos.
C

l =1 (Convertir 2 dgitos).

n=2 (Comenzar con el tecer dgito).

Decodificacin de 4 a 16 bits
(El bit m de R se pondr en ON).

R
R+1

Cuando se estn convirtiendo dos o ms dgitos, MLPX(076) leer los dgitos


de S de derecha a izquierda y ajustar en torno al dgito de la derecha des-
pus del dgito de la izquierda si fuera necesario.
El siguiente diagrama muestra algunos valores de ejemplo para C y las con-
versiones de 4 a 16 bits que producen.
C: #0010 C: #0030 C: #0031

R R R
R+1 R+1 R+1
R+2 R+2
R+3 R+3

Conversin de 8 a 256 bits


Cuando el dgito de la izquierda de C es 1, MLPX(076) toma el valor del byte
especificado de S (00 a FF) y pone en ON el bit correspondiente en el rango
de 16 canales de resultado. El resto de los bits de los canales de resultado se
ponen en OFF. Pueden convertirse hasta dos bytes.

479
Instrucciones de conversin Seccin 3-12

C
l=1 (Convertir 2 bytes).

n=1 (Comenzar con el segundo byte).

Decodificacin de 8 a 256 bits


(El bit m de R a R+15 se pondr en ON).

R+1 16

R+14
R+15
R+16
R+17

R+30
R+31

Cuando se convierten dos bits, MLPX(076) leer los bytes de S de derecha a


izquierda y ajustar en torno al byte ms a la derecha si el byte de la
izquierda (byte 1) ha sido especificado como el byte de inicio.
El siguiente diagrama muestra algunos valores de ejemplo para C y las con-
versiones de 8 a 256 bits que producen.
C: #1010 C: #1011
Dgito 1 Dgito 0 Dgito 1 Dgito 0

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si C no est dentro de los rangos especificados.
error OFF en el resto de los casos.

Ejemplos Conversin de 4 a 16 bits


Cuando CIO 000000 est en ON en el siguiente ejemplo, MLPX(076) conver-
tir 3 dgitos de S empezando por el dgito 1 (el segundo dgito), tal y como
indica C (#0021). Los bits correspondientes de D00100, D00101 y D00102 se
pondrn en ON.

480
Instrucciones de conversin Seccin 3-12

S
C
Bits 0 hasta 3: Dgito de inicio (Dgito 1)
R
C: # Bits 4 hasta 7: Nmero de dgitos (3 dgitos)

Dgitos
S: 0100

R: El dgito 1 contiene 6, as que el bit 6 se pone en ON.


El dgito 2 contiene A, as que el bit 10 se pone en ON.
El dgito 3 contiene F, as que el bit 15 se pone en ON.

Conversin de 8 a 256 bits


Cuando CIO 000000 est en ON en el siguiente ejemplo, MLPX(076) conver-
tir 2 bytes de S empezando por el byte 1 (el byte de la izquierda), tal y como
indica C (#1011). Los bits correspondientes de D00100 a D00115 y D00116 a
D00131 se pondrn en ON.

S
C Bits 0 hasta 3: Byte de inicio (Byte 1)
R C: #
Bits 4 hasta 7: Nmero de bytes (2 bytes)

Byte 1 Byte 0
S: 0100

R:

El byte 1 contiene 2D, as que el


bit 13 (D) de R+2 se pone en ON.

El byte 0 contiene 1A, as que el


bit 10 (A) de R+1 se pone en ON.

481
Instrucciones de conversin Seccin 3-12

3-12-9 DATA ENCODER: DMPX(077)


Empleo Encuentra la posicin del primer o el ltimo bit en ON en el canal fuente (o el
rango de 16 canales) y escribe dicho valor en el dgito (o byte) especificado
en el canal de resultado.
Smbolo de diagrama de
rels DMPX(077)

S S: Primer canal fuente

R R: Canal de resultado

C C: Canal de control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DMPX(077)
Se ejecuta una vez en el diferencial ascendente @DMPX(077)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Primer canal fuente


Pueden existir de 1 a 32 canales fuente, dependiendo del tipo del proceso de
conversin y del nmero de dgitos/bytes que se convierten. Los canales
fuente deben estar en el mismo rea de datos.
R: Canal de resultado
Las posiciones de los bits que estaban en ON en el o los canales fuente se
escriben en los dgitos/bytes de R comenzando por el primer dgito/byte
especificado.
C: Canal Control
El canal de control especifica si DMPX(077) llevar a cabo una conversin de
16 a 4 bits o una conversin de 256 a 8 bits, si se codificar el bit en ON de la
izquierda o de la derecha, el nmero de dgitos o bytes que se convertirn, y
el dgito o byte de inicio en el que se escribirn los resultados.
Nmero 3 2 1 0
de dgito:

Especifica el primer dgito/byte en recibir los datos


convertidos.
16 a 4: 0 a 3 (dgito 0 a 3)
256 a 8: 0 1 (byte 0 1)
Nmero de dgitos/bytes a convertir de
16 a 4: 0 a 3 (1 a 4 dgitos)
256 a 8: 0 1 (1 2 bytes)

Bit a codificar
0: Bit de la izquierda (direccin de bit ms alta)
1: Bit de la derecha (direccin de bit ms baja)
Proceso de conversin
0: 16 a 4 bits (canal a dgito)
1: 256 a 8 bits (rango de 16 canales a byte)

Especificaciones del
operando rea S R C
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511

482
Instrucciones de conversin Seccin 3-12

rea S R C
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- --- Slo valores
especificados
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin DMPX(077) puede llevar a cabo conversiones de 16 a 4 bits o de 256 a 8 bits.


Configure el dgito de la izquierda de C como 0 para especificar conversin
de 16 a 4 bits y como 1 para especificar conversin de 256 a 8 bits.
Conversin de 16 a 4 bits
Cuando el cuarto dgito (de la izquierda) de C es 0, DMPX(077) encuentra las
posiciones de los bits en ON de la izquierda o de la derecha en hasta 4 cana-
les fuente y escribe estas posiciones en R empezando por el dgito especifi-
cado. (Configure el tercer dgito de C como 0 para buscar los bits en ON de la
izquierda o en 1 para buscar los bits en ON de la derecha).
C
Busca el bit de la izquierda
(Direccin de bit ms alta)

m l=1 (Convertir
2 canales).

Decodificacin de 16 a 4 bits
(La posicin del bit de la
izquierda (m) se escribe en R). Bit de la izquierda

n=2 (Comenzar con el dgito 2).

Cuando se estn convirtiendo dos o ms dgitos, DMPX(077) escribir los


valores de los dgitos de R de derecha a izquierda y ajustar en torno al dgito
de la derecha despus del dgito de la izquierda si fuera necesario.

483
Instrucciones de conversin Seccin 3-12

El siguiente diagrama muestra algunos valores de ejemplo para C y las con-


versiones de 16 a 4 bits que producen.
C: #0011 C: #0030 C: #0013

R Dgito 3 Dgito 2 Dgito 1 Dgito 0 R Dgito 3 Dgito 2 Dgito 1 Dgito 0

R Dgito 3 Dgito 2 Dgito 1 Dgito 0

C: #0032

R Dgito 3 Dgito 2 Dgito 1 Dgito 0

Conversin de 256 a 8 bits


Cuando el cuarto dgito (de la izquierda) de C es 1, DMPX(077) busca las
posiciones de los bits en ON de la izquierda (direcciones de bit ms altas) o
de la derecha (direcciones de bit ms bajas) en uno o dos rangos de 16 cana-
les de canales fuente. Las posiciones de estos bits se escriben en R comen-
zando por el byte especificado. (Configure el tercer dgito de C como 0 para
buscar los bits en ON de la izquierda o en 1 para buscar los bits en ON de la
derecha).

C
l =0 (Convertir un rango de 16 canales).

Bit de la Bit de la
izquierda derecha

Busca el bit de la izquierda


(Direccin de bit ms alta)
Decodificacin de 256 a 8 bits
(La posicin del bit de la izquierda del
rango de 16 canales (m) se escribe en R).

n=1 (Comenzar con el byte 1).

484
Instrucciones de conversin Seccin 3-12

Cuando se convierten dos bytes, DMPX(077) escribir los valores en los bytes
de R de derecha a izquierda y ajustar en torno al byte ms a la derecha si el
byte de la izquierda (byte 1) ha sido especificado como el byte de inicio.
El siguiente diagrama muestra algunos valores de ejemplo para C y las con-
versiones de 256 a 8 bits que producen.
C: #1010 C: #1011

Dgito 1 Dgito 0 Dgito 1 Dgito 0

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si alguno de los canales fuente contiene 0000 hex
error (es decir, ningn bit a codificar).
ON si C no est dentro de los rangos especificados.
OFF en el resto de los casos.

Precauciones Si los datos de conversin contienen 0000 hex, pero deben codificarse otros
datos, separe la conversin usando ms de una instruccin DMPX(077).
DMPX(077) D0000 D0100 #0300

DMPX(077) D0000 D0100 #0000


DMPX(077) D0001 D0100 #0001
DMPX(077) D0002 D0100 #0002
DMPX(077) D0003 D0100 #0003

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, DMPX(077) bus-


car los bits en ON de la izquierda en CIO 0100, CIO 0101 y CIO 0102 y
escribir esas posiciones en 3 dgitos de R empezando por el dgito 1 (el
segundo dgito), tal y como indica C (#0021).

485
Instrucciones de conversin Seccin 3-12

S
R
C C: #
DMPX(077) busca los bits
en ON de la izquierda.

S:
Dgito de
inicio
(Dgito 1)

Dgitos

R: D00100

3-12-10 ASCII CONVERT: ASC(086)


Empleo Convierte dgitos hexadecimales de 4 bits del canal fuente en sus equivalen-
tes ASCII de 8 bits.

Smbolo de diagrama de
rels ASC(086)

S S: Canal fuente

Di Di: Indicador de dgito

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ASC(086)
Se ejecuta una vez en el diferencial @ASC(086)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Canal fuente


Pueden convertirse hasta cuatro dgitos del canal fuente. Los dgitos estn
numerados de 0 a 3, de derecha a izquierda.
Di: Indicador de dgito
El indicador de dgito especifica varios parmetros para la conversin, como
se muestra en el siguiente diagrama.

486
Instrucciones de conversin Seccin 3-12

Nmero 3 21 0
de dgito:

Especifica el primer dgito de S a convertir (0 a 3).


Nmero de dgitos a convertir de (0 a 3)
0: 1 dgito
1: 2 dgitos
2: 3 dgitos
3: 4 dgitos
Primer byte de D a utilizar.
0: Byte de la derecha
1: Byte de la izquierda
Paridad 0: Ninguna
1: Par
2: Impar

D: Primer canal de destino


Los datos ASCII convertidos se escriben en el o los canales de destino
empezando por el byte especificado en D. Se necesitam tres canales de des-
tino (D a D+3) si se convierten 4 dgitos y el byte de la izquierda se selecciona
como el primer byte de D. Los canales de destino deben estar en el mismo
rea de datos.
Los bytes del o de los canales de destino que no se sobrescriban con datos
ASCII permanecern sin modificar.

Especificaciones del
operando rea S Di D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores ---
especificados
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

487
Instrucciones de conversin Seccin 3-12

Descripcin ASC(086) trata los contenidos de S como 4 dgitos hexadecimales, convierte


el o los dgitos designados de S en sus equivalentes ASCII de 8 bits, y
escribe los datos en o los canales de destino empezando por el byte especifi-
cado en D.

Di
Primer dgito para convertir

Nmero de
dgitos (n+1)

Izquierda (1) Derecha (0)

Nota Consulte en el Apndice A del Manual de operacin de las consolas de pro-


gramacin de la serie CS/CJ (W341) una tabla de caracteres ASCII amplia-
dos.
Paridad
Es posible especificar la paridad de los datos ASCII para su uso en el control
de errores en las transmisiones de datos. El bit de la izquierda de cada carc-
ter ASCII se ajustar automticamente para paridad par, paridad impar o nin-
guna paridad.
Cuando se designa ninguna paridad (0) el bit de la izquierda siempre ser
cero. Cuando se designa paridad par (1) el bit de la izquierda se ajustar de
tal manera que el nmero total de bits en ON es par. Cuando se designa pari-
dad impar (2) el bit de la izquierda de cada carcter ASCII se ajustar de tal
manera que el nmero de bits en ON es impar. El estado del bit de paridad no
afecta al significado del cdigo ASCII.
Ejemplos de paridad par:
Cuando se ajusta para paridad par, ASCII 31 (00110001) ser B1
(10110001: bit de paridad puesto en ON para crear un nmero par de bits en
ON); ASCII 36 (00110110) ser 36 (00110110: el bit de paridad se man-
tiene en OFF porque el nmero de bits en ON ya es par).
Ejemplos de paridad impar:
Cuando se ajusta para paridad impar, ASCII 36 (00110110) ser B6
(10110110: bit de paridad puesto en ON para crear un nmero impar de bits
en ON); ASCII 46 (01000110) ser 46 (01000110: el bit de paridad se
mantiene en OFF porque el nmero de bits en ON ya es impar).
Ejemplos de Di
Cuando se estn convirtiendo dos o ms dgitos, ASC(086) leer los dgitos
de S de derecha a izquierda y ajustar en torno al dgito de la derecha si
fuera necesario. El siguiente diagrama muestra algunos valores de ejemplo
para Di y las conversiones que producen.

488
Instrucciones de conversin Seccin 3-12

Di: #0011 Di: #0112 Di: #0030

Dgito 3 Dgito 2 Dgito 1 Dgito 0 Dgito 3 Dgito 2 Dgito 1 Dgito 0 Dgito 3 Dgito 2 Dgito 1 Dgito 0

De la izquierda De la derecha De la izquierda De la izquierda De la derecha


De la derecha De la izquierda De la derecha

Di: #0130

Dgito 3 Dgito 2 Dgito 1 Dgito 0

De la izquierda
De la izquierda De la derecha
De la derecha

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de Di no est dentro de los rangos
error especificados.
OFF en el resto de los casos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, ASC(086) convierte


tres dgitos hexadecimales de D00100 (empezando por el dgito 1) en sus
equivalentes ASCII y escribe estos datos en D00200 y D00201 empezando
por el byte de la izquierda de D00200. En este caso, un indicador de dgito de
#0121 especifica sin paridad, el byte de inicio (al escribir) = byte de la
izquierda, el nmero de dgitos a leer = 3, y el dgito de inicio (al leer) = dgito 1.

S
Di
D
Di: #

Nmero de dgitos
Dgito de inicio

Dgitos

S: D00100
Byte de inicio
(byte de la izquierda)

D:

489
Instrucciones de conversin Seccin 3-12

3-12-11 ASCII TO HEX: HEX(162)


Empleo Convierte hasta 4 bytes de datos ASCII del canal fuente en sus equivalentes
hexadecimales y escribe estos dgitos en el canal de destino especificado.

Smbolo de diagrama de
rels HEX(162)

S S: Primer canal fuente

Di Di: Indicador de dgito

D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON HEX(162)
Se ejecuta una vez en el diferencial @HEX(162)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Primer canal fuente


Los contenidos de los canales fuente se tratan como datos ASCII. Pueden
utilizarse hasta tres canales fuente. (Se necesitan tres canales fuente si se
convierten 4 bytes y el byte de la izquierda se selecciona como el primer byte
de S). Los canales fuente deben estar en el mismo rea de datos.
Di: Indicador de dgito
El indicador de dgito especifica varios parmetros para la conversin, como
se muestra en el siguiente diagrama.
Nmero 3 21 0
de dgito:

Especifica el primer dgito de D que recibir datos convertidos (0 a 3).


Nmero de bytes a convertir de (0 a 3)
0: 1 dgito
1: 2 dgitos
2: 3 dgitos
3: 4 dgitos
Primer byte de S a convertir.
0: Byte de la derecha
1: Byte de la izquierda
Paridad 0: Ninguna
1: Par
2: Impar

D: Canal de destino
Los dgitos hexadecimales convertidos se escriben en D de derecha a
izquierda, empezando por el primer dgito especificado. Los dgitos del canal
de destino que no se sobrescriban con los datos convertidos permanecern
sin modificar.

490
Instrucciones de conversin Seccin 3-12

Especificaciones del
operando rea S Di D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores ---
especificados
Registros de datos --- DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin HEX(162) trata los contenidos del o de los canales fuente como datos ASCII
representando dgitos hexadecimales (0 a 9 y A a F), convierte el nmero
especificado de bytes a hexadecimal, y escribe los datos hexadecimales en el
canal de destino empezando por el dgito especificado.
Se producir un error si los canales fuente contienen datos que no sean un
equivalente ASCII de dgitos hexadecimales. La siguiente tabla muestra dgi-
tos hexadecimales y sus equivalentes ASCII (excluyendo los bits de paridad).

Indicadores
Dgitos hexadecimales (4 bits) Equivalente ASCII (2 dgitos hexadecimales)
0a9 30 a 39
AaF 41 a 46

Nota Consulte en el Apndice A del Manual de operacin de las consolas de pro-


gramacin de la serie CS/CJ (W341) una tabla de caracteres ASCII amplia-
dos.

491
Instrucciones de conversin Seccin 3-12

El siguiente diagrama muestra la operacin bsica de HEX(162) con


Di=0021.
C: 0021
Di
Primer byte a convertir

Izquierda (1) Derecha (0)

Nmero de dgitos (n+1)

Primer dgito a escribir

Paridad
Es posible especificar la paridad de los datos ASCII para su uso en el control
de errores en las transmisiones de datos. El bit de la izquierda de cada byte
es el bit de paridad. Sin paridad el bit de paridad debe ser siempre cero, con
paridad par el estado del bit de paridad debe resultar en un nmero par de
bits en ON, con paridad impar el estado del bit de paridad debe resultar en un
nmero impar de bits en ON.
La siguiente tabla muestra la operacin de HEX(162) para cada ajuste de
paridad.
Configuracin de la Operacin de HEX(162)
paridad
(dgito a la izquierda
de Di)
Sin paridad (0) HEX(162) se ejecutar slo cuando el bit de paridad de
cada byte sea 0. Se producir un error si un bit de paridad
no es cero.
Paridad par (1) HEX(162) se ejecutar slo cuando hay un nmero par de
bits en ON en cada byte. Se producir un error si un byte
tiene un nmero impar de bits en ON.
Paridad impar (2) HEX(162) se ejecutar slo cuando hay un nmero impar
de bits en ON en cada byte. Se producir un error si un byte
tiene un nmero par de bits en ON.

Ejemplos de Di
Cuando se estn convirtiendo dos o ms bytes, HEX(162) escribir los dgi-
tos convertidos en el canal de destino de derecha a izquierda y ajustar en
torno al dgito de la derecha si fuera necesario. El siguiente diagrama mues-
tra algunos valores de ejemplo para Di y las conversiones que producen.
Di: #0112 Di: #0030 Di: #0131
De la izquierda De la izquierda De la derecha De la izquierda
De la derecha De la izquierda De la derecha De la izquierda De la derecha
De la derecha

Dgito 3 Dgito 2 Dgito 1 Dgito 0 Dgito 3 Dgito 2 Dgito 1 Dgito 0


Dgito 3 Dgito 2 Dgito 1 Dgito 0

492
Instrucciones de conversin Seccin 3-12

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si hay un error de paridad en los datos ASCII.
error ON si los datos ASCII de los canales fuente no son
equivalentes a dgitos hexadecimales
ON si el contenido de Di no est dentro de los rangos
especificados.
OFF en el resto de los casos.

Precauciones Se producir un error y el indicador de error se pondr en ON si hay un error


de paridad en los datos ASCII, si los datos ASCII de los canales fuente no
son equivalentes a dgitos hexadecimales, o si el contenido de Di no est
dentro de los rangos especificados.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, HEX(162) convierte


los datos ASCII de D00100 y D00101 de acuerdo a las configuraciones del
indicador de dgito. (Di=#0121 especifica sin paridad, el byte de inicio (al leer)
= byte de la izquierda, el nmero de bytes a leer = 3, y el dgito de inicio (al
escribir) = dgito 1).
HEX(162) convierte tres bytes de datos ASCII (3 caracteres) empezando por
el byte de la izquierda de D00100 en sus equivalentes hexadecimales y
escribe estos datos en D00200 empezando por el dgito 1.

S
Di
D Di: #

Byte de inicio
(byte de la izquierda)

S:

Nmero de dgitos

Dgito de inicio (Dgito 1)


3 dgitos

D: D00200

Cuando CIO 000000 est en ON en el siguiente ejemplo, HEX(162) convierte


los datos ASCII de D00010 empezando por el byte ms a la derecha y
escribe los equivalentes hexadecimales en D00300 empezando por el
dgito 1.
La configuracin de indicador de dgito #1011 especifica paridad par, el byte
de inicio (al leer) = byte de la derecha, el nmero de bytes a leer = 2, y el
dgito de inicio (al escribir) = dgito 1).

493
Instrucciones de conversin Seccin 3-12

Dgito de inicio de D: Dgito 1


Nmero de bytes: 2
Byte de inicio de S: De la derecha
Paridad: Par
Bits de paridad: Resulta en paridad par

S: D00100

Byte de inicio: De la derecha

Conversin
Dgito de inicio (Dgito 1)

D: D00300 Sin cambios

Nmero de bytes (2 bytes)


Sin cambios

3-12-12 COLUMN TO LINE: LINE(063)


Empleo Convierte una columna de bits de un rango de 16 canales (el mismo nmero
de bit en 16 canales consecutivos) en los 16 bits del canal de destino.

Smbolo de diagrama de
rels LINE(063)

S S: Primer canal fuente

N N: Nmero de bit

D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON LINE(063)
Se ejecuta una vez en el diferencial @LINE(063)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Primer canal fuente


Especifica el primer canal fuente. S y S+1 deben estar en el mismo rea de
datos.
N: Nmero de bit
Especifica el nmero de bit (0000 hasta 000F &0 hasta &15) a copiar de los
canales fuente.

494
Instrucciones de conversin Seccin 3-12

Especificaciones del
operando rea S N D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 6143
CIO 6128
rea de Trabajo W000 hasta W000 hasta W511
W496
rea de bit en Espera H000 hasta H496 H000 hasta H511
rea Bit Auxiliar A000 hasta A944 A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T0000 hasta T4095
T4080
rea Contador C0000 hasta C0000 hasta C4095
C4080
rea DM D00000 hasta D00000 hasta D32767
D32752
rea EM sin banco E00000 hasta E00000 hasta E32767
E32752
rea EM con Banco En_00000 hasta En_00000 hasta En_32767 (n = 0 a C)
En_32752
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta 000F ---
(binario) &0
hasta &15
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin LINE(063) copia los 16 bits con el nmero de bit N del rango de 16 canales S
a S+15 en el canal de destino D. El bit N de S+m se copia en el bit m de D,
esdecir, el bit N de S se copia en el bit 00 de D y el bit N de S+15 se copia en
el bit 15 de D.
N
Bit Bit
15 00
S 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 1
S+1 1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1
S+2 0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1
S+3 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1
. . . .
. . . .
. . . .
S+15 0 1 1 0 0 0 0 1 1 0 0 0 1 0 1 0 Bit Bit
15 00

D 0 . . . 0 1 1 1

495
Instrucciones de conversin Seccin 3-12

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no est dentro del rango especificado de 0000
error hasta 000F.
OFF en el resto de los casos.
Indicador de = ON si D es 0000 despus de la ejecucin.
igual OFF en el resto de los casos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, LINE(063) copia el


bit 5 de D00100 hasta D00115 en los 16 bits de D00200.

&5 N: #0005

S:

a a

D: D00200

3-12-13 LINE TO COLUMN: COLM(064)


Empleo Convierte los 16 bits del canal fuente en una columna de bits con un rango de
16 canales de los canales de destino (el mismo nmero de bits en 16 canales
consecutivos).

Smbolo de diagrama de
rels COLM(064)

S S: Canal fuente

D D: Primer canal de destino

N N: Nmero de bit

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON COLM(064)
Se ejecuta una vez en el diferencial @COLM(064)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos D: Primer canal de destino


Especifica el primer canal de destino. D y D+15 deben estar en el mismo rea
de datos.

496
Instrucciones de conversin Seccin 3-12

N: Nmero de bit
Especifica el nmero de bit (0000 hasta 000F &0 hasta &15) a sobrescribir
por el canal fuente.

Especificaciones del
operando rea S D N
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6128 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta
W511 W496 W511
rea de bit en Espera H000 hasta H511 H000 hasta H496 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A944 A000 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4080 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4080 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32752 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32752 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32752 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #FFFF --- #0000 hasta
(Binario) #000F (binario) o
bien &0 hasta &15
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

497
Instrucciones de conversin Seccin 3-12

Descripcin COLM(064) copia los 16 bits de S a los 16 bits con nmero de bit N del rango
de 16 canales D a D+15. El bit m de S se copia al bit N de D+m, por ejemplo,
el bit 00 de S se copia al bit N de D y el bit 15 de S al bit N de D+15.
Bit Bit
15 00

S 0 . . . . . . . 0 1 1 1

Bit Bi Bit
15 00

D 0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 1
D+1 1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1
D+2 0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1
D+3 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1
. . . .
. . . .
. . . .
D+15 0 1 1 1 0 0 0 1 1 0 0 0 1 0 1 0

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no est dentro del rango especificado de
error 0000 hasta 000F.
OFF en el resto de los casos.
Indicador de = ON si el bit N es 0 en todos los 16 canales D hasta
igual D+15 despus de la ejecucin.
OFF en el resto de los casos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, COLM(064) copia


los 16 bits de D00200 (bits 00 hasta 15) en el bit 5 de D00100 hasta D00115.

S: D00200

D:

a a

498
Instrucciones de conversin Seccin 3-12

3-12-14 SIGNED BCD-TO-BINARY: BINS(470)


Empleo Convierte un canal de datos BCD con signo en otro con datos binarios con
signo.

Smbolo de diagrama de
rels BINS(470)

C C: Canal de control

S S: Canal fuente

D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BINS(470)
Se ejecuta una vez en el diferencial @BINS(470)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal Control


Especifica el formato BCD con signo. C debe ser de 0000 a 0003.

Especificaciones del
operando rea C S D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 a A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta ---
#0003
(Binario)
Registros de datos DR0 hasta DR15

499
Instrucciones de conversin Seccin 3-12

rea C S D
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BINS(470) convierte datos BCD con signo en datos binarios con signo. En
primer lugar se comprueba el formato de datos BCD y el rango del canal S
respecto a la configuracin del canal de control (C). Si los datos fuente son
correctos, los datos BCD con signo de S se convierten a datos binarios con
signo y se entregan a D. Si los datos fuente no son correctos, el indicador de
error se pondr en ON y la instruccin no se ejecutar.

Formato BCD con signo


especificado en C

BCD con signo Binario con signo

Cuando los datos convertidos son negativos se entregarn como el comple-


mento a 2 y el indicador negativo se pondr en ON. NEG(160) puede utili-
zarse para determinar el valor absoluto de un nmero binario con signo
negativo. Consulte la 3-12-52S COMPLEMENT: NEG(160) para obtener
informacin detallada.
Un valor de 0 en los datos fuente se tratar como 0 y no causar un error.
As, el estado de los bits 13 hasta 15 de S no se comprueba cuando C=0000.
Nota Algunas Unidades de E/S especiales entregan datos BCD con signo. Los cl-
culos utilizando estos datos sern normalmente ms sencillos si se convier-
ten antes a datos binarios con signo con BINS(470).
El canal de control especifica el formato de los datos BCD con signo como se
muestra a continuacin.
C = 0000 (Rango de datos de entrada: 999 hasta 999 BCD)

3 dgitos BCD, 12 bits


Bit con signo (0: positivo, 1: negativo)
Estado de los 3 bits: 0

C = 0001 (Rango de datos de entrada: 7999 hasta 7999 BCD)

3 dgitos BCD, 12 bits


3 bits del dgito 4 (0 a 7)
Bit con signo (0: positivo, 1: negativo)

C = 0002 (Rango de datos de entrada: 999 hasta 9999 BCD)

3 dgitos BCD, 12 bits


0 a 9: Cuarto dgito BCD
F: Negativo ()
A a E: Error

500
Instrucciones de conversin Seccin 3-12

C = 0003 (Rango de datos de entrada: 1999 hasta 9999 BCD)

3 dgitos BCD, 12 bits


0 a 9: Cuarto dgito BCD
A: Negativo (1)
F: Negativo ()
B a E: Error
La siguiente tabla muestra los posibles valores BCD para cada formato BCD
con signo y los valores binarios con signo correspondientes.
Confi- Valores BCD con signo Valores binarios con signo
guracin
C=0000 999 a 1 y 0 a 999 FC19 hasta FFFF y 0000 hasta 03E7
C=0001 7999 a 1 y 0 a 7999 E0C1 hasta FFFF y 0000 hasta 1F3F
C=0002 999 a 1 y 0 a 9999 FC19 a FFFF hasta 0000 a 270F
C=0003 1999 a 1 y 0 hasta 9999 F831 hasta FFFF y 0000 hasta 270F

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si C no est dentro del rango especificado de 0000 hasta
de error 0003.
ON si C=0002 y el dgito de la izquierda de S es A hasta E.
ON si C=0003 y el dgito de la izquierda de S es B hasta E.
ON si el contenido de S no es BCD.
OFF en el resto de los casos.
Indicador = ON si D es 0000 despus de la ejecucin.
de igual OFF en el resto de los casos.
Indicador N ON si el bit 15 de D est en ON despus de la ejecucin.
de negativo OFF en el resto de los casos.
Ejemplos BCD Formato 0 (C=#0000)
Cuando CIO 000000 est en ON en el siguiente ejemplo, el formato de datos
BCD con signo y el rango de D00100 se comprueban respecto al formato
especificado en el canal de control (0000). Los datos fuente son correctos,
as que los datos BCD con signo de D00100 se convierten a datos binarios
con signo y se entregan a D00200.
S: D00100
1123 Datos BCD con signo (123)

D: D00200
F F 8 5 Datos binarios con signo

BCD Formato 0 (C=#0003)


Cuando CIO 000001 est en ON en el siguiente ejemplo, el formato de datos
BCD con signo y el rango de D00100 se comprueban respecto al formato
especificado en el canal de control (0003). Los datos fuente son correctos,
as que los datos BCD con signo de D00300 se convierten a datos binarios
con signo y se entregan a D00400.
S: D00300
A369 Datos BCD con
signo (1.369)

D: D00400
F A A 7 Datos binarios con signo

501
Instrucciones de conversin Seccin 3-12

3-12-15 DOUBLE SIGNED BCD-TO-BINARY: BISL(472)


Empleo Convierte los datos BCD dobles con signo en datos binarios con signo de
dos canales.

Smbolo de diagrama de
rels BISL(472)

C C: Canal de control

S S: Primer canal fuente

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BISL(472)
Se ejecuta una vez en el diferencial ascendente @BISL(472)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal Control


Especifica el formato BCD con signo. C debe ser de 0000 a 0003.

Especificaciones del
operando rea C S D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 6142
CIO 6143
rea de Trabajo W000 hasta W000 hasta W510
W511
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T0000 hasta T4094
T4095
rea Contador C0000 hasta C0000 hasta C4094
C4095
rea DM D00000 hasta D00000 hasta D32766
D32767
rea EM sin banco E00000 hasta E00000 hasta E32766
E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_32766
En_32767 (n = 0 a C)
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta ---
#0003
(Binario)
Registros de datos DR0 hasta DR15 ---

502
Instrucciones de conversin Seccin 3-12

rea C S D
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BISL(472) convierte los datos BCD dobles con signo de S+1 y S a datos
binarios dobles con signo y escribe el resultado en D+1 y D. En primer lugar
el formato de datos BCD con signo y el rango de los canales S+1 y S se com-
prueban respecto a la configuracin del canal de control (C). Si los datos
fuente son correctos, los datos BCD con signo de S+1 y S se convierten a
datos binarios con signo y se entregan a D+1 y D. Si los datos fuente no son
correctos, el indicador de error se pondr en ON y la instruccin no se ejecu-
tar.

Formato BCD con signo


especificado en C
BCD con signo Binario con signo
BCD con signo Binario con signo

Cuando los datos convertidos son negativos se entregarn como el comple-


mento a 2 y el indicador negativo se pondr en ON. NEGL(161) puede utili-
zarse para determinar el valor absoluto de un nmero binario con signo de
dos canales negativo. Consulte la 3-12-6 DOUBLE 2S COMPLEMENT:
NEGL(161) para obtener informacin detallada.
Un valor de 0 en los datos fuente se tratar como 0 y no causar un error.
As, el estado de los bits 13 hasta 15 de S+1 no se comprueba cuando
C=0000.
Nota Algunas Unidades de E/S especiales entregan datos BCD con signo. Los cl-
culos utilizando estos datos sern normalmente ms sencillos si se convier-
ten antes a datos binarios con signo con BISL(472).
El canal de control especifica el formato de los datos BCD con signo como se
muestra a continuacin.
C = 0000 (Rango de datos de entrada: 999 9999 a 999 9999 BCD)
S+1 S

7 dgitos BCD, 28 bits


Bit con signo (0: positivo, 1: negativo)
Estado de los 3 bits: 0

C = 0001 (Rango de datos de entrada: 7999 9999 a 7999 9999 BCD)


S+1 S

7 dgitos BCD, 28 bits


3 bits del dgito 8 (0 a 7)
Bit con signo (0: positivo, 1: negativo)

503
Instrucciones de conversin Seccin 3-12

C = 0002 (Rango de datos de entrada: 999 9999 a 9999 9999 BCD)


S+1 S

7 dgitos BCD, 28 bits


0 hasta 9: Octavo dgito BCD
F: Negativo ()
A a E: Error
C = 0003 (Rango de datos de entrada: 1999 9999 a 9999 9999 BCD)
S+1 S

7 dgitos BCD, 28 bits


0 hasta 9: Octavo dgito BCD
A: Negative (1)
F: Negativo ()
B a E: Error
La siguiente tabla muestra los posibles valores BCD para cada formato BCD
con signo y los valores binarios con signo correspondientes.
Configu- Valores BCD con signo Valores binarios con signo
racin
C=0000 999 9999 a 1 FF67 6981 hasta FFFF FFFF
0 a 999 9999 0000 0000 hasta 0098 967F
C=0001 7999 9999 a 1 FB3B 4C01 hasta FFFF FFFF
0 a 7999 9999 0000 0000 hasta 04C4 B3FF
C=0002 999 9999 a 1 FF67 6981 hasta FFFF FFFF
0 a 9999 9999 0000 0000 hasta 05F5 E0FF
C=0003 1999 9999 a 1 FECE D301 hasta FFFF FFFF
0 a 9999 9999 0000 0000 hasta 05F5 E0FF
Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si C no est dentro del rango especificado de 0000 hasta
de error 0003.
ON si C=0002 y el dgito de la izquierda de S+1 es A
hasta E.
ON si C=0003 y el dgito de la izquierda de S+1 es B
hasta E.
ON si el contenido de S+1 no es BCD.
OFF en el resto de los casos.
Indicador = ON si D+1 contiene 0000 0000 despus de la ejecucin.
de igual OFF en el resto de los casos.
Indicador N ON si el bit 15 de D+1 est en ON despus de la ejecucin.
de negativo OFF en el resto de los casos.
Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, el formato de datos
BCD dobles con signo y el rango de D00101 y D00100 se comprueban res-
pecto al formato especificado en el canal de control (0002). Los datos fuente
son correctos, as que los datos BCD dobles con signo de D00101 y D00100
se convierten a datos binarios dobles con signo y se entregan a D00201 y
D00200.
S+1: D00101 S: D00100
F345 6789
Datos BCD dobles con
signo (3.456.789)

D+1: D00201 D: D00200


Datos binarios con signo de
FFCB 40EB dos canales

504
Instrucciones de conversin Seccin 3-12

3-12-16 SIGNED BINARY-TO-BCD: BCDS(471)


Empleo Convierte un canal de datos binarios con signo en otro con datos BCD con
signo.

Smbolo de diagrama de
rels BCDS(471)

C C: Canal de control

S S: Canal fuente

D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BCDS(471)
Se ejecuta una vez en el diferencial ascendente @BCDS(471)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operando C: Canal Control


Especifica el formato BCD con signo. C debe ser de 0000 a 0003.
S: Canal fuente
Contiene los datos binarios con signo a convertir. El contenido de S debe
estar dentro del rango vlido del formato BCD especificado en C.
Configuracin Valores permitidos para S
C=0000 FC19 hasta FFFF 0000 hasta 03E7
C=0001 E0C1 hasta FFFF o 0000 hasta 1F3F
C=0002 FC19 hasta FFFF o 0000 hasta 270F
C=0003 F831 hasta FFFF o 0000 hasta 270F

D: Canal de destino
Contiene los datos BCD con signo convertidos. Vase en la siguiente des-
cripcin una explicacin de los formatos BCD.

Especificaciones del
operando rea C S D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)

505
Instrucciones de conversin Seccin 3-12

rea C S D
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta ---
#0003
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 12048 hasta +2047 ,IR5
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BCDS(471) convierte datos binarios con signo en datos BCD con signo. En
primer lugar se comprueban los datos binarios con signo del canal S para
verificar que se encuentran dentro del rango vlido para el formato BCD con
signo especificado en el canal de control (C). Si los datos fuente son correc-
tos, los datos binarios con signo de S se convierten a datos BCD con signo y
se entregan a D. Si los datos fuente no son correctos, el indicador de error se
pondr en ON y la instruccin no se ejecutar.

Formato BCD con signo


especificado en C
Binario con signo BCD con signo

Nota 1. Un valor de 0 en los datos fuente se tratar como 0 y no causar un error.


2. Algunas Unidades de E/S especiales requieren entradas de datos BCD
con signo. BCDS(471) puede utilizarse para convertir datos binarios con
signo para entregar a estas Unidades.
El canal de control especifica el formato BCD con signo que se utilizar para
el resultado, como se muestra a continuacin.
C = 0000 (Rango de datos de salida: 999 hasta 999 BCD)

3 dgitos BCD, 12 bits


Bit con signo (0: positivo, 1: negativo)
Estado de los 3 bits: 0

C = 0001 (Rango de datos de salida: 7999 hasta 7999 BCD)

3 dgitos BCD, 12 bits


3 bits del dgito 4 (0 a 7)
Bit con signo (0: positivo, 1: negativo)

506
Instrucciones de conversin Seccin 3-12

C = 0002 (Rango de datos de salida: 999 hasta 9999 BCD)

3 dgitos BCD, 12 bits


0 hasta 9: Cuarto dgito BCD
F: Negativo ()

C = 0003 (Rango de datos de salida: 1999 hasta 9999 BCD)

3 dgitos BCD, 12 bits


0 hasta 9: Cuarto dgito BCD
A: Negative (1)
F: Negativo ()
La siguiente tabla muestra los valores binarios con signo posibles para cada
formato BCD con signo. Se producir un error si los datos fuente no estn
dentro del rango permitido para el formato BCD con signo especificado.
Configu- Valores binarios con signo Valores BCD con signo
racin
C=0000 FC19 hasta FFFF y 0000 hasta 03E7 999 a 1 y 0 a 999
C=0001 E0C1 hasta FFFF y 0000 hasta 1F3F 7999 a 1 y 0 a 7999
C=0002 FC19 a FFFF hasta 0000 a 270F 999 a 1 y 0 a 9999
C=0003 F831 hasta FFFF y 0000 hasta 270F 1999 a 1 y 0 hasta 9999

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si C no est dentro del rango especificado de 0000 hasta
de error 0003.
ON si C=0000 y los datos fuente no estn dentro de los rangos
permitidos (FC19 hasta FFFF o 0000 hasta 03E7).
ON si C=0001 y los datos fuente no estn dentro de los rangos
permitidos (E0C1 hasta FFFF o 0000 hasta 1F3F).
ON si C=0002 y los datos fuente no estn dentro de los rangos
permitidos (FC19 hasta FFFF o 0000 hasta 270F).
ON si C=0003 y los datos fuente no estn dentro de los rangos
permitidos (F831 hasta FFFF o 0000 hasta 270F).
OFF en el resto de los casos.
Indicador = ON si D es 0000 despus de la ejecucin.
de igual OFF en el resto de los casos.
Indicador N ON si C=0000 0001 y el bit de signo del resultado est en
de nega- ON despus de la ejecucin.
tivo ON si C=0002 y el dgito de la izquierda del resultado es F.
ON si C=0003 y el dgito de la izquierda del resultado es A o F.
OFF en el resto de los casos.

3-12-17 DOUBLE SIGNED BINARY-TO-BCD: BDSL(473)


Empleo Convierte los datos binarios dobles con signo en datos BCD dobles con signo .
Smbolo de diagrama de
rels BDSL(473)

C C: Canal de control

S S: Primer canal fuente

D D: Primer canal de destino

507
Instrucciones de conversin Seccin 3-12

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BDSL(473)
Se ejecuta una vez en el diferencial @BDSL(473)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

Operandos C: Canal Control


Especifica el formato BCD con signo. C debe ser de 0000 a 0003.
S: Primer canal fuente
Los canales fuente S+1 y S contienen los datos binarios dobles con signo a
convertir. Su contenido debe estar dentro del rango vlido del formato BCD
especificado en C.
Configuracin Valores permitidos para S+1 y S
C=0000 FF67 6981 hasta FFFF FFFF o 0000 0000 hasta 0098 967F
C=0001 FB3B 4C01 hasta FFFF FFFF o 0000 0000 hasta 04C4 B3FF
C=0002 FF67 6981 hasta FFFF FFFF o 0000 0000 hasta 05F5 E0FF
C=0003 FECE D301 hasta FFFF FFFF o 0000 0000 hasta 05F5 E0FF

D: Primer canal de destino


Los canales de destino D+1 y D contienen los datos BCD dobles con signo
convertidos. Vase en la siguiente descripcin una explicacin de los forma-
tos BCD.

Especificaciones del
operando rea C S D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 6142
CIO 6143
rea de Trabajo W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta T4094
rea Contador C0000 hasta C4095 C0000 hasta C4094
rea DM D00000 hasta D00000 hasta D32766
D32767
rea EM sin banco E00000 hasta E00000 hasta E32766
E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_32766
En_32767 (n = 0 a C)
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #0003 ---
(Binario)
Registros de datos DR0 hasta DR15 ---

508
Instrucciones de conversin Seccin 3-12

rea C S D
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BDSL(473) convierte los datos binarios dobles con signo en datos BCD
dobles con signo . En primer lugar se comprueban los datos binarios dobles
con signo de S+1 y S para verificar que se encuentran dentro del rango vlido
para el formato BCD con signo especificado en el canal de control (C). Si los
datos fuente son correctos, los datos binarios dobles con signo de S+1 y S se
convierten a datos BCD dobles con signo y se entregan a D+1 y D. Si los
datos fuente no son correctos, el indicador de error se pondr en ON y la ins-
truccin no se ejecutar.

Formato BCD con signo


especificado en C

Binario con signo BCD con signo


Binario con signo BCD con signo

Nota 1. Un valor de 0 en los datos fuente se tratar como 0 y no causar un error.


2. Algunas Unidades de E/S especiales requieren entradas de datos BCD
con signo. BDSL(473) puede utilizarse para convertir datos binarios do-
bles con signo para entregar a estas Unidades.
El canal de control especifica el formato BCD con signo que se utilizar para
el resultado, como se muestra a continuacin.
C = 0000 (Rango de datos de salida: 999 9999 a 9999 999 BCD)
S+1 S

7 dgitos BCD, 28 bits


Bit con signo (0: positivo, 1: negativo)
Estado de los 3 bits: 0

C = 0001 (Rango de datos de salida: 7999 9999 a 9999 7999 BCD)


S+1 S

7 dgitos BCD, 28 bits


3 bits del dgito 8 (0 a 7)
Bit con signo (0: positivo, 1: negativo)

C = 0002 (Rango de datos de salida: 999 9999 a 9999 9999 BCD)


S+1 S

7 dgitos BCD, 28 bits


0 hasta 9: Octavo dgito
BCD F: Negativo ()

509
Instrucciones de conversin Seccin 3-12

C = 0003 (Rango de datos de salida: 1999 9999 a 9999 9999 BCD)


S+1 S

7 dgitos BCD, 28 bits


0 hasta 9: Octavo dgito BCD
A: Negative (1)
F: Negativo ()
La siguiente tabla muestra los valores binarios con signo posibles para cada
formato BCD con signo. Se producir un error si los datos fuente no estn
dentro del rango permitido para el formato BCD con signo especificado.
Configu- Valores binarios con signo Valores BCD con signo
racin
C=0000 FF67 6981 hasta FFFF FFFF 999 9999 a 1
0000 0000 hasta 0098 967F 0 a 999 9999
C=0001 FB3B 4C01 hasta FFFF FFFF 7999 9999 a 1
0000 0000 hasta 04C4 B3FF 0 a 7999 9999
C=0002 FF67 6981 hasta FFFF FFFF 999 9999 a 1
0000 0000 hasta 05F5 E0FF 0 a 9999 9999
C=0003 FECE D301 hasta FFFF FFFF 1999 9999 a 1
0000 0000 hasta 05F5 E0FF 0 a 9999 9999
Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si C no est dentro del rango especificado de 0000 hasta
de error 0003.
ON si C=0000 y los datos fuente no estn dentro del rango:
FF67 6981 hasta FFFF FFFF 0000 0000 hasta 0098 967F.
ON si C=0001 y los datos fuente no estn dentro del rango:
FB3B 4C01 hasta FFFF FFFF 0000 0000 hasta 04C4 B3FF.
ON si C=0002 y los datos fuente no estn dentro del rango:
FF67 6981 hasta FFFF FFFF 0000 0000 hasta 05F5 E0FF.
ON si C=0003 y los datos fuente no estn dentro del rango:
FECE D301 hasta FFFF FFFF 0000 0000 hasta
05F5 E0FF.
OFF en el resto de los casos.
Indicador = ON si D es 0000 despus de la ejecucin.
de igual OFF en el resto de los casos.
Indicador N ON si C=0000 0001 y el bit de signo del resultado est en
de nega- ON despus de la ejecucin.
tivo ON si C=0002 y el dgito de la izquierda del resultado es F.
ON si C=0003 y el dgito de la izquierda del resultado es A o F.
OFF en el resto de los casos.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, el formato de datos


binarios dobles con signo de D00101 y D00100 se comprueban respecto al
formato especificado en el canal de control (0003). Los datos fuente son
correctos, as que los datos binarios dobles con signo de D00101 y D00100
se convierten a datos binarios dobles con signo y se entregan a D00201 y
D00200.
S+1: D00101 S: D00100
FF8B 344F Datos binarios
dobles con signo

D+1: D00201 D: D00200


F765 4321 Datos BCD dobles con
signo (7.654.321)

510
Instrucciones de conversin Seccin 3-12

3-12-18 GRAY CODE CONVERT: GRY(474)


Empleo Convierte el cdigo binario Gray de un canal especfico a datos binarios
estndar, datos BCD o un ngulo con la resolucin especificada.
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0 o
posterior, incluidas CPUs CS1-H, CJ1-H y CJ1M a partir del nmero de lote
030201 o posterior).

Smbolo de diagrama de
rels GRY(474)

C C: Primer canal de control

S S: Canal fuente

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON GRY(474)
Se ejecuta una vez en el diferencial ascendente @GRY(474)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal Control


Especifica los parmetros para la conversin como se muestra a continua-
cin.
15 12 11 87 43 0
No usar
C (0).

Resolucin
Bits 0 1 a F hex (1 a 15 decimal)
0 hex = especfica de usuario en los bits 12 a 15 de C+2.

Modo de conversin
0 hex = Modo binario, 1 hex = Modo BCD, 2 hex = Modo 360
Modo de operacin
0 hex = conversin de cdigo binario Gray

C+1

Compensacin de punto cero (0000 a 7FFF Hex (vatos binarios))


Nota: La compensacin de punto cero que exceda la resolucin especificada en el canal C
de los datos de control no puede especificarse.

15 12 11 0
C+2

Compensacin de resto de encoder (datos binarios)


Nota: El rango que puede seleccionarse depende de la resolucin especificada por el usuario.
Resolucin especificada por el usuario
0 hex = 256, 1 hex = 360, 2 hex = 720, 3 hex = 1,024, 4 a F hex = no utilizar.

Nota: La configuracin anterior es vlida cuando la resolucin est configurada como 0 hex en los bits 00 a 03 de C.

511
Instrucciones de conversin Seccin 3-12

S: Canal fuente
Contiene el cdigo binario Gray a convertir. El rango debe estar dentro del
nmero de bits determinado por la resolucin especificada en los bits 00 a 03
de C. Todos los bits que se encuentren fuera del nmero de bits de la resolu-
cin especificada sern ignorados. Por ejemplo, si la resolucin especificada
es 08 hex y S contiene FFFF hex, el cdigo binario Gray se tomar como
00FF hex.

D: Primer canal de destino


Los canales de destino D+1 y D contienen los resultados de convertir el
cdigo binario Gray a la resolucin especificada en los bits 00 a 03 del canal
de datos de control C y el modo de conversin especificado en los bits 04 a
07 del canal de datos de control C. El canal de la izquierda se entrega a D+1
y el canal de la derecha se entrega a D. Los rangos de datos que se entregan
son como sigue:
Modo binario: 0000 0000 hasta 0000 7FFF hex
Modo BCD: 0000 0000 hasta 0003 2767
Modo 360: 0000 0000 hasta 0003 3599
(0,0 hasta 359,9 en incrementos de 0,1, BCD)

D Canal de la derecha

D+1 Canal de la izquierda

Especificaciones del
operando rea C S D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6142 CIO 6143 CIO 6142
rea de Trabajo W000 hasta W510 W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H510 H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T4094 T0000 hasta T0000 hasta
T4095 T4094
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4094 C4095 C4094
rea DM D00000 hasta D00000 hasta D00000 hasta
D32766 D32767 D32766
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32766 E32767 E32766
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32766 En_32767 En_32766
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 a #FFFF ---
(Binario)
Registros de datos --- DR0 hasta DR15 ---

512
Instrucciones de conversin Seccin 3-12

rea C S D
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin GRY(474) convierte el cdigo binario Gray del canal especificado en S a la


resolucin especificada en C mediante uno de los siguientes modos de con-
versin (binario, BCD, o 360), tambin especificado en C, y coloca los resul-
tados en D y D+1.
Modo de Funcin
conversin
Modo binario El cdigo binario Gray se convierte a datos binarios entre 0000 0000
y 0000 7FFF hex. Se aplica desplazamiento de punto cero y compen-
sacin de resto y el resultado se entrega a D y D+1.
Modo BCD El cdigo binario Gray se convierte a datos BCD. Se aplica desplaza-
miento de punto cero y compensacin de resto, los datos se convier-
ten a BCD entre 0000 0000 y 0003 2767, y el resultado se entrega a
D y D+1.
Modo 360 El cdigo binario Gray se convierte a datos BCD. Se aplica desplaza-
miento de punto cero y compensacin de resto, los datos se convier-
ten a un ngulo entre 0000 0000 y 0000 3599 (0,0 a 359,9 en
incrementos de 0,1), y el resultado se entrega a D y D+1.

Nota 1. GRY(474) se utiliza normalmente al introducir mediante una Unidad de en-


trada de c.c. una seal paralela (2n) desde un encoder absoluto que en-
trega un cdigo binario Gray.
2. Si el canal especificado para S est ubicado en una Unidad de entrada,
los datos de entrada convertidos por GRY(474) sern para el cdigo bina-
rio Gray del ciclo previo de la CPU, es decir, tendrn el tiempo de ciclo an-
terior.

Restricciones Las siguientes restricciones se aplican a GRY(474).

Restricciones en la CPU
GRY(474) slo puede utilizarse para los siguientes modelos de CPU y slo
para CPUs fabricadas a partir del 1 de febrero de 2003 incluido (nmero de
lote 030201 o posterior, incluidas CPUs Ver. 2.0 posterior).
CJ1M-CPU@@
CJ1G-CPU@@H
CJ1H-CPU@@H
CS1G-CPU@@H
CS1H-CPU@@H
CS1D-CPU@@S
La fecha de fabricacin puede confirmarse mediante el nmero de lote del
lateral o la parte inferior de la CPU. Los nmeros de lote indican la fecha de
fabricacin como sigue:
AAMMDD nnnn
AA = dos dgitos de la derecha del ao, MM = el mes como valor numrico,
DD = da del mes, nnnn = nmero de serie
Nota Si GRY(474) se transfiere a una CPU no compatible y el programa se lee
desde una consola de programacin, se visualizar ? para GRY(474) para
indicar una instruccin no vlida. Si GRY(474) se ejecuta con una condicin

513
Instrucciones de conversin Seccin 3-12

de entrada ON en una CPU que no la soporta, se producir un error y se


detendr la ejecucin del programa.

Restricciones para CX-Programmer


GRY(474) slo puede utilizarse con CX-Programmer versin 3.2 o posterior.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los bits 12 a 15 de C no son 0 hex (modo de
error operacin = conversin de cdigo binario Gray).
ON si el desplazamiento de punto cero en C+1 no est
dentro de la resolucin especificada (incluso resoluciones
especficas de usuario).
ON si los bits 04 a 07 de C no son 0 hex (= modo binario),
1 hex (= modo BCD), 2 hex (= Modo 360).
ON si la compensacin de resto de encoder especificada
excede la resolucin configurada por el usuario cuando
los bits 00 a 03 de C son 0 hex (= resolucin especfica de
usuario).
ON si el valor binario convertido es inferior a la
compensacin de resto de encoder cuando los bits 00 a
03 de C son 0 hex (= resolucin especfica de usuario).
ON si el valor binario convertido es inferior a la resolucin
cuando los bits 00 a 03 de C son 0 hex (= resolucin
especfica de usuario).
OFF en el resto de los casos.
Indicador de = OFF en todos los casos.
igual
Indicador de N OFF en todos los casos.
negativo

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, el cdigo binario


Gray de CIO 0010 se convierte de acuerdo a las configuraciones de los datos
de control de D00000 hasta D00002 y el resultado se entrega a D00200 y
D00201.
000000
GRY

C D00000

S 0010

D D00200

514
Instrucciones de conversin Seccin 3-12

Ejemplo 1: Conversin a datos binarios con una resolucin de 8 bits y un


desplazamiento de punto cero de 001A Hex
15 12 11 87 43 0
C: D00000 0 0 0 8

Resolucin: 8 bits
Modo de conversin: Modo binario
Modo de operacin: Conversin de cdigo Gray binario

C+1: D00001 001A

Desplazamiento de punto cero: 001A hex

C+2: D00002 0 000


Resolucin especificada por el usuario: No se utiliza.

S: 0010 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 Cdigo binario Gray


Convertido y desplazado.

D: D00200 0017 Resultado de la conversin binaria


y desplazamiento almacenado.
D+1: D00201 0000

Ejemplo 2: Conversin a datos de ngulo con una resolucin de 10 bits y


un desplazamiento de punto cero de 0151 Hex
15 12 11 87 43 0
C: D00000 0 0 2 A

Resolucin: 10 bits
Modo de conversin: 360 Modo
Modo de operacin: Conversin de cdigo Gray binario
C+1: D00001 0151
Desplazamiento de punto cero: 0151 hex

C+2: D00002 0 000

Resolucin especificada por el usuario: No se utiliza.

S: 0010 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 Cdigo Gray binario


Convertido y desplazado.

D: D00200 3488 Datos de ngulo almacenados.

D+1: D00201 0000

515
Instrucciones de conversin Seccin 3-12

Ejemplo 3: Conversin de datos BCD para un Encoder absoluto OMRON


E6C2-AG5C (Resolucin: 360/rotacin, Compensacin de resto de
encoder: 76) y desplazamiento de punto cero de 0000 Hex
15 12 11 87 43 0
C: D00000 0 0 1 0

Resolucin: Especificado por el usuario


Modo de conversin: Modo BCD
Modo de operacin: Conversin de cdigo Gray binario

C+1: D00001 0000


Desplazamiento de punto cero: 0000 hexadecimal

C+2: D00002 1 04C


Resolucin especificada por el usuario: 360, Compensacin de resto de encoder: 04C hex (76 decimal)

S: 0010 0 0 0 0 0 0 0 0 1 1 1 0 1 0 0 0 Cdigo Gray binario


Convertido y desplazado.

D: D00200 0100 Resultado de la conversin BCD y desplazamiento almacenado.

D+1: D00201 0000

Ejemplo 4: Conversin de datos BCD para un Encoder absoluto OMRON


E6C2-AG5C (Resolucin: 360/rotacin, Compensacin de resto de
encoder: 76) y desplazamiento de punto cero de 000A Hex
15 12 11 87 43 0
C: D00000 0 0 1 0

Resolucin: Especificado por el usuario


Modo de conversin: Modo BCD
Modo de operacin: Conversin de cdigo Gray binario

C+1: D00001 000A


Desplazamiento de punto cero: 000A hex

C+2: D00002 1 04C


Resolucin especificada por el usuario: 360, Compensacin de resto de encoder: 04C hex (76 decimal)

S: 0010 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 1 Cdigo Gray binario


Convertido y desplazado.

D: D00200 0100 Resultado de la conversin BCD y desplazamiento almacenado.

D+1: D00201 0000

516
Instrucciones lgicas Seccin 3-13

3-13 Instrucciones lgicas


Esta seccin describe las instrucciones que llevan a cabo operaciones
lgicas en datos de canal.
Instruccin Nemnico Cdigo de Pgina
funcin
LOGICAL AND ANDW 034 517
DOUBLE LOGICAL AND ANDL 610 519
LOGICAL OR ORW 035 520
DOUBLE LOGICAL OR ORWL 611 522
EXCLUSIVE OR XORW 036 524
DOUBLE EXCLUSIVE OR XORL 612 526
EXCLUSIVE NOR XNRW 037 528
DOUBLE EXCLUSIVE NOR XNRL 613 529
COMPLEMENT COM 029 531
DOUBLE COMPLEMENT COML 614 533

3-13-1 LOGICAL AND: ANDW(034)


Empleo Ejecuta la operacin lgica AND de los bits correspondientes de datos de un
canal y/o constantes.
Smbolo de diagrama de
rels ANDW(034)

I1 I1: Entrada 1

I2 I2: Entrada 2

R R: Canal de
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ANDW(034)
Se ejecuta una vez en el diferencial ascendente @ANDW(034)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea I1 I2 R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)

517
Instrucciones lgicas Seccin 3-13

rea I1 I2 R
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ANDW(034) ejecuta la operacin lgica AND de los datos especificados en I1


e I2 y enva el resultado a R.
Se ejecuta la AND lgica de los bits correspondientes de I1 e I2 en
sucesin.
Cuando el contenido de los bits correspondientes de I1 e I2 es 1 o cuando
uno de ellos es 0, se enviar un 0 al bit correspondiente de R.
I 1, I 2 R
I1 I2 R
1 1 1
1 0 0
0 1 0
0 0 0

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta ANDW(034) el indicador de error se pondr en OFF.


Si como resultado de AND el contenido de R es 0000 hexadecimal, el
indicador de igual se pondr en ON.
Si como resultado de AND el bit de la izquierda de R es 1, el indicador
negativo se pondr en ON.

518
Instrucciones lgicas Seccin 3-13

3-13-2 DOUBLE LOGICAL AND: ANDL(610)


Empleo Ejecuta la operacin lgica AND de los bits correspondientes en datos de
canal y/o constante dobles.

Smbolo de diagrama de
ANDL(610)
rels
I1 I1: Entrada 1

I2 I2: Entrada 2

R R: Canal de
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ANDL(610)
Se ejecuta una vez en el diferencial ascendente @ANDL(610)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea I1 I2 R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

519
Instrucciones lgicas Seccin 3-13

Descripcin ANDL(610) ejecuta la operacin lgica AND de los datos especificados en I1,
I1+1 e I2, I2+1 y enva el resultado a R, R+1.
(I1, I1+1), (I2, I2+1) (R, R+1)
I1, I1+1 I2, I2+1 R, R+1
1 1 1
1 0 0
0 1 0
0 0 0

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = ON cuando el resultado es 0.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta ANDL(610) el indicador de error se pondr en OFF.


Si como resultado de la AND el contenido de R, R+1 es 00000000
hexadecimal, el indicador de igual se pondr en ON.
Si como resultado de la AND el bit de la izquierda de R+1 es 1, el indicador
negativo se pondr en ON.

Ejemplos Cuando la condicin de ejecucin CIO 00000000 est en ON, se ejecuta la


operacin lgica AND de los bits correspondientes de CIO 0011, CIO 0010 y
CIO 0021, CIO 0020 y los resultados se envan a los bits correspondientes de
D00201 y D00200.

S1: 0010 CH S2: 0020 CH D: D00200


S1+1: 0011 CH S2+1: 0021 CH D+1: D00201

Nota: La flecha vertical indica AND lgico.

3-13-3 LOGICAL OR: ORW(035)


Empleo Ejecuta la operacin lgica OR de los bits correspondientes de datos de un
canal y/o constantes.

Smbolo de diagrama de
rels ORW(035)

I1 I1: Entrada 1

I2 I2: Entrada 2
R: Canal de
R
resultado

520
Instrucciones lgicas Seccin 3-13

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ORW(035)
Se ejecuta una vez en el diferencial ascendente @ORW(035)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea I1 I2 R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ORW(035) ejecuta la operacin lgica OR de los datos especificados en I1 e


I2 y entrega el resultado a R.
Se ejecuta la OR lgica de los bits correspondientes de I1 e I2 en
sucesin.
Cuando el contenido de alguno de bits correspondientes de I1 e I2 es 1 o
cuando ambos son 0, se entregar un 0 al bit correspondiente de R.
I1 + I 2 R
I1 I2 R
1 1 1
1 0 1

521
Instrucciones lgicas Seccin 3-13

I1 I2 R
0 1 1
0 0 0

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta ORW(035) el indicador de error se pondr en OFF.


Si como resultado de la OR el contenido de R es 0000 hexadecimal, el
indicador de igual se pondr en ON.
Si como resultado de la OR el bit de la izquierda de R es 1, el indicador
negativo se pondr en ON.

3-13-4 DOUBLE LOGICAL OR: ORWL(611)


Empleo Ejecuta la operacin lgica OR de los bits correspondientes en datos de
canal y/o constantes de dos canales.

Smbolo de diagrama de
rels ORWL(611)

I1 I1: Entrada 1

I2 I2: Entrada 2
R: Canal de
R
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ORWL(611)
Se ejecuta una vez en el diferencial ascendente @ORWL(611)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea I1 I2 R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en retencin H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766

522
Instrucciones lgicas Seccin 3-13

rea I1 I2 R
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ORWL(611) ejecuta la operacin lgica OR de los datos especificados en I1 e


I2 como datos de dos canales y enva el resultado a R, R+1.
Cuando alguno de los bits correspondientes de I1, I1+1, I2, y I2 +1 es 1, se
enva un 1 al bit correspondiente de R+1. Cuando alguno de ellos es 0,
se enva un 0 al bit correspondiente de R+1.
(I1, I1+1) + (I2, I2+1) (R, R+1)
I1, I1+1 I2, I2+1 R, R+1
1 1 1
1 0 1
0 1 1
0 0 0

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = ON cuando el resultado es 0.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta ORWL(611) el indicador de error se pondr en OFF.


Si como resultado de la OR el contenido de R, R+1 es 00000000
hexadecimal, el indicador de igual se pondr en ON.
Si como resultado de la OR el bit de la izquierda de R+1 es 1, el indicador
negativo se pondr en ON.

523
Instrucciones lgicas Seccin 3-13

Ejemplos Cuando la condicin de ejecucin CIO 00000000 est en ON, se ejecuta la


operacin lgica OR de los bits correspondientes de CIO 0021, CIO 0020 y
CIO 0301, CIO 0300 y los resultados se envan a los bits correspondientes de
D00501 y D00500.

S1: 0020 CH S2: 0300 CH D: D00500


S1+1: 0021 CH S2+1: 0301 CH D+1: D00501

Nota: La flecha vertical indica OR lgica.

3-13-5 EXCLUSIVE OR: XORW(036)


Empleo Ejecuta la operacin lgica OR exclusiva de los bits correspondientes en
datos de canal y/o constantes de un canal.

Smbolo de diagrama de
rels XORW(036)

I1 I1: Entrada 1

I2 I2: Entrada 2
R: Canal de
R resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON XORW(036)
Se ejecuta una vez en el diferencial ascendente @XORW(036)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea I1 I2 R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)

524
Instrucciones lgicas Seccin 3-13

rea I1 I2 R
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin XORW(036) ejecuta la operacin lgica OR exclusiva de los datos


especificados en I1 e I2 y enva el resultado a R.
La OR exclusiva se toma de los bits correspondientes de I1 e I2 en
sucesin.
Cuando el contenido de los bits correspondientes de I1 e I2 es distinto, se
enva un 1 al bit correspondiente de R y cuando es el mismo, se enva un
0 al bit correspondiente de R.
I1, I2 + I1, I2 R
I1 I2 R
1 1 0
1 0 1
0 1 1
0 0 0

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta XORW(036) el indicador de error se pondr en OFF.


Si como resultado de la OR el contenido de R es 0000 hexadecimal, el
indicador de igual se pondr en ON.
Si como resultado de la OR el bit de la izquierda de R es 1, el indicador
negativo se pondr en ON.

525
Instrucciones lgicas Seccin 3-13

3-13-6 DOUBLE EXCLUSIVE OR: XORL(612)


Empleo Ejecuta la operacin lgica OR exclusiva de los bits correspondientes de
datos de canal y/o constantes de dos canales.

Smbolo de diagrama de
rels XORL(612)

I1 I1: Entrada 1

I2 I2: Entrada 2
R: Canal de
R resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON XORL(612)
Se ejecuta una vez en el diferencial ascendente @XORL(612)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea I1 I2 R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

526
Instrucciones lgicas Seccin 3-13

Descripcin ORWL(612) ejecuta la operacin lgica OR exclusiva de los datos


especificados en I1 e I2 como datos de dos canales y enva el resultado a R,
R+1.
Cuando el contenido de alguno de los bits correspondientes de I1, I1+1,
I2, e I2 +1 es distinto, se enva un 1 al bit correspondiente de R, R+1.
Cuando alguno de ellos es el mismo, se enva un 0 al bit correspondiente
de R, R+1.
(I1, I1+1), (I2, I2+1) + (I1, I1+1), (I2, I2+1) (R, R+1)
I1, I1+1 I2, I2+1 R, R+1
1 1 0
1 0 1
0 1 1
0 0 0

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta XORL(612) el indicador de error se pondr en OFF.


Si como resultado de la OR exclusiva el contenido de R, R+1 es 00000000
hexadecimal, el indicador de igual se pondr en ON.
Si como resultado de la OR exclusiva el bit de la izquierda de R+1 es 1, el
indicador negativo se pondr en ON.

Ejemplos Cuando la condicin de ejecucin CIO 00000000 est en ON, se ejecuta la


operacin lgica OR exclusiva de los bits correspondientes de CIO 0901,
CIO 0900 y D01001, D01000 y los resultados se envan a los bits
correspondientes de D01201 y D01200.

S: 0900 CH S: D01000 D: D01200


S1+1: 0901 CH S2+1: D01001 D+1: D01201

Nota: El smbolo indica OR exclusiva.

527
Instrucciones lgicas Seccin 3-13

3-13-7 EXCLUSIVE NOR: XNRW(037)


Empleo Realiza la operacin lgica NOR exclusiva de los canales correspondientes
de datos y/o constantes de 1 canal.

Smbolo de diagrama de
rels XNRW(037)

I1 I1: Entrada 1

I2 I2: Entrada 2
R: Canal de
R
resultado
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON XNRW(037)
Se ejecuta una vez en el diferencial ascendente @XNRW(037)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea I1 I2 R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

528
Instrucciones lgicas Seccin 3-13

Descripcin XNRW(037) ejecuta la operacin lgica NOR exclusiva de los datos


especificados en I1 e I2 y enva el resultado a R.
La NOR exclusiva se toma de los bits correspondientes de I1 e I2 en
sucesin.
Cuando el contenido de los bits correspondientes de I1 e I2 es distinto, se
enva un 0 al bit correspondiente de R y cuando es el mismo, se enva un
1 al bit correspondiente de R.
I1, I2 + I1, I2 R
I1 I2 R
1 1 1
1 0 0
0 1 0
0 0 1

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta XNRW(037) el indicador de error se pondr en OFF.


Si como resultado de la NOR el contenido de R es 0000 hexadecimal, el
indicador de igual se pondr en ON.
Si como resultado de la NOR el bit de la izquierda de R es 1, el indicador
negativo se pondr en ON.

3-13-8 DOUBLE EXCLUSIVE NOR: XNRL(613)


Empleo Ejecuta la operacin lgica NOR exclusiva de los bits correspondientes en los
canales de datos y/o constantes de dos canales.

Smbolo de diagrama de
rels XNRL(613)

I1 I1: Entrada 1

I2 I2: Entrada 2
R: Canal de
R
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON XNRL(613)
Se ejecuta una vez en el diferencial ascendente @XNRL(613)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

529
Instrucciones lgicas Seccin 3-13

Especificaciones del
operando rea I1 I2 R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin XNRL(613) ejecuta la operacin lgica NOR exclusiva de los datos


especificados en I1 e I2 y enva el resultado a R, R+1.
Cuando el contenido de alguno de los bits correspondientes de I1, I1+1,
I2, e I2 +1 es distinto, se enva un 0 al bit correspondiente de R, R+1.
Cuando alguno de ellos es el mismo, se enva un 1 al bit correspondiente
de R, R+1.
(I1, I1+1), (I2, I2+1) + (I1, I1+1), (I2, I2+1) (R, R+1)
I1, I1+1 I2, I2+1 R, R+1
1 1 1
1 0 0
0 1 0
0 0 1

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = ON cuando el resultado es 0.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

530
Instrucciones lgicas Seccin 3-13

Precauciones Cuando se ejecuta XNRL(613) el indicador de error se pondr en OFF.


Si como resultado de NOR exclusiva el contenido de R, R+1 es 00000000
hexadecimal, el indicador de igual se pondr en ON.
Si como resultado de NOR exclusivo el bit de la izquierda de R+1 es 1, el
indicador negativo se pondr en ON.

Ejemplos Cuando la condicin de ejecucin CIO 00000000 est en ON, se ejecuta la


operacin lgica NOR exclusiva de los bits correspondientes de CIO 0801,
CIO 0800 y CIO 0101, CIO 0100 y los resultados se entregan a los bits
correspondientes de D00501 y D00500.

S1 : 0800 CH S2: 0100 CH D: D00500


S1+1: 0801 CH S2+1: 0011 CH D+1: D00501

Nota: El smbolo indica NOR exclusiva lgico.

3-13-9 COMPLEMENT: COM(029)


Empleo Pone en OFF todos los bits en ON y viceversa, en Wd.

Smbolo de diagrama de
rels
COM(029)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON COM(029)
Se ejecuta una vez en el diferencial ascendente @COM(029)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767

531
Instrucciones lgicas Seccin 3-13

rea Wd
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin COM(029) invierte el estado de todos los bits especificados en Wd.


WdWd: 1 0 y 0 1
Nota Cuando utilice la instruccin COM tenga en cuenta que el estado de cada bit
cambiar cada ciclo en que la condicin de ejecucin est en ON.

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = ON cuando el resultado es 0.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta COM(029) el indicador de error se pondr en OFF.


Si como resultado de COM el contenido de R es 0000 hexadecimal, el
indicador de igual se pondr en ON.
Si como resultado de COM el bit de la izquierda de R es 1, el indicador
negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, el estado de cada


bit de D00100 se invierte.

532
Instrucciones lgicas Seccin 3-13

3-13-10 DOUBLE COMPLEMENT: COML(614)


Empleo Pone en OFF todos los bits en ON y viceversa, en Wd y Wd+1.

Smbolo de diagrama de
rels COML(614)

Wd Wd: Canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON COML(614)
Se ejecuta una vez en el diferencial ascendente @COML(614)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Wd
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin COML(614) invierte el estado de todos los bits especificados en Wd y Wd+1.


(Wd+1, Wd)(Wd+1, Wd)
Nota Cuando utilice la instruccin COM tenga en cuenta que el estado de cada bit
cambiar cada ciclo en que la condicin de ejecucin est en ON.

533
Instrucciones matemticas especiales Seccin 3-14

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF
Indicador de igual = ON cuando el resultado es 0.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda de R es 1.
negativo OFF en el resto de los casos.

Precauciones Cuando se ejecuta COML(614) el indicador de error se pondr en OFF.


Si como resultado de COML el contenido de R, R+1 es 00000000
hexadecimal, el indicador de igual se pondr en ON.
Si como resultado de COML el bit de la izquierda de R+1 es 1, el indicador
negativo se pondr en ON.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, el estado de cada


bit de D00100 y D00101 se invierte.

3-14 Instrucciones matemticas especiales


Esta seccin describe las instrucciones utilizadas para clculos matemticos
especiales.
Instruccin Nemnico Cdigo de Pgina
funcin
BINARY ROOT ROTB 620 534
BCD SQUARE ROOT ROOT 072 536
ARITHMETIC PROCESS APR 069 540
FLOATING POINT DIVIDE FDIV 079 552
BIT COUNTER BCNT 067 556

3-14-1 BINARY ROOT: ROTB(620)


Empleo Calcula la raz cuadrada del contenido binario con signo de 32 bits (valor
positivo) de los canales especificados y entrega la parte entera del resultado
al canal de resultado especificado.

Smbolo de diagrama de
rels ROTB(620)

S S: Primer canal fuente

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ROTB(620)
Se ejecuta una vez en el diferencial ascendente @ROTB(620)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

534
Instrucciones matemticas especiales Seccin 3-14

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W510 W000 hasta W511
rea de bit en Espera H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A958 A448 hasta A959
rea Temporizador T0000 hasta T4094 T0000 hasta T4095
rea Contador C0000 hasta C4094 C0000 hasta C4095
rea DM D00000 hasta D32766 D00000 hasta D32767
rea EM sin banco E00000 hasta E32766 E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta En_32767
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ROTB(620) calcula la raz cuadrada del nmero binario de 32 bits de S+1 y S
y entrega la parte entera del resultado a R. El resto no entero se descarta.

S+1 S R

Datos binarios (32 bits) Datos binarios (16 bits)

El rango de datos que pueden especificarse para S+1 y S es 0000 0000


hasta 3FFF FFFF. Si se especifica un nmero desde 4000 0000 hasta 7FFF
FFFF, ste se tratar como 3FFF FFFF para el clculo de la raz cuadrada.
Se producir un error si el contenido de los canales fuente es mayor de
7FFF FFFF, es decir, si el bit 15 de S+1 es 1.

535
Instrucciones matemticas especiales Seccin 3-14

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER ON si el bit 15 de S+1 es 1 (ON).
OFF en el resto de los casos.
Indicador de igual = ON cuando el resultado es 0.
OFF en el resto de los casos.
Indicador de OF ON si el contenido de S+1 y S es desde 4000 0000
desbordamiento hasta 7FFF FFFF.
OFF en el resto de los casos.
Indicador de UF OFF
subdesbordamiento
Indicador de N OFF
negativo

Precauciones El contenido de S+1 y S debe ser menor de 8000 0000.


Los operandos de esta instruccin (S+1, S y R) se tratan como valores
binarios. Si los datos de entrada son BCD, use la instruccin ROOT(072).

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, ROTB(620) calcula


la raz cuadrada de los datos de CIO 0002 y CIO 0001 y escribe la parte
entera del resultado en D00100.
CIO 0002 CIO 0001
014B 5A91
Clculo de la raz cuadrada
D00100 (resto descartado)

1234

3-14-2 BCD SQUARE ROOT: ROOT(072)


Empleo Calcula la raz cuadrada del nmero BCD de 8 dgitos y enva la parte entera
del resultado al canal de resultado especificado

Smbolo de diagrama de
rels ROOT(072)

S S: Primer canal fuente

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ROOT(072)
Se ejecuta una vez en el diferencial ascendente @ROOT(072)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W510 W000 hasta W511

536
Instrucciones matemticas especiales Seccin 3-14

rea S R
rea de bit en Espera H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A958 A448 hasta A959
rea Temporizador T0000 hasta T4094 T0000 hasta T4095
rea Contador C0000 hasta C4094 C0000 hasta C4095
rea DM D00000 hasta D32766 D00000 hasta D32767
rea EM sin banco E00000 hasta E32766 E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta En_32767
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#99999999
(BCD)
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ROOT(072) calcula la raz cuadrada del nmero binario de 8 dgitos de S+1 y
S y entrega la parte entera del resultado a R. El resto no entero se descarta.

S+1 S R

Datos BCD (8 dgitos) Datos BCD (4 dgitos)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de S+1 y S no son BCD.
error OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.

Precauciones Los operandos de esta instruccin (S+1, S y R) se tratan como valores BCD.
Si los datos de entrada son binarios, use la instruccin ROTB(620).

Ejemplos Raz cuadrada de un nmero de 8 dgitos


Cuando CIO 000000 est en ON en el siguiente ejemplo, ROOT(072) calcula
la raz cuadrada de los datos de D00001 y D00000 y escribe la parte entera
del resultado en D00100.
Nota Para nmeros de 8 dgitos las cifras despus de la coma decimal se
descartan.

537
Instrucciones matemticas especiales Seccin 3-14

Descartado

Raz cuadrada de un nmero de 4 dgitos


El siguiente ejemplo muestra como ejecutar la raz cuadrada de un nmero
de 4 dgitos y redondear el resultado. Este ejemplo de programa calcula la
raz cuadrada del nmero de 4 dgitos de CIO 0010, redondea el resultado y
lo escribe en CIO 0011 (bsicamente, el nmero de 4 dgitos se multiplica por
10.000 (1002) y el resultado se divide por 100, lo que incrementa la precisin
del clculo por un factor 100.)
Nota Para nmeros de 4 dgitos las cifras despus de la coma decimal se
redondean.

538
Instrucciones matemticas especiales Seccin 3-14

Los valores despus de la coma


decimal deben redondearse.

@BSET 1

@ MOV 2

@ROOT 3

@ MOV

@ MOV

@MOVD

@MOVD

@INC

1,2,3... 1. Los canales fuente (D00101 y D00100) se ponen en 0000 0000.


D00101 D00100
0 0 0 0 0 0 0 0

0000 0000

2. El nmero de 4 dgitos se mueve a D00101.


010
6 0 1 7

D00101 D00100
6 0 1 7 0 0 0 0

3. ROOT(072) calcula la raz cuadrada de D00101 y D00100 y escribe el


resultado en D00102.

539
Instrucciones matemticas especiales Seccin 3-14

D00101 D00100
6017 0000
60, 170, 000 = 7, 756,932
D00100 Clculo de la raz cuadrada
(Resto descartado)
7756

4. D00103 y el canal de resultado, CIO 0011, se ponen en 0000 0000.


D00103 CIO 0011
0 0 0 0 0 0 0 0

0000 0000

5. El resultado del clculo de la raz cuadrada se divide por 100, la parte


entera se escribe en CIO 0011 y el resto va a D00103.

D00102
7 7 5 6

CIO 0011 D00103


0 0 7 7 5 6 0 0

6. Si el contenido de D00103 es mayor de 4900, CIO 0011 aumenta en 1. En


este caso el resultado es 78.
5600 > 4900?
CIO 0011
0 0 7 8

3-14-3 ARITHMETIC PROCESS: APR(069)


Empleo Calcula el seno, coseno o extrapolacin lineal de los datos de origen.
La funcin de extrapolacin lineal permite aproximar una relacin entre X e Y
con segmentos de lnea.

Smbolo de diagrama de
rels APR(069)
C: Canal de
C control
S S: Datos origen

R R: Canal de
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON APR(069)
Se ejecuta una vez en el diferencial ascendente @APR(069)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

540
Instrucciones matemticas especiales Seccin 3-14

Operandos Funcin seno (C = 0000 hexadecimal)


Operando Valor Rango de datos
C 0000 hexadecimal ---
S 0000 hasta 0900 (BCD) 0 a 90
D 0000 hasta 9999 (BCD) 0,0000 a 0,9999
9999 (BCD) 1,0000

Funcin coseno (C = 0001 hexadecimal)


Operando Valor Rango de datos
C 0001 hexadecimal ---
S 0000 hasta 0900 (BCD) 0 a 90
D 0000 hasta 9999 (BCD) 0,0000 a 0,9999
9999 (BCD) 1,0000

Funcin de extrapolacin lineal (C =direccin de rea de datos)


Operando Valor Rango de datos
C Direccin de rea de datos ---
S Datos BCD sin signo de 16 0000 a 9999
bits
Datos binarios sin signo de 0 a 65.535
16 bits
Datos binarios con signo de 32.768 hasta 32.767
16 bits1
Datos binarios con signo de 2.147.483.648 hasta 2.147.483.647
32 bits1
Datos de coma flotante1 ,
3,402823 1038 hasta 1,175494 1038,
1,175494 1038 hasta 3,402823 1038,
+
D Datos BCD sin signo de 16 0000 a 9999
bits
Datos binarios sin signo de 0 a 65.535
16 bits
Datos binarios con signo de 32.768 hasta 32.767
16 bits1
Datos binarios con signo de 2.147.483.648 hasta 2.147.483.647
32 bits1
Datos de coma flotante1 ,
3,402823 1038 hasta 1,175494 1038,
1,175494 1038 hasta 3,402823 1038,
+

Nota 1. Los datos binarios con signo y los datos de coma flotante slo se admiten
en las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
2. Si C es una direccin de canal, APR(069) extrapola el valor Y para el valor
X de S basndose en las coordenadas (segmentos lineales) introducidas
anteriormente en una tabla comenzando por C. Consulte ms detalles en
la siguiente seccinDescripcin.

Especificaciones del
operando rea C S R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511

541
Instrucciones matemticas especiales Seccin 3-14

rea C S R
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores especificados ---
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La operacin de APR(069) depende del canal de control C. Si C es 0000


0001, APR(069) calcula el seno o el coseno de S con S en unidades de
dcimas de grado.
Si C es una direccin de canal, APR(069) extrapola el valor Y para el valor X
de S basndose en coordenadas (segmentos lineales) introducidas
anteriormente en una tabla empezando por C.
Funcin seno (C=0000)
Cuando C es 0000, APR(069) calcula el SIN(S) y escribe el resultado en R. El
rango para S es de 0000 hasta 0900 BCD (0,0 a 90,0) y el rango para R es
de 0000 hasta 9999 BCD (0,0000 hasta 0,9999). El resto del resultado ms
all del cuarto decimal se descarta.
Funcin coseno (C=0001)
Cuando C es 0001, APR(069) calcula el COS(S) y escribe el resultado en R.
El rango para S es de 0000 hasta 0900 BCD (0,0 a 90,0) y el rango para R
es de 0000 hasta 9999 BCD (0,0000 hasta 0,9999). El resto del resultado
ms all del cuarto decimal se descarta.
Extrapolacin lineal
Se especifica extrapolacin lineal APR(069) cuando C es una direccin de
canal.
El contenido del canal C especifica el nmero de coordenadas en una tabla
de datos que empieza en C+2, la forma de los datos origen y si los datos son

542
Instrucciones matemticas especiales Seccin 3-14

BCD o binarios. En las CPUs CS1-H, CJ1-H, CJ1M y CS1D CPU, los datos
origen tambin pueden ser datos binarios con signo o datos de coma flotante.
Datos enteros sin signo (binarios o BCD)
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
C 0 0 0 0 0

Nmero de coordenadas menos uno (m-1),


00 hasta FF hexadecimal (1 m 256)

Especificacin de coma flotante para S y D


0: Datos enteros
Especificacin de datos con signo para S y D
0: Datos binarios sin signo

Formato de datos origen


0: f(x) = f(S)
1: f(x) = f(Xm S)
Formato de datos de salida (D)
0: Binario
1: BCD

Formato de datos de entrada (S)


0: Binario
1: BCD

Datos enteros con signo (binarios)


15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
C 0 0 0 0 1 0 0

Nmero de coordenadas menos uno (m-1),


00 hasta FF hexadecimal (1 m 256)

Especificacin de coma flotante para S y D


0: Datos enteros

Especificacin de longitud de datos para S y D (nota 1)


0: Datos binarios con signo de 16 bits
1: Datos binarios con signo de 32 bits

Especificacin de datos con signo para S y D


1: Datos binarios con signo

Datos de coma flotante de precisin simple


15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
C 0 0 0 0 0 0 1 0

Nmero de coordenadas menos uno (m-1),


00 hasta FF hexadecimal (1 m 256)

Especificacin de coma flotante para S y D


1: Datos de coma flotante de precisin simple

Si se utilizan datos binarios de 16 bits o datos BCD, los datos de segmento


lineal se contienen en los canales C+ 1 hasta C+2m+2. Si se utilizan datos
binarios de 32 bits o datos de coma flotante (slo CPUs CS1-H, CJ1-H y
CJ1M CPU), los datos de segmento lineal se contienen en los canales C+ 1
hasta C+4m+4.
Los bits 00 hasta 07 contienen el nmero (binario) de coordenadas de lnea
menos 1, m1. Los bits 08 hasta 12 no se utilizan. El bit 13 especifica bien
f(x)=f(S) o bien f(x)=f(XmS): OFF especifica f(x)=f(S) y ON especifica
f(x)=f(XmS). El bit 14 determina si la salida es BCD o binaria: OFF especifica

543
Instrucciones matemticas especiales Seccin 3-14

binaria y ON especifica BCD. El bit 15 determina si la entrada es BCD o


binaria: OFF especifica binaria y ON especifica BCD.
Datos BCD de 16 bits, binarios de Datos binarios con Datos de coma
16 bits (con signo o sin signo) o signo de 32 bits flotante
datos BCD de 16 bits
C+1 X0 (16 bits de la derecha) C+1 X0 (16 bits de la derecha)
C+1 X0 (*1)
C+2 X0 (16 bits de la izquierda) C+2 X0 (16 bits de la izquierda)
C+2 Y0
C+3 Y0 (16 bits de la derecha) C+3 Y0 (16 bits de la derecha)
C+3 X1
C+4 Y0 (16 bits de la izquierda) C+4 Y0 (16 bits de la izquierda)
C+4 Y1
C+5 X1 (16 bits de la derecha) C+5 X1 (16 bits de la derecha)
C+5 X2
C+6 X1 (16 bits de la izquierda) C+6 X1 (16 bits de la izquierda)
C+6 Y2
C+7 Y1 (16 bits de la derecha) C+7 Y1 (16 bits de la derecha)
C+8 Y1 (16 bits de la izquierda) C+8 Y1 (16 bits de la izquierda)
Xn
hasta hasta hasta hasta
Yn
C+ (4n+1) Xn (16 bits de la derecha) C+ (4n+1) Xn (16 bits de la derecha)
C+ (4n+2) Xn (16 bits de la izquierda) C+ (4n+2) Xn (16 bits de la izquierda)
C+ (2m+1) Xm
C+ (4n+3) Yn (16 bits de la derecha) C+ (4n+3) Yn (16 bits de la derecha)
C+ (2m+2) Ym
C+ (4n+4) Yn (16 bits de la izquierda) C+ (4n+4) Yn (16 bits de la izquierda)
Nota: Escribir Xm (valor
mx. de X de la tabla) en hasta hasta hasta hasta
el canal C+1 cuando los C+ (4m+1) Xm (16 bits de la derecha) C+ (4m+1) Xm (16 bits de la derecha)
datos de E/S de S y D
contienen datos con C+ (4m+2) Xm (16 bits de la izquierda) C+ (4m+2) Xm (16 bits de la izquierda)
signo (bit 11 de C = 0).
C+ (4m+3) Ym (16 bits de la derecha) C+ (4m+3) Ym (16 bits de la derecha)
C+ (4m+4) Ym (16 bits de la izquierda) C+ (4m+4) Ym (16 bits de la izquierda)

Nota Las coordenadas X deben estar en orden ascendente: X1 < X2 < ... < Xm.
Introduzca todos los valores de (Xn yn) como datos binarios, sin tener en
cuenta el formato de datos especificado en el canal de control C.
Operacin de la funcin de extrapolacin lineal
APR(069) procesa los datos de entrada especificados en S con la siguiente
ecuacin y los datos de sgmento lineal (Xn yn) especificados en la tabla
comenzando por C+1. El resultado se entrega al canal o los canales de
destino especificados con D.
Y (datos binarios

Ymx.

Y0

X0 Xmx.
X (datos binarios)
A B C

1. Para S < X0
Valor convertido = Y0
2. Para X0 S Xmx., si Xn < S < Xn+1
Valor convertido =
Yn +[{Yn + 1 Yn}/{Xn + 1 Xn}] [Datos de entrada S Xn}

544
Instrucciones matemticas especiales Seccin 3-14

Y (datos binarios)
Ecuacin:
Yn+1Yn
f(Y)= Yn+
Xn+1Xn (SXn)
Yn+1

Resultado
D del clculo Yn+1Yn

Yn
Xn+1Xn

SXn

Xn S Xn+1 X (datos binarios)

Datos de entrada

3. Xmx. < S
Valor convertido = Ymx.
Pueden almacenarse hasta 256 puntos finales en la tabla de datos de
segmento lineal comenzando por C+1. Pueden utilizarse las siguientes
5 clases de datos de E/S:
Datos BCD sin signo de 16 bits
Datos binarios sin signo de 16 bits
Datos binarios con signo de 16 bits (slo CPUs CS1-H/CJ1-H/CJ1M)
Datos binarios con signo de 32 bits (slo CPUs CS1-H/CJ1-H/CJ1M)
Datos de coma flotante de precisin simple
(slo CPUs CS1-H/CJ1-H/CJ1M)
Configuracin del formato de datos en el canal C
Datos BCD sin signo de 16 bits
Los datos de entrada y/o los datos de salida pueden ser datos BCD sin
signo de 16 bits. Adems, la funcin de extrapolacin lineal puede
configurarse para operar en el valor especificado en S directamente o en
XmS. (Xm el valor mximo de X de los datos de segmento lineal).
Configuracin del nombre Bit en C Configuracin
Formato de datos de entrada (S) 15 0: Binario
1: BCD
Formato de datos de salida (D) 14 0: Binario
1: BCD
Formato de datos origen 13 0: Operacin en S
1: Operacin en XmS
Especificacin de datos con signo 11 0: Datos sin signo
para S y D
Especificacin de longitud de datos 10 No vlida (fijada en 16 bits)
para S y D
Especificacin de coma flotante 09 0: Datos enteros

545
Instrucciones matemticas especiales Seccin 3-14

Datos binarios sin signo de 16 bits


Los datos de entrada y/o los datos de salida pueden ser datos binarios
sin signo de 16 bits. Adems, la funcin de extrapolacin lineal puede
configurarse para operar en el valor especificado en S directamente o en
XmS. (Xm el valor mximo de X de los datos de segmento lineal).
Configuracin del nombre Bit en C Configuracin
Formato de datos de entrada (S) 15 0: Binario
1: BCD
Formato de datos de salida (D) 14 0: Binario
1: BCD
Formato de datos origen 13 0: Operacin en S
1: Operacin en XmS
Especificacin de datos con signo para S y D 11 0: Datos sin signo
Especificacin de longitud de datos para S y D 10 No vlida
(fijada en 16 bits)
Especificacin de coma flotante 09 0: Datos enteros

Datos binarios con signo de 16 bits (slo CPUs CS1-H, CJ1-H, CJ1M y
CS1D)
Configuracin del nombre Bit en C Configuracin
Formato de datos de entrada (S) 15 0: Binario
Formato de datos de salida (D) 14 0: Binario
Formato de datos origen 13 0
Especificacin de datos con signo para S y D 11 1: Datos con signo
Especificacin de longitud de datos para S y D 10 0: Datos binarios con
signo de 16 bits
Especificacin de coma flotante 09 0: Datos enteros

Datos binarios con signo de 32 bits (slo CPUs CS1-H, CJ1-H, CJ1M y CS1D)
Configuracin del nombre Bit en C Configuracin
Formato de datos de entrada (S) 15 0: Binario
Formato de datos de salida (D) 14 0: Binario
Formato de datos origen 13 0
Especificacin de datos con signo para S y D 11 1: Datos con signo
Especificacin de longitud de datos para S y D 10 1: Datos binarios con
signo de 32 bits
Especificacin de coma flotante 09 0: Datos enteros

Nota Si la Especificacin de la longitud de datos para S y D del bit 10 de


C se configura como 1 y se introduce una constante de 16 bits para
S, los datos de entrada se convertirn a datos binarios con signo de
32 bits antes del clculo de la extrapolacin lineal.
Datos de coma flotante (slo CPUs CS1-H, CJ1-H, CJ1M y CS1D)
Configuracin del nombre Bit en C Configuracin
Formato de datos de entrada (S) 15 0: Binario
Formato de datos de salida (D) 14 0: Binario
Formato de datos origen 13 0
Especificacin de datos con signo para S y D 11 0
Especificacin de longitud de datos para S y D 10 0
Especificacin de coma flotante 09 1: Datos de coma flotante

Nota Si laespecificacin de coma flotante del bit 09 de C se configura


como 1, no puede introducirse una constante para S.

546
Instrucciones matemticas especiales Seccin 3-14

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si C es una constante mayor que 0001.
error ON si C es una direccin de canal pero las coordenadas
X no estn en orden ascendente (X1 X2 ... Xm).
ON si C es una direccin de canal y los bits 9, 11 y 15 de
C indican entrada BCD, pero S no es BCD.
ON si C es una direccin de canal y el bit 9 de C indica
datos en coma flotante, pero S es una constante de un
canal.
ON si C es 0000 0001 pero S no es BCD entre 0000 y
0900.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 de R est en ON.
negativo OFF en el resto de los casos.

Precauciones El resultado real para SIN(90) y COS(0) es 1, pero se entrega 9999


(0,9999) a R.
Se producir un error si C es una constante mayor que 0001.
Se producir un error si se especifica extrapolacin lineal pero las
coordenadas X no estn en orden ascendente (X1 < X2 < ... < Xm).
Se producir un error si se especifica extrapolacin lineal y se especifica
entrada BCD (bit 15 de C ON) pero S no es BCD.
Se producir un error si se especifica una funcin trigonomtrica (C=0000
0001) pero S no es BCD entre 0000 y 0900.

Ejemplos Funcin seno (C: #0000)


El siguiente ejemplo muestra la utilizacin de APR(069) para calcular el seno
de 30.
Datos origen Resultado
S: D00000 R: D00100
0 101 100 101 10-1 102 103 104
0 3 0 0 5 0 0 0
-1 Los datos resultantes tienen cuatro dgitos
Ajuste los datos origen en 10
grados. (0000 hasta 0900, BCD) significativos, los dgitos quinto y siguien-
tes se ignoran (0000 hasta 9999, BCD)

Funcin coseno (C: #0001)


El siguiente ejemplo muestra la utilizacin de APR(069) para calcular el
coseno de 30.
(SIN(30) = 0,8660)
Datos origen Resultado
S: D00010 R: D00200
0 101 100 101 101 102 103 104
0 3 0 0 8 6 6 0
Ajuste los datos origen en 10-1 Los datos resultantes tienen cuatro
grados. (0000 hasta 0900, BCD) dgitos significativos, los dgitos quinto
y siguientes se ignoran
(0000 hasta 9999, BCD)

547
Instrucciones matemticas especiales Seccin 3-14

Extrapolacin lineal (C: Direccin de canal)


Utilizando datos BCD o binarios sin signo de 16 bits
APR(069) procesa los datos de entrada especificados en S basndose en los
datos de control de C y los datos de segmento lineal especificados en la tabla
comenzando por C+1. El resultado se entrega a D.
Y Canal Coordenada
C+1 Xm
Ym (valor mx. de X)
C+2 Y0
Y4
C+3 X1
C+4 Y1
Y3
Y1 C+5 X2
C+6 Y2
Y2
Y0
C+(2m+1) Xm
X (valor mx. de X)
X0 X1 X2 X3 X4 Xm C+(2m+2) Ym

Yn = f(Xn) y0 = f(X0)
Asegrese de que Xn1 < Xn en todos los casos.
Introduzca todos los valores de (Xn yn) como datos binarios.
Este ejemplo muestra como construir una extrapolacin lineal con 12
coordenadas. El bloque de datos es continuo, como debe ser, desde D00000
hasta D00026 (C hasta C + (2 12 + 2)). Los datos de entrada se toman de
CIO 0010 y el resultado se entrega a CIO 0011.

Contenido Coordenada Bit Bit


15 00

D00000 000B Hexadecimal 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1


D00001 05F0 Hexadecimal X12
Y0 x=S (m-1 = 11: 12
D00002 0000 Hexadecimal segmentos lineales)
D00003 0005 Hexadecimal X1
D00004 0F00 Hexadecimal Y1 Salida y entrada
D00005 001A Hexadecimal X2 binarias
D00006 0402 Hexadecimal Y2

D00025 05F0 Hexadecimal X12
D00026 1F20 Hexadecimal Y12

En este caso el canal fuente CIO 0010 contiene 0014 y se entrega f(0014) =
0726 a R, CIO 0011.

548
Instrucciones matemticas especiales Seccin 3-14

$1F20

$0F00

(x,y)
$0726

$0402

X
(0,0)
$0005 $0014 $001A $05F0

A continuacin se muestra el clculo de la extrapolacin lineal


0402 0F00
Y = 0F00 + --------------------------------- ( 0014 0015 )
001A 0005
= 0F00 ( 0086 000F )
= 0726 Los valores son todos hexadecimales (Hexadecimal).

549
Instrucciones matemticas especiales Seccin 3-14

Extrapolacin lineal (C: Direccin de canal)


Utilizando datos binarios con signo de 32 bits
(slo CS1-H, CJ1-H, CJ1M y CS1D)
En este ejemplo se utiliza APR(069) para convertir la altura del fluido de un
depsito basndose en la forma del depsito.
Tabla de conversin de altura de fluido en volumen
(Datos binarios con signo de 32 bits)

C+1 X0 (16 bits de la derecha)


C+2 X0 (16 bits de la izquierda)
C+3 Y0 (16 bits de la derecha)
C+4 Y0 (16 bits de la izquierda)
C+5 X1 (16 bits de la derecha)
Variacin del
estndar = X C+6 X1 (16 bits de la izquierda)
C+7 Y1 (16 bits de la derecha)
Volumen de fluido C+8 Y1 (16 bits de la izquierda)
=Y
hasta hasta

C+ (4n+1) Xn (16 bits de la derecha)


C+ (4n+2) Xn (16 bits de la izquierda)
C+ (4n+3) Yn (16 bits de la derecha)
C+ (4n+4) Yn (16 bits de la izquierda)
hasta hasta

C+ (4m+1) Xm (16 bits de la derecha)


C+ (4m+2) Xm (16 bits de la izquierda)
C+ (4m+3) Ym (16 bits de la derecha)
C+ (4m+4) Ym (16 bits de la izquierda)
000000

APR
C
Extrapolacin lineal de la tabla
S
R

Y: Volumen de fluido

Ym

R
R+1 X: Variacin del estndar
Rango de datos Y:
2.147.483.648 La extrapolacin lineal puede
hasta 2.147.483.647 utilizar datos origen con signo si se
usan datos binarios con signo de
32 bits.

Y0 0
X0

Xm

S
S+1
Datos binarios con signo de
32 bits de alta resolucin Rango de datos X: 2.147.483.648 hasta 2.147.483.647

550
Instrucciones matemticas especiales Seccin 3-14

Extrapolacin lineal (C: Direccin de canal)


Utilizando datos de coma flotante
(slo CPUs CS1-H, CJ1-H, CJ1M y CS1D)
En este ejemplo se utiliza APR(069) para convertir la altura del fluido de un
depsito basndose en la forma del depsito.
C+1 X0 (16 bits de la derecha)
Tabla de conversin de C+2 X0 (16 bits de la izquierda)
altura de fluido en volumen
(Datos de coma flotante) C+3 Y0 (16 bits de la derecha)
C+4 Y0 (16 bits de la izquierda)
C+5 X1 (16 bits de la derecha)
C+6 X1 (16 bits de la izquierda)
C+7 Y1 (16 bits de la derecha)

Volumen de C+8 Y1 (16 bits de la izquierda)


Alrura del fluido = X
fluido = Y ha hasta

C+ (4n+1) Xn (16 bits de la derecha)


C+ (4n+2) Xn (16 bits de la izquierda)
C+ (4n+3) Yn (16 bits de la derecha)
C+ (4n+4) Yn (16 bits de la izquierda)
ha hasta

C+ (4m+1) Xm (16 bits de la derecha)


C+ (4m+2) Xm (16 bits de la izquierda)
C+ (4m+3) Ym (16 bits de la derecha)
C+ (4m+4) Ym (16 bits de la izquierda)
000000

APR
C
S
Extrapolacin lineal de la tabla
R

Y: Volumen de fluido

Ym

Rango de datos Y:
, 3,402823 1038 hasta R La extrapolacin lineal puede
1,175494 1038, proporcionar una curva suave de
R+1 alta resolucin si se utilizan
1,175494 1038 hasta
datos de coma flotante.
3,402823 1038, o bien +

Y0
0
X0 Xm X: Altura del fluido

S
S+1
Datos de coma
flotante de alta
resolucin Rango de datos X:
, 3,402823 1038 hasta 1,175494 1038,
1.175494 1038 hasta 3,402823 1038, o bien +

551
Instrucciones matemticas especiales Seccin 3-14

3-14-4 FLOATING POINT DIVIDE: FDIV(079)


Empleo Divide un nmero de coma flotante de 7 dgitos por otro. Los nmeros de
coma flotante se expresan en notacin cientfica (mantisa de 7 dgitos y
exponente de 1 dgito).

Smbolo de diagrama de
rels FDIV(079)
Dd: Primer canal de
Dd dividendo
Dr: Primer canal de
Dr divisor
R R: Primer canal de
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FDIV(079)
Se ejecuta una vez en el diferencial ascendente @FDIV(079)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Dd Dr R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

552
Instrucciones matemticas especiales Seccin 3-14

Descripcin FDIV(079) divide el valor de coma flotante de Dd y Dd+1 por el valor de Dr y


Dr+1 t entrega el resultado en R y R+1.
Cociente

R+1 R

Dr+1 Dr Dd+1 Dd

Para representar los valores de coma flotante se utilizan los siete dgitos de la
derecha para la mantisa y el dgito de la izquierda para el exponente, como
se muestra en el siguiente diagrama. El dgito de la izquierda puede estar
entre 0 y F; los exponentes positivos varan entre 0 y 7 y los exponentes
negativos entre 8 y F (0 a 7). Los 7 dgitos de la derecha deben ser BCD.

Primer canal Segundo canal


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

mantisa (4 dgitos de la derecha)


exponente (0 a 7) mantisa (3 dgitos de la izquierda)
signo del exponente 0: +
1: = 0.1111113 x 102

Otros dos ejemplos de valores de coma flotante son:


6123 4567: 0,1234567 106 (6 = 0110 binario)
B123 4567: 0,1234567 103 (B = 1011 binario)
La siguiente tabla muestra los valores mximos y mnimos permitidos.
Lmite Hexadecimal de 8 dgitos Coma flotante
Valor mximo 7999 9999 0,9999999 107
Valor mnimo F000 0001 0,0000001 107
(Divisor y dividendo)
Valor mnimo F100 0000 0,1000000 107
(Resultado)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si la mantisa (7 dgitos de la izquierda) de Dd+1 y Dd
error no es BCD.
ON si la mantisa (7 dgitos de la izquierda) de Dr+1 y Dr
no es BCD.
ON si el divisor (Dr+1 y Dr) es 0.
ON si el resultado no est entre 0,1000000 107 y
0,9999999 107.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.

Precauciones El resultado se expresa como un valor de coma flotante, de tal manera que
tiene 7 dgitos significativos. Los dgitos octavo y siguientes de descartan.
El resultado debe estar entre 0,1000000 107 y 0,9999999 107.

553
Instrucciones matemticas especiales Seccin 3-14

Ejemplos Divisin de coma flotante bsica


Cuando CIO 000000 est en ON en el siguiente ejemplo, FDIV(079) divide el
nmero de coma flotante de D00101 y D00100 por el nmero de coma
flotante de CIO 0021 y CIO 0020 y escribe el resultado en D00301 y D00300.
D00101 D00100
A 5 6 7 0 0 0 0 0,5670000 102

CIO 0021 CIO 0020


B 1 2 3 4 5 6 7 0,1234567 103

D00301 D00300
2 4 5 9 2 7 0 3 0,4592703 102

Divisin de coma flotante de dos nmeros BCD


En este ejemplo el nmero BCD de 4 dgitos de D00000 se divide por el
nmero BCD de 4 dgitos de D00001 y el resultado de coma flotante se
escribe en D00003 y D00002.
Para llevar a cabo la divisin de coma flotante, el valor BCD de D00000 se
convierte a formato de coma flotante en D00101 y D00100 y el valor BCD de
D00001 se convierte a formato de coma flotante en D00103 y D00102.

554
Instrucciones matemticas especiales Seccin 3-14

@ MOV
1

@ MOV

@ MOV

@ MOV

@MOVD 3

@MOVD 4

@MOVD 5

@MOVD 6

@FDIV 7

1,2,3... 1. D00100 y D00102 se configuran como 0000.


2. D00101 y D00103 se configuran como 4000.

D00101 D00100 D00103 D00102


4 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0

4000 0000 4000 0000

3. MOVD(083) se utiliza para mover los dgitos de los canales fuente


originales a los dgitos correctos de los formatos de coma flotante de
2 canales.

555
Instrucciones matemticas especiales Seccin 3-14

D00000 D00001
3 4 5 2 0 0 7 9

D00101 D00100 D00103 D00102


4 3 4 5 2 0 0 0 4 0 0 7 9 0 0 0

4. FDIV(079) divide el nmero de coma flotante de D00101 y D00100 por el


nmero de coma flotante de D00103 y D00102.

D00101 D00100
4 3 4 5 2 0 0 0 0,3452000 104

D00103 D00102
4 0 0 7 9 0 0 0 0,0079000 104

D00003 D00002
2 4 3 6 9 6 2 0 0,4369620 102

3-14-5 BIT COUNTER: BCNT(067)


Empleo Cuenta el nmero total de bits en ON de los canales especificados.

Smbolo de diagrama de
rels BCNT(067)

N N: Nmero de canales

S S: Primer canal fuente

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BCNT(067)
Se ejecuta una vez en el diferencial ascendente @BCNT(067)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de canales


El nmero de canales debe ser desde 0000 hasta FFFF (1 hasta
65.535 canales).
S: Primer canal fuente
S y S+(N1) deben estar en el mismo rea de datos.

Especificaciones del
operando rea N S R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095

556
Instrucciones matemticas especiales Seccin 3-14

rea N S R
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0001 hasta ---
#FFFF (binario) o
bien &1 hasta
&65.535
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BCNT(067) cuenta el nmero total de bits que estn en ON en todos los
canales comprendidos entre S y S+(N-1) y entrega el resultado en R.

Canales N
Cuenta el nmero de
hasta bits en ON.
S+(N1) Resultado binario

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N es 0000.
error ON si el resultado excede FFFF.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.

Precauciones Se producir un error si N=0000 o el resultado excede FFFF.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, BCNT(067) cuanta


el nmero total de bits en ON en los 10 canales de CIO 0100 hasta CIO 0109
y escribe el resultado en D00100.

000000
BCNT Cuenta el nmero de
N &10 bits en ON (35).
hasta hasta
S D100
R D00100
R:D00100 23 hexadecimal
(35 decimal)

557
Instrucciones matemticas de coma flotante Seccin 3-15

3-15 Instrucciones matemticas de coma flotante


Las instrucciones matemticas de coma flotante convierten datos y realizan
operaciones aritmticas de coma flotante. Las CPUs de la serie CS/CJ
soportan las siguientes instrucciones.
Instruccin Nemnico Cdigo de funcin Pgina
FLOATING TO 16-BIT FIX 450 563
FLOATING TO 32-BIT FIX 451 565
16-BIT TO FLOATING FLT 452 566
32-BIT TO FLOATING FLTL 453 568
FLOATING-POINT ADD +F 454 570
FLOATING-POINT F 455 572
SUBTRACT
FLOATING-POINT *F 456 574
MULTIPLY
FLOATING-POINT DIVIDE /F 457 576
DEGREES TO RADIANS RAD 458 578
RADIANS-TO-DEGREES DEG 459 579
SINE SIN 460 581
COSINE COS 461 583
TANGENT TAN 462 585
ARC SINE ASIN 463 587
ARC COSINE ACOS 464 589
ARC TANGENT ATAN 465 591
SQUARE ROOT SQRT 466 593
EXPONENT EXP 467 595
LOGARITHM LOG 468 597
EXPONENTIAL POWER PWR 840 599

Adems de las instrucciones listadas anteriormente, las CPUs CS1-H/CJ1-H


soportan las siguientes comparaciones e instrucciones de conversin de
coma flotante. Consulte en 3-16-21 Instrucciones de entrada de coma flotante
de doble precisin sobre las instrucciones de coma flotante de doble
precisin.
Instruccin Nemnico Cdigo de funcin Pgina
Instrucciones de LD, AND, OR 329 hasta 334 600
comparacin de smbolos +
de coma flotante de =F, <>F, <F, <=F, >F,
precisin simple o >=F
(*CS1-H/CJ1-H/CJ1M
solamente)
FLOATING-POINT TO FSTR 448 604
ASCII (*CS1-H/CJ1-H/
CJ1M solamente)
ASCII TO FLOATING- FVAL 449 609
POINT (*CS1-H/CJ1-H/
CJ1M solamente)

Formato de datos Los datos de coma flotante expresan nmeros reales utilizando un signo,
exponente y mantisa. Cuando se expresan los datos en formato de coma
flotante se aplica la siguiente frmula.
Nmero real = (1)s 2e127 (1.f)
s: Signo
e: Exponente
f: Mantisa

558
Instrucciones matemticas de coma flotante Seccin 3-15

El formato de datos de coma flotante cumple las normas IEEE754. Los datos
se expresan en 32 bits, como sigue:
Signo Exponente Mantisa
s e f
31 30 23 22 0

Datos N de bits Contenido


s: signo 1 0: positivo; 1: negativo
e: exponente 8 El valor de exponente (e) puede estar entre 0 y
255. El exponente real es el valor restante
despus de sustraer 127 de e, resultando en un
rango de 127 a 128. e=0 y e=255 expresan
nmeros especiales.
f: mantisa 23 La parte de mantisa de los datos binarios de
coma flotante se ajusta a la frmula 2,0 > 1,f
1,0.

Nmero de dgitos El nmero de dgitos efectivos para datos de coma flotante es de 24 bits para
binarios (aproximadamente siete dgitos decimales).

Datos de coma flotante Los siguientes datos pueden expresarse mediante datos de coma flotante:

3,402823 x 1038 valor 1,402398 x 1045
0
1,402398 x 1045 valor 3,402823 x 1038
+
No es n nmero (NaN)
45 45
1,402398 x 10 1,402398 x 10


- 3,402823 x 1038 1 0 1 3,402823 x 1038 +

Nmeros especiales Los formatos para NaN, y 0 son los siguientes:


NaN*: e = 255, f 0
+: e = 255, f = 0, s= 0
: e = 255, f = 0, s= 1
0: e=0
*NaN (no es un nmero) es un nmero de coma flotante no vlido. La ejecucin
de las instrucciones de clculo de coma flotante no resultar en NaN.

Escritura de datos de Cuando se especifica coma flotante para el formato de datos en el display de
coma flotante edicin de la memoria de E/S de CX-Programmer, la introduccin de nmeros
decimales estndar se convierte automticamente al formato de coma flotante
mostrado anteriormente (formato IEEE754) y se escribe en la memoria de E/S.
Los datos escritos en el formato IEEE754 se convierten automticamente a
formato decimal estndar cuando se monitorizan en el display.
15 7 6 0
n f
n+1 s e

El usuario no necesita tener en cuenta el formato de datos IEEE754 cuando


lee y escribe datos de coma flotante. Solamente es necesario recordar que
los valores de coma flotante ocupan dos canales cada uno.

559
Instrucciones matemticas de coma flotante Seccin 3-15

Nmeros expresados como valores de coma flotante.


Pueden utilizarse los siguientes tipos de nmeros de coma flotante.
Mantisa (f) Exponente (e)
0 No 0 y Todos 1s (255)
no todos 1s
0 0 Nmero Infinito
No 0 Nmero no normalizado NaN
normalizado

Nota Un nmero no normalizado es uno cuyo valor absoluto es demasiado


pequeo para ser expresado como un nmero normalizado. Los nmeros no
normalizados tienen menos dgitos significativos. Si el resultado de los
clculos es un nmero no normalizado (incluyendo los resultados
intermedios) se reducir el nmero de dgitos significativos.
Nmeros normalizados Los nmeros normalizados expresan nmeros reales. El bit de signo ser 0
para un nmero positivo y 1 para un nmero negativo.
El exponente (e) se expresar desde 1 hasta 254 y el exponente real ser
127 menos, es decir, 126 hasta 127.
La mantisa (f) se expresar desde 0 hasta 233 1 y se asume que, en la
mantisa real, el bit 233 es 1 y que el punto binario sigue inmediatamente
despus de l.
Los nmeros normalizados se expresan como sigue:
(1)(signo s) x 2(exponente e)127 x (1 + mantisa x 223)
Ejemplo
31 30 23 22 0
1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Signo:
Exponente: 128 127 = 1
Mantisa: 1 + (222 + 221) x 223 = 1 + (21 + 22) = 1 + 0,75 = 1,75
Valor: 1,75 x 21 = 3,5
Nmeros no normalizados Los nmeros no normalizados expresan nmeros reales con valores
absolutos muy pequeos. El bit de signo ser 0 para un nmero positivo y 1
para un nmero negativo.
El exponente (e) ser 0 y el exponente real ser 126.
La mantisa (f) se expresar desde 1 hasta 233 1 y se asume que, en la
mantisa real, el bit 233 es 0 y que el punto binario sigue inmediatamente
despus de l.
Los nmeros no normalizados se expresan como sigue:
(1)(signo s) x 2126 x (1 + mantisa x 223)
Ejemplo
31 30 23 22 0
0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Signo:
Exponente: 126
Mantisa: 0 + (222 + 221) x 223 = 0 + (21 + 22) = 0 + 0,75 = 0,75
Valor: 0,75 x 2126

Cero Los valores de +0,0 y 0,0 pueden expresarse configurando el signo como 0
para positivo o como 1 para negativo. El exponente y la mantisa sern ambos
0. Tanto +0,0 como 0,0 son equivalentes a 0,0. Consulte en el apartado
siguiente Resultados aritmticos de coma flotante las diferencias producidas
por el signo de 0,0.

560
Instrucciones matemticas de coma flotante Seccin 3-15

Infinito Los valores de + y pueden expresarse configurando el signo como 0


para positivo o como 1 para negativo. El exponente ser 255 (28 1) y la
mantisa ser 0.

NaN NaN (no es un nmero) se produce cuando el resultado de los clculos, como
0,0/0,0, /, o bien , no se corresponde con un nmero o infinito. El
exponente ser 255 (28 1) y la mantisa no ser 0.
Nota No hay especificaciones para el signo de NaN o el valor del campo de
mantisa (otras que no sean no ser 0).

Resultados aritmticos de coma flotante


Redondeo de resultados Se utilizarn los siguientes mtodos para redondear resultados cuando el
nmero de dgitos del resultado preciso de las operaciones aritmticas de
coma flotante exceda los dgitos significativos de las expresiones de
procesamiento interno.
Si el resultado es cercano a una o dos expresiones de coma flotante internas
se utilizar la expresin ms cercana. Si el resultado est a medio camino
entre dos expresiones de coma flotante internas, el resultado se redondear
de tal manera que el dgito de la mantisa sea 0.

Desbordamientos, Los desbordamientos se entregarn bien como infinito positivo o negativo,


subdesbordamientos y dependiendo del signo del resultado. Los subdesbordamientos se entregarn
clculos no vlidos bien como cero positivo o negativo, dependiendo del signo del resultado.
Los clculos no vlidos resultarn en NaN. Los clculos no vlidos incluyen
sumar infinito a un nmero con el signo opuesto, restar infinito de un nmero
con el signo opuesto, multiplicar cero e infinito, dividir cero por cero o dividir
infinito por infinito.
El valor del resultado puede no ser correcto si se produce un desbordamiento
cuando se convierte un nmero de coma flotante en un entero.

Preauciones al utilizar Deben aplicarse las siguientes precauciones al utilizar cero, infinito y NaN.
valores especiales La suma de cero positivo y cero negativo es cero positivo.
La diferencia entre ceros del mismo signo es cero positivo.
Si cualquier operando es NaN, los resultados sern NaN.
Cero positivo y cero negativo se tratan como equivalentes en
comparaciones.
Los test de comparacin o equivalencia en uno o ms NaN siempre sern
verdaderos para != y siempre sern falsos para el resto de las instrucciones.

Resultados de clculo de coma flotante


Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como . Si el
resultado es positivo se entregar como +; si es negativo como .
El indicador de igual se pondr en ON cuando el exponente (e) y la mantisa
(f) sean cero despus de un clculo. Un resultado de entregar tambin como
cero cuando el valor absoluto del resultado sea menor que el valor mnimo
que pueda expresarse para datos de coma flotante. Es este caso el indicador
de subdesbordamiento se pondr en ON.

Ejemplo En este ejemplo de programa se proporcionan las coordenadas del eje X y


del eje Y (x y) mediante el contenido BCD de 4 dgitos de D00000 y D00001.
Se buscan la distancia (r) desde el origen y el ngulo (, en grados) y se
entregan a D00100 y D00101. En el resultado, todo lo que se encuentre a la
derecha de la coma decimal se descarta.

561
Instrucciones matemticas de coma flotante Seccin 3-15

P (100, 100)
y

0 x
000000
(1)
D00000
D00200

D00001
D00201

D00200
D00202

D00201
D00204

(2)
D00202
D00202
D00206

D00204
D00204
D00208

D00206
D00208
D00210

D00210
D00212

(3)
D00204
D00202
D00214

D00214
D00216

D00216
D00218

(4)
D00212
D00220

D00218
D00221

D00220
D00100

D00221
D00101

562
Instrucciones matemticas de coma flotante Seccin 3-15

Clculos Ejemplo
2
Distancia r = + y 2
Distancia r = 100 2 + 100 2 = 141,4214
y 100
ngulo = tan-1 ( ) ngulo = tan-1 ( ) = 45,0
x 100

Contenidos DM
D00000 #0100 x D00100 0141 r
(BCD) (BCD)
D00001 #0100 y D00101 0045
(BCD) (BCD)
1. Esta seccin del programa convierte los datos de BCD a coma flotante.
a) El rea de datos desde D00200 hacia adelante se utiliza como un rea
de trabajo.
b) En primer lugar se utiliza BIN(023) para convertir temporalmente los
datos BCD a datos binarios y posteriormente se utiliza FLT(452) para
convertir los datos binarios a datos de coma flotante.
c) El valor de x que ha sido convertido a datos de coma flotante se
entrega a D00203 y D00202.
d) El valor de y que ha sido convertido a datos de coma flotante se
entrega a D00205 y D00204.
2. Para buscar la distancia r, se utilizan instrucciones matemticas de coma
flotante para calcular la raz cuadrada de x2+y2. El resultado se entrega a
D00213 y D00212 como datos de coma flotante.
3. Para buscar el ngulo , se utilizan instrucciones matemticas de coma
flotante para calcular la tan1 (y/x). ATAN(465) entrega el resultado en
radianes, as que se utiliza DEG(459) para convertirlo a grados. El
resultado se entrega a D00219 y D00218 como datos de coma flotante.
4. Los datos se vuelven a convertir de coma flotante a BCD.
a) En primer lugar se utiliza FIX(450) para convertir temporalmente los
datos de coma flotante a datos binarios y posteriormente se utiliza
BCD(024) para convertir los datos binarios a datos BCD.
b) La distancia r se entrega a D00100.
c) El ngulo se entrega a D00101.

3-15-1 FLOATING TO 16-BIT: FIX(450)


Empleo Convierte un valor de coma flotante de 32 bits en datos binarios con signo de
16 bits y entrega el resultado en el canal de resultado especificado.

Smbolo de diagrama de
rels FIX(450)

S S: Primer canal fuente

R R: Canal de resultado

563
Instrucciones matemticas de coma flotante Seccin 3-15

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FIX(450)
Se ejecuta una vez en el diferencial ascendente @FIX(450)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W510 W000 hasta W511
rea de bit en Espera H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A958 A448 hasta A959
rea Temporizador T0000 hasta T4094 T0000 hasta T4095
rea Contador C0000 hasta C4094 C0000 hasta C4095
rea DM D00000 hasta D32766 D00000 hasta D32767
rea EM sin banco E00000 hasta E32766 E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta En_32767
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin FIX(450) convierte la parte entera del nmero de coma flotante de 32 bits de
S+1 y S (formato IEEE754) a datos binarios con signo de 16 bits y entrega el
resultado a R.

S+1 S Datos de coma flotante


(32 bits)

Datos binarios con signo


R (16 bits)
Slo se convierte la parte entera de los datos de coma flotante: la parte
fraccionaria se descarta. La parte entera de los datos de coma flotante debe
estar en el rango entre 32.768 hasta 32.767.

564
Instrucciones matemticas de coma flotante Seccin 3-15

Ejemplos de conversin:
Un valor de coma flotante de 3,5 se convierte a 3.
Un valor de coma flotante de 3,5 se convierte a 3.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de S+1 y S no son un nmero (NaN).
error ON si la parte entera de S+1 y S no est dentro del
rango de 32.768 hasta 32.767.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 del resultado est en ON.
negativo OFF en el resto de los casos.
Precauciones El contenido de S+1 y S debe ser datos de coma flotante y la parte entera
debe estar en el rango de 32.768 hasta 32.767.

3-15-2 FLOATING TO 32-BIT: FIXL(451)


Empleo Convierte un valor de coma flotante de 32 bits en datos binarios con signo de
32 bits y entrega el resultado en los canales de resultado especificados.
Smbolo de diagrama de
rels FIXL(451)

S S: Primer canal fuente

R R: Primer canal de
resultado
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FIXL(451)
Se ejecuta una vez en el diferencial ascendente @FIXL(451)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

565
Instrucciones matemticas de coma flotante Seccin 3-15

rea S R
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ()IR15

Descripcin FIXL(451) convierte la parte entera del nmero de coma flotante de 32 bits de
S+1 y S (formato IEEE754) a datos binarios con signo de 32 bits y entrega el
resultado a R+1 y R.

S+1 S Datos de coma flotante


(32 bits)

Datos binarios con signo


R+1 R (32 bits)
Slo se convierte la parte entera de los datos de coma flotante: la parte
fraccionaria se descarta. (La parte entera de los datos de coma flotante debe
estar en el rango entre 2.147.483.648 hasta 2.147.483.647).
Ejemplos de conversin:
Un valor de coma flotante de 2.147.483.640,5 se convierte a 2.147.483.640.
Un valor de coma flotante de 214.748.340,5 se convierte a 214.748.340.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de S+1 y S no son un nmero (NaN).
error ON si la parte entera de S+1 y S no est dentro del
rango de 2.147.483.648 hasta 2.147.483.647.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0000 0000.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 de R+1 est en ON despus de la
negativo ejecucin.
OFF en el resto de los casos.

Precauciones El contenido de S+1 y S debe ser datos de coma flotante y la parte entera
debe estar en el rango de 2.147.483.648 hasta 2.147.483.647.

3-15-3 16-BIT TO FLOATING: FLT(452)


Empleo Convierte un valor binario con signo de 16 bits en datos de coma flotante de
32 bits y entrega el resultado en los canales de resultado especificados.
Smbolo de diagrama de
rels FLT(452)

S S: Canal fuente

R R: Primer canal
de resultado

566
Instrucciones matemticas de coma flotante Seccin 3-15

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FLT(452)
Se ejecuta una vez en el diferencial ascendente @FLT(452)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta T4094
rea Contador C0000 hasta C4095 C0000 hasta C4094
rea DM D00000 hasta D32767 D00000 hasta D32766
rea EM sin banco E00000 hasta E32767 E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta En_32766
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin FLT(452) convierte el valor binario con signo de 16 bits de S a datos de coma
flotante de 32 bits (formato IEEE754) y entrega el resultado a R+1 y R. Se
aade un 0 despus de la coma decimal en el resultado de coma flotante.

S Datos binarios con signo


(16 bits)
Datos de coma flotante
R+1 R
(32 bits)
Slo los valores dentro del rango de 32.768 hasta 32.767 pueden
especificarse para S. Para convertir datos binarios con signo fuera de este
rango utilice FLTL(453).

567
Instrucciones matemticas de coma flotante Seccin 3-15

Ejemplos de conversin:
Un valor binario con signo de 3 se convierte a 3,0.
Un valor binario con signo de 3 se convierte a 3,0.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones El contenido de S debe contener datos binarios con signo con un valor
(decimal) en el rango de 32.768 hasta 32.767.

3-15-4 32-BIT TO FLOATING: FLTL(453)


Empleo Convierte un valor binario con signo de 32 bits en datos de coma flotante de
32 bits y entrega el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels FLTL(453)

S S: Primer canal fuente


R: Primer canal de
R
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FLTL(453)
Se ejecuta una vez en el diferencial ascendente @FLTL(453)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

568
Instrucciones matemticas de coma flotante Seccin 3-15

rea S R
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin FLTL(453) convierte el valor binario con signo de 32 bits de S+1 y S a datos
de coma flotante de 32 bits (formato IEEE754) y entrega el resultado a R+1 y
R. Se aade un 0 despus de la coma decimal en el resultado de coma
flotante.

S+1 S Datos binarios con signo


(32 bits)
Datos de coma flotante
R+1 R (32 bits)
Los datos binarios con signo dentro del rango desde 2.147.483.648 hasta
2.147.483.647 pueden especificarse para S+1 y S. El valor de coma flotante
tiene 24 dgitos binarios significativos (bits). El resultado no ser exacto si se
convierte un nmero mayor de 16.777.215 (el valor mximo que puede
expresarse en 24 bits) mediante FLTL(453).
Ejemplos de conversin:
Un valor binario con signo de 16.777.215 se convierte a 16.777.215,0.
Un valor binario con signo de 16.777.215 se convierte a 15.777.215,0.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones El resultado no ser exacto si se convierte un nmero con un valor absoluto


mayor de 16.777.215 (el valor mximo que puede expresarse en 24 bits).

569
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-5 FLOATING-POINT ADD: +F(454)


Empleo Suma dos nmeros de coma flotante de 32 bits y entrega el resultado en los
canales de resultado especificados.

Smbolo de diagrama de
rels +F(454)

Au Au: Primer canal de sumando

Ad AD: Primer canal de nmero adicional

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON +F(454)
Se ejecuta una vez en el diferencial ascendente @+F(454)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Au Ad R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

570
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin +F(454) aade el nmero de coma flotante de 32 bits de Ad+1 y Ad al nmero


de coma flotante de 32 bits de Au+1 y Au y entrega el resultado a R+1 y R
(los datos de coma flotante deben estar en formato EEE754).

Au+1 Au Sumando (datos de coma flotante,


32 bits)
Nmero adicional (datos de coma
+ Ad+1 Ad
flotante, 32 bits)

Resultado (datos de coma flotante,


R+1 R 32 bits)
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Las distintas combinaciones de datos de sumando y nmero adicional
producen los resultados mostrados en la siguiente tabla.
Sumando
Adicional 0 Valor + NaN
numrico
0 0 Valor +
numrico
Valor Valor Ver nota 1. +
numrico numrico
+ + + + Ver nota 2.
Ver nota 2.
NaN Ver nota 2.

Nota 1. Los resultados pueden ser cero (incluyendo subdesbordamientos), un


valor numrico, +, o bien .
2. El indicador de error se pondr en ON y la instruccin no se ejecutar.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de sumando o nmero adicional no son
error reconocidos como datos de coma flotante.
ON si los datos de sumando o nmero adicional no son
un nmero (NaN).
ON si se aaden + y .
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de 32 bits.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de 32 bits.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos de sumando (Au+1 y Au) y de nmero adicional (Ad+1 y Ad) deben
estar en formato de datos de coma flotante IEEE754.

571
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-6 FLOATING-POINT SUBTRACT: F(455)


Empleo Resta un nmero de coma flotante de 32 bits de otro y entrega el resultado en
los canales de resultado especificados.

Smbolo de diagrama de
rels F(455)

Mi Mi: Primer canal de minuendo

Su Su: Primer canal de sustraendo

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON F(455)
Se ejecuta una vez en el diferencial ascendente @F(455)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Mi Su R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

572
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin F(455) resta el nmero en coma flotante de 32 bits de Su+1 y Su al nmero


en coma flotante de 32 bits de Mi+1 y Mi y entrega el resultado a R+1 y R (los
datos en coma flotante deben estar en formato EEE754).

Mi+1 Mi Minuendo (datos en coma flotante, 32 bits)

Su
Su+1 Sustraendo (datos en coma flotante, 32 bits)

R+1 R Resultado (datos en coma flotante, 32 bits)

Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos en coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos en coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Las distintas combinaciones de datos de minuendo y sustraendo producen
los resultados mostrados en la siguiente tabla.
Minuendo
Sustraendo 0 Valor + NaN
numrico
0 0 Valor +
numrico
Valor Valor Ver nota 1. +
numrico numrico
+ Ver nota 2.
+ + + Ver nota 2.
NaN Ver nota 2.

Nota 1. Los resultados pueden ser cero (incluyendo subdesbordamientos), un


valor numrico, +, o bien .
2. El indicador de error se pondr en ON y la instruccin no se ejecutar.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de minuendo o sustraendo no son
error reconocidos como datos en coma flotante.
ON si los datos de minuendo o sustraendo no son un
nmero (NaN).
ON si + se resta de +.
ON si se resta de .
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor en coma
flotante de 32 bits.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor en coma
miento flotante de 32 bits.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos de minuendo (Mi+1 y Mi) y de sustraendo (Su+1 y Su) deben estar
en formato de datos en coma flotante IEEE754.

573
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-7 FLOATING-POINT MULTIPLY: *F(456)


Empleo Multiplica dos nmeros de coma flotante de 32 bits y entrega el resultado en
los canales de resultado especificados.

Smbolo de diagrama de
rels *F(456)
Md: Primer canal de
Md multiplicando
Mr Mr: Primer canal de
multiplicador
R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON *F(456)
Se ejecuta una vez en el diferencial ascendente @*F(456)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Md Mr R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

574
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin *F(456) multiplica el nmero de coma flotante de 32 bits de Md+1 y Md al


nmero de coma flotante de 32 bits de Mr+1 y Mr y entrega el resultado a
R+1 y R (los datos de coma flotante deben estar en formato EEE754).

Md+1 Md Multiplicando (datos de coma flotante, 32 bits)

Mr+1 Mr Multiplicador (datos de coma flotante, 32 bits)

R+1 R Resultado (datos de coma flotante, 32 bits)

Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Las distintas combinaciones de datos de multiplicando y multiplicador
producen los resultados mostrados en la siguiente tabla.
Multiplicando
Multi- 0 Valor + NaN
plicador numrico
0 0 0 Ver nota 2. Ver nota 2.
Valor 0 Ver nota 1. +/ +/
numrico
+ Ver nota 2. +/ +
Ver nota 2 +/ +
NaN Ver nota 2.

Nota 1. Los resultados pueden ser cero (incluyendo subdesbordamientos), un


valor numrico, +, o bien .
2. El indicador de error se pondr en ON y la instruccin no se ejecutar.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de multiplicando o multiplicador no son
error reconocidos como datos de coma flotante.
ON si los datos de multiplicando o multiplicador no son
un nmero (NaN).
ON si se multiplican + y 0.
ON si se multiplican y 0.
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de 32 bits.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de 32 bits.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos de multiplicando (Md+1 y Md) y multiplicador (Mr+1 y Mr) deben
estar en formato de datos de coma flotante IEEE754.

575
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-8 FLOATING-POINT DIVIDE: /F(457)


Empleo Divide un nmero en coma flotante de 32 bits por otro y entrega el resultado
en los canales de resultado especificados.

Smbolo de diagrama de
rels /F(457)
Dd: Primer canal de
Dd dividendo
Dr Dr: Primer canal de
divisor
R R: Primer canal de
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON /F(457)
Se ejecuta una vez en el diferencial ascendente @/F(457)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Dd Dr R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

576
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin /F(457) divide el nmero de coma flotante de 32 bits de Dd+1 y Dd al nmero


de coma flotante de 32 bits de Dr+1 y Dr y entrega el resultado a R+1 y R (los
datos de coma flotante deben estar en formato EEE754).

Dd+1 Dd Dividendo (datos de coma flotante,


32 bits)

Dr+1 Dr
Divisor (datos de coma flotante,
32 bits)

Resultado (datos de coma flotante,


R+1 R 32 bits)
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Las distintas combinaciones de datos de dividendo y divisor producen los
resultados mostrados en la siguiente tabla.
Dividendo
Divisor 0 Valor + NaN
numrico
0 Ver nota 3. +/ +
Valor 0 Ver nota 1. +/ +/
numrico
+ 0 Ver nota 2. Ver nota 3. Ver nota 3.
0 Ver nota 2. Ver nota 3. Ver nota 3.
NaN Ver nota 3.

Nota 1. Los resultados pueden ser cero (incluyendo subdesbordamientos), un


valor numrico, +, o bien .
2. Los resultados sern cero para subdesbordamientos.
3. El indicador de error se pondr en ON y la instruccin no se ejecutar.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de dividendo o divisor no son
error reconocidos como datos de coma flotante.
ON si los datos de dividendo o divisor no son un
nmero (NaN).
ON si el dividendo y el divisor son 0.
ON si el dividendo y el divisor son ambos + o bien .
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de 32 bits.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de 32 bits.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos de dividendo (Dd+1 y Dd) y divisor (Dr+1 y Dr) deben estar en
formato de datos de coma flotante IEEE754.

577
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-9 DEGREES TO RADIANS: RAD(458)


Empleo Cambia un nmero de coma flotante de 32 bits de grados a radianes y
entrega el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels RAD(458)

S S: Primer canal fuente


R: Primer canal de
R resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RAD(458)
Se ejecuta una vez en el diferencial ascendente @RAD(458)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

578
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin RAD(458) convierte el nmero en coma flotante de 32 bits de S+1 y S de


grados a radianes y entrega el resultado a R y R+1 (los datos origen en coma
flotante deben estar en formato IEEE754).
S+1 S Origen (grados, datos de coma flotante de
32 bits)

Resultado (radianes, datos de coma flotante


R+1 R de 32 bits)
Los grados se convierten a radianes mediante la frmula siguiente:
Grados /180 = radianes
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos en coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos en coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error en coma flotante.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor en coma
flotante de 32 bits.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de 32 bits.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

3-15-10 RADIANS TO DEGREES: DEG(459)


Empleo Cambia un nmero de coma flotante de 32 bits de radianes a grados y
entrega el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels DEG(459)

S S: Primer canal fuente

R R: Primer canal
de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DEG(459)
Se ejecuta una vez en el diferencial ascendente @DEG(459)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

579
Instrucciones matemticas de coma flotante Seccin 3-15

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin DEG(459) convierte el nmero de coma flotante de 32 bits de S+1 y S de


radianes a grados y entrega el resultado a R+1 y R (los datos origen de coma
flotante deben estar en formato IEEE754).

S+1 S Origen (radianes, datos de coma flotante


de 32 bits)

Resultado (grados, datos de coma flotante


R+1 R de 32 bits)
Los radianes se convierten a grados mediante la frmula siguiente:
Radianes 180/ = grados
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.

580
Instrucciones matemticas de coma flotante Seccin 3-15

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de 32 bits.
Indicador de UF ON si el valor absoluto del resultado es demasiado
subdesborda- bajo como para ser expresado como un valor de coma
miento flotante de 32 bits.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

3-15-11 SINE: SIN(460)


Empleo Calcula el seno de un nmero de coma flotante de 32 bits (en radianes) y
entrega el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels SIN(460)

S S: Primer canal fuente

R R: Primer canal de
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SIN(460)
Se ejecuta una vez en el diferencial ascendente @SIN(460)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)

581
Instrucciones matemticas de coma flotante Seccin 3-15

rea S R
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF (binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SIN(460) calcula el seno del ngulo (en radianes) expresado como un valor
de coma flotante de 32 bits de S+1 y S y entrega el resultado a R+1 y R.
(Los datos origen de coma flotante deben estar en formato IEEE754).

SIN S+1 S Origen (datos de coma flotante


de 32 bits)

Resultado (datos de coma


R+1 R flotante de 32 bits)
Especifique el ngulo deseado (65.535 hasta 65.535) en radianes de S+1 y
S. Si el ngulo est fuera del rango 65.535 hasta 65.535, se producir un
error y la instruccin no se ejecutar. Encontrar ms informacin sobre
grados y radianes en 3-15-19 LOGARITHM: LOG(468) DEGREES-TO-
RADIANS: RAD(458).
El siguiente diagrama muestra la relacin entre el ngulo y el resultado.
R S: Datos de ngulo (radin)
R: Resultado (seno)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son un nmero (NaN).
error ON si el valor absoluto de los datos origen excede de
65.535.
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF OFF
desbordamiento

582
Instrucciones matemticas de coma flotante Seccin 3-15

Nombre Etiqueta Operacin


Indicador de UF OFF
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

3-15-12 COSINE: COS(461)


Empleo Calcula el coseno de un nmero de coma flotante de 32 bits (en radianes) y
entrega el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels COS(461)

S S: Primer canal fuente

R: Primer canal de
R resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON COS(461)
Se ejecuta una vez en el diferencial ascendente @COS(461)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)

583
Instrucciones matemticas de coma flotante Seccin 3-15

rea S R
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin COS(461) calcula el coseno del ngulo (en radianes) expresado como un
valor en coma flotante de 32 bits de S+1 y S y entrega el resultado a R+1 y R.
(Los datos origen en coma flotante deben estar en formato IEEE754).

COS S+1 S Origen (datos en coma flotante


de 32 bits)

Resultado (datos en coma


R+1 R flotante de 32 bits)
Especifique el ngulo deseado (65.535 hasta 65.535) en radianes en S+1 y
S. Si el ngulo est fuera del rango 65.535 hasta 65.535, se producir un
error y la instruccin no se ejecutar. Encontrar ms informacin sobre la
conversin de grados a radianes en 3-15-9 DEGREES TO RADIANS:
RAD(458) DEGREES-TO-RADIANS:
El siguiente diagrama muestra la relacin entre el ngulo y el resultado.
R S: Datos de ngulo
(radin) R: Resultado
(coseno)

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER ON si los datos origen no son un nmero (NaN).
ON si el valor absoluto de los datos origen excede
de 65.535.
OFF en el resto de los casos.
Indicador de igual = ON si el exponente y la mantisa del resultado son 0.
OFF en el resto de los casos.
Indicador de OF OFF
desbordamiento
Indicador de UF OFF
subdesbordamiento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

584
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-13 TANGENT: TAN(462)


Empleo Calcula la tangente de un nmero de coma flotante de 32 bits (en radianes) y
entrega el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels TAN(462)

S S: Primer canal fuente

R R: Primer canal de
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TAN(462)
Se ejecuta una vez en el diferencial ascendente @TAN(462)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

585
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin TAN(462) calcula la tangente del ngulo (en radianes) expresada como un
valor de coma flotante de 32 bits de S+1 y S y entrega el resultado a R+1 y R.
(Los datos origen de coma flotante deben estar en formato IEEE754).

TAN S+1 S Origen (datos de coma flotante


de 32 bits)

Resultado (datos de coma


R+1 R flotante de 32 bits)

Especifique el ngulo deseado (65.535 hasta 65.535) en radianes de S+1 y


S. Si el ngulo est fuera del rango 65.535 hasta 65.535, se producir un
error y la instruccin no se ejecutar. Encontrar ms informacin sobre la
conversin de grados a radianes en 3-15-9 DEGREES TO RADIANS:
RAD(458) DEGREES-TO-RADIANS:
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
El siguiente diagrama muestra la relacin entre el ngulo y el resultado.
R
S: Datos de ngulo
(radin)
R: Resultado
(tangente)

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER ON si los datos origen no son un nmero (NaN).
ON si el valor absoluto de los datos origen excede de
65.535.
OFF en el resto de los casos.
Indicador de igual = ON si el exponente y la mantisa del resultado son 0.
OFF en el resto de los casos.
Indicador de OF OFF
desbordamiento
Indicador de sub- UF OFF
desbordamiento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

586
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-14 ARC SINE: ASIN(463)


Empleo Calcula el arco seno de un nmero de coma flotante de 32 bits y entrega el
resultado en los canales de resultado especificados. (La funcin de arco seno
es la inversa de la funcin de seno; devuelve el ngulo que produce un valor
de seno dado entre 1 y 1.)

Smbolo de diagrama de
rels ASIN(463)

S S: Primer canal fuente

R R: Primer canal de
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ASIN(463)
Se ejecuta una vez en el diferencial ascendente @ASIN(463)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

587
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin ASIN(463) calcula el ngulo (en radianes) para un valor de seno expresado
como un valor de coma flotante de 32 bits de S+1 y S y entrega el resultado a
R+1 y R.
(Los datos origen de coma flotante deben estar en formato IEEE754).

SIN
-1
S+1 S Origen (datos de coma flotante
de 32 bits)

Resultado (datos de coma flotante


R+1 R
de 32 bits)
Los datos origen deben estar entre 1,0 y 1,0. Si el valor absoluto de los
datos origen excede de 1,0 se producir un error y la instruccin no se
ejecutar.
El resultado se entrega a los canales R+1 y R como un ngulo (en radianes)
en el rango de /2 hasta /2.
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
R

S: Datos de entrada (valor de


seno) R: Resultado (radianes)

, ,

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen no son un nmero (NaN).
ON si el valor absoluto de los datos origen excede de
1,0.
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF OFF
desbordamiento
Indicador de UF OFF
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

588
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-15 ARC COSINE: ACOS(464)


Empleo Calcula el arco coseno de un nmero en coma flotante de 32 bits y entrega el
resultado en los canales de resultado especificados. (La funcin de arco
coseno es la inversa de la funcin de coseno; devuelve el ngulo que
produce un valor de coseno dado entre 1 y 1.)

Smbolo de diagrama de
rels ACOS(464)

S S: Primer canal fuente

R R: Primer canal de
resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ACOS(464)
Se ejecuta una vez en el diferencial ascendente @ACOS(464)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

589
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin ACOS(464) calcula el ngulo (en radianes) para un valor de coseno


expresado como un valor de coma flotante de 32 bits de S+1 y S y entrega el
resultado a R+1 y R.
(Los datos origen de coma flotante deben estar en formato IEEE754).

COS-1 S+1 S Origen (datos de coma flotante


de 32 bits)

Resultado (datos de coma


R+1 R flotante de 32 bits)
Los datos origen deben estar entre 1,0 y 1,0. Si el valor absoluto de los
datos origen excede de 1,0 se producir un error y la instruccin no se
ejecutar.
El resultado se entrega a los canales R+1 y R como un ngulo (en radianes)
en el rango de 0 hasta .
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
S: Datos de entrada (valor
R de coseno)
R: Resultado (radianes)

, ,

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen no son un nmero (NaN).
ON si el valor absoluto de los datos origen excede de
1,0.
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF OFF
desbordamiento
Indicador de UF OFF
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

590
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-16 ARC TANGENT: ATAN(465)


Empleo Calcula el arco tangente de un nmero de coma flotante de 32 bits y entrega
el resultado en los canales de resultado especificados. (La funcin de arco
tangente es la inversa a la funcin de tangente; devuelve el ngulo que
produce un valor de tangente dado).

Smbolo de diagrama de
rels ATAN(465)

S S: Primer canal fuente

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ATAN(465)
Se ejecuta una vez en el diferencial ascendente @ATAN(465)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

591
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin ATAN(465) calcula el ngulo (en radianes) para un valor de tangente


expresado como un valor de coma flotante de 32 bits de S+1 y S y entrega el
resultado a R+1 y R.
(Los datos origen de coma flotante deben estar en formato IEEE754).

TAN1 Origen (datos de coma flotante


S+1 S
de 32 bits)

R+1 R Resultado (datos de coma flotante


de 32 bits)
El resultado se entrega a los canales R+1 y R como un ngulo (en radianes)
en el rango de /2 hasta /2.
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
R

S: Datos de entrada
(tangente)
R: Resultado (radianes)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF OFF
desbordamiento
Indicador de UF OFF
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

592
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-17 SQUARE ROOT: SQRT(466)


Empleo Calcula la raz cuadrada de un nmero de coma flotante de 32 bits y entrega
el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels SQRT(466)

S S: Primer canal fuente

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SQRT(466)
Se ejecuta una vez en el diferencial ascendente @SQRT(466)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

593
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin SQRT(466) calcula la raz cuadrada del nmero de coma flotante de 32 bits
de S+1 y S y entrega el resultado a R+1 y R (los datos origen de coma
flotante deben estar en formato IEEE754).
Origen (datos de coma flotante
S+1 S
de 32 bits)

Resultado (datos de coma flotante


R+1 R
de 32 bits)
Los datos origen deben ser positivos: si son negativos se producir un error y
la instruccin no se ejecutar.
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
R

S: Datos de entrada
R: Resultado

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen son negativos.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de 32 bits.
Indicador de UF OFF
subdesborda-
miento
Indicador de N OFF
negativo

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

594
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-18 EXPONENT: EXP(467)


Empleo Calcula el exponencial natural (de base e) de un nmero de coma flotante de
32 bits y entrega el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels EXP(467)

S S: Primer canal fuente

R R: Primer canal
de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON EXP(467)
Se ejecuta una vez en el diferencial ascendente @EXP(467)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta 4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

595
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin EXP(467) calcula el exponencial natural (base e) del nmero de coma


flotante de 32 bits de S+1 y S y entrega el resultado a R+1 y R. Es decir,
EXP(467) calcula ex (x = origen) y entrega el resultado a R+1 y R.

S+1 S Origen (datos de coma flotante


e de 32 bits)

Resultado (datos de coma


R+1 R flotante de 32 bits)
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Nota La constante e es 2,718282.
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
R

S: Datos de entrada
R: Resultado

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de 32 bits.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de 32 bits.
Indicador de N OFF
negativo

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

596
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-19 LOGARITHM: LOG(468)


Empleo Calcula el logaritmo natural (de base e) de un nmero de coma flotante de 32
bits y entrega el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels LOG(468)

S S: Primer canal fuente

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON LOG(468)
Se ejecuta una vez en el diferencial ascendente @LOG(468)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

597
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin LOG(468) calcula el logaritmo natural (base e) del nmero de coma flotante
de 32 bits de S+1 y S y entrega el resultado a R+1 y R.

S+1 S Origen (datos de coma flotante


re- e de 32 bits)
gistro
Resultado (datos de coma
R+1 R flotante de 32 bits)
Los datos origen deben ser positivos: si son negativos se producir un error y
la instruccin no se ejecutar.
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Nota La constante e es 2,718282.
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
R
S: Datos de entrada
R: Resultado

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen son negativos.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de 32 bits.
Indicador de UF OFF
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S+1 y S deben estar en formato de datos de coma
flotante IEEE754.

598
Instrucciones matemticas de coma flotante Seccin 3-15

3-15-20 EXPONENTIAL POWER: PWR(840)


Empleo Eleva un nmero de coma flotante de 32 bits a la potencia de otro nmero de
coma flotante de 32 bits.

Smbolo de diagrama de
rels PWR(840)

B B: Primer canal de base

E E: Primer canal de
exponente
R R: Primer canal de
resultado
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PWR(840)
Se ejecuta una vez en el diferencial ascendente @PWR(840)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea B E R
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF ---
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

599
Instrucciones matemticas de coma flotante Seccin 3-15

Descripcin PWR(840) eleva el nmero de coma flotante de 32 bits de B+1 y B a la


potencia del nmero de coma flotante de 32 bits de E+1 y E. Es decir,
PWR(840) calcula XY (X = B+1 y B; Y = E+1 y E).
Datos de
E+1 E exponente
B+1 B R+1 R

Datos de base

Por ejemplo, cuando los canales de base (B+1 y B) contienen 3,1 y los
canales de exponente (E+1 y E) contienen 3, el resultado es 3,13 o bien
29,791.
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON.
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si la base (B+1 y B) o el exponente (E+1 y E) no se
error reconocen como datos de coma flotante.
ON si la base (B+1 y B) o el exponente (E+1 y E) no son
un nmero (NaN).
ON si la base (B+1 y B) es 0 y el exponente (E+1 y E)
es menor que 0 (divisin por 0).
ON si la base (B+1 y B) es negativa y el exponente
(E+1 y E) no es entero. (Raz de un nmero negativo)
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de 32 bits.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de 32 bits.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones La base (B+1 y B) y el exponente (E+1 y E) deben tener formato de datos de


coma flotante IEEE754.

3-15-21 Instrucciones de comparacin de coma flotante de precisin simple


Empleo Estas instrucciones de comparacin de entrada comparan dos valores de
coma flotante de precisin simple (constantes IEEE754 de 32 bits y / o los
contenidos de canales especificados) y crean una condicin de ejecucin ON
cuando la condicin de comparacin es verdadera.
Estas instrucciones son admitidas slo por las CPUs CS1-H, CJ1-H, CJ1M y
CS1D.
Nota Consulte en 3-7-1 Instrucciones de comparacin de entrada (300 hasta 328)
ms detalles sobre las instrucciones de comparacin de entrada binaria con
signo y sin signo y en 3-16-21 Instrucciones de entrada de coma flotante de
doble precisin ms detalles sobre las instrucciones de comparacin de
entrada de coma flotante de doble precisin.

600
Instrucciones matemticas de coma flotante Seccin 3-15

Smbolo de diagrama de
rels Smbolo y opciones

S1 S1: Datos de comparacin 1

S2 S2: Datos de comparacin 2

Variaciones
Variaciones Crea ON cada ciclo que la comparacin es Instruccin de
verdadera. comparacin de
entrada
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S1 S2
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta #FFFFFFFF (binario)
Registros de datos ---
Registros de ndice IR0 hasta IR15 (slo para datos sin signo)
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin de comparacin de entrada compara los datos especificados


en S1 y S2 como valores de coma flotante de precisin simple (datos
IEEE754 de 32 bits) y crea una condicin de ejecucin ON cuando la
condicin de comparacin es verdadera. Cuando los datos estn
almacenados en canales, S1 y S2 especifique el primero de los dos canales
que contienen los datos de 32 bits. Tambin es posible introducir los datos de
como flotante como una constante hexadecimal de 8 dgitos.

601
Instrucciones matemticas de coma flotante Seccin 3-15

Introduccin de las instrucciones


Las instrucciones de comparacin de entrada se tratan de la misma manera
que las instrucciones LD, AND y OR para controlar la ejecucin de
instrucciones subsecuentes.
Entrada Operacin
LD La instruccin puede conectarse directamente a la barra de bus izquierda.
AND La instruccin no puede conectarse directamente a la barra de bus izquierda.
OR La instruccin puede conectarse directamente a la barra de bus izquierda.

Condicin de ejecucin ON
Conexin LD si el resultado de la
comparacin es verdadero.
<F

Condicin de ejecucin ON si
Conexin AND el resultado de la comparacin
es verdadero.
<F

Conexin OR

<F

Condicin de ejecucin ON si el
resultado de la comparacin es
verdadero.

Opciones
Con los tres tipos de entrada y seis smbolos existen 18 posibles
combinaciones diferentes.
Smbolo Opcin (formato de datos)
= (Igual que) F: Datos de coma flotante de precisin simple
<> (Distinto de)
< (Menor que)
<= (Menor o igual que)
> (Mayor que)
>= (Mayor o igual que)

Resumen de instrucciones de comparacin de entrada


En la siguiente tabla se muestran los cdigos de funcin, nemnicos,
nombres y funciones de las 18 instrucciones de entrada de coma flotante de
precisin simple. (C1=S1+1, S1 y C2=S2+1, S2.)
Cdigo Nemnico Nombre Funcin
329 LD=F LOAD FLOATING EQUAL Verdadera
AND=F AND FLOATING EQUAL si
C1 = C2
OR=F OR FLOATING EQUAL

602
Instrucciones matemticas de coma flotante Seccin 3-15

Cdigo Nemnico Nombre Funcin


330 LD <>F LOAD FLOATING NOT EQUAL Verdadera
AND <>F AND FLOATING NOT EQUAL si
C1 C2
OR <>F OR FLOATING NOT EQUAL
331 LD <F LOAD FLOATING LESS THAN Verdadera
AND <F AND FLOATING LESS THAN si
C1 < C2
OR <F OR FLOATING LESS THAN
332 LD <=F LOAD FLOATING LESS THAN OR EQUAL Verdadera
AND <=F AND FLOATING LESS THAN OR EQUAL si
C1 C2
OR <=F OR FLOATING LESS THAN OR EQUAL
333 LD >F LOAD FLOATING GREATER THAN Verdadera
AND >F AND FLOATING GREATER THAN si
C1 > C2
OR >F OR FLOATING GREATER THAN
325 LD >=F LOAD FLOATING GREATER THAN OR EQUAL Verdadera
AND >=F AND FLOATING GREATER THAN OR EQUAL si
C1 C2
OR >=F OR FLOATING GREATER THAN OR EQUAL

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER ON si S1+1, S1 o bien S2+1, S2 no son un nmero de
coma flotante vlido (NaN).
ON si S1+1, S1 o bien S2+1, S2 son +.
ON si S1+1, S1 o bien S2+1, S2 son .
OFF en el resto de los casos.
Indicador de > ON si S1+1, S1 > S2+1, S2.
mayor que
OFF en el resto de los casos.
Indicador de >= ON si S1+1, S1 S2+1, S2.
mayor o igual que
OFF en el resto de los casos.
Indicador de igual = ON si S1+1, S1 = S2+1, S2.
OFF en el resto de los casos.
Indicador de = ON si S1+1, S1 S2+1, S2.
distinto de
OFF en el resto de los casos.
Indicador de < ON si S1+1, S1 < S2+1, S2.
menor que
OFF en el resto de los casos.
Indicador de <= ON si S1+1, S1 S2+1, S2.
menor o igual que
OFF en el resto de los casos.
Indicador de N Sin cambios
negativo

Precauciones Las instrucciones de comparacin de entrada no pueden utilizarse como


instrucciones de la derecha, es decir, debe utilizarse otra instruccin entre
ellas y la barra de bus de la derecha.

Ejemplo AND FLOATING LESS THAN: AND<F(331)


Cuando CIO 000000 est en ON en el siguiente ejemplo, los datos de coma
flotante de D00101, D00100 se comparan con los datos de coma flotante de
D00201, D00200. Si el contenido de D00101, D00100 es menor que el de
D00201, D00200, se procede a la ejecucin hasta la siguiente lnea y
CIO 005000 se pone en ON. Si el contenido de D00101, D00100 no es menor
que el de D00201, D00200, no se procede a la ejecucin hasta la siguiente
lnea de instruccin.

603
Instrucciones matemticas de coma flotante Seccin 3-15

005000
000000
<F
D00100
D00200

Comparacin FLOATING LESS THAN (<F)


15 0 15 0
S1 :D00100 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 S2 :D00200 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
S1+1:D00101 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 1 S2+1:D00201 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0
Valor decimal: 2,3 Valor decimal: 3,5

2,3>-3,5

No produce una condicin ON.

15 0 15
S1 :D00100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 S2 :D00200 1 1 1 0 0 1 0 1 0 1 1 1 0 0 1 1
S1+1:D00101 0 1 0 0 1 1 1 1 1 0 0 0 0 0 0 0 S2+1:D00201 0 1 0 0 1 1 1 1 1 0 1 0 0 1 0 1
Valor decimal: 4.294.967.296 Valor decimal: 5.566.555.656

4294967296<5566555656

Produce una condicin ON.

3-15-22 FLOATING-POINT TO ASCII: FSTR(448)


Empleo Expresa un valor de coma flotante de 32 bits (formato IEEE754) en notacin
decimal estndar o en notacin cientfica y convierte ese valor a texto ASCII.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

FSTR(448)
S: Primer canal fuente
S
C: Primer canal de control
C
D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FSTR(448)
Se ejecuta una vez en el diferencial ascendente @FSTR(448)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S C D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6142 CIO 6141 CIO 6143
rea de Trabajo W000 hasta W510 W000 hasta W509 W000 hasta W511
rea de bit en Espera H000 hasta H510 H000 hasta H509 H000 hasta H511
rea Bit Auxiliar A000 hasta A958 A000 hasta A957 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4094 T4093 T4095

604
Instrucciones matemticas de coma flotante Seccin 3-15

rea S C D
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4094 C4093 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32766 D32765 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32766 E32765 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32766 En_32765 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D00000 hasta @ D00000 hasta
indirectas en binario @ D32767 @ D32767 @ D32767
@ E00000 hasta @ E00000 hasta @ E00000 hasta
@ E32767 @ E32767 @ E32767
@ En_00000 hasta @ En_00000 hasta @ En_00000 hasta
@ En_32767 @ En_32767 @ En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM *D00000 hasta *D00000 hasta *D00000 hasta
indirectas en BCD *D32767 *D32767 *D32767
*E00000 hasta *E00000 hasta *E00000 hasta
*E32767 *E32767 *E32767
*En_00000 hasta *En_00000 hasta *En_00000 hasta
*En_32767 *En_32767 *En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ()IR15
,IR0 hasta ,IR15

Descripcin FSTR(448) expresa el nmero de coma flotante de 32 bits de S+1 y S


(formato IEEE754) en notacin decimal o notacin cientfica de acuerdo a los
datos de control de los canales C a C+2, convierte el nmero a texto ASCII y
entrega el resultado en los canales de destino empezando por D.
El siguiente diagrama muestra el contenido de los 3 canales de control.
0000 hexadecimal: Formato decimal
0001 hexadecimal: Notacin cientfica
Formato de datos
Caracteres totales 0002 hasta 0018 hexadecimal (2 a 24 caracteres, vase la nota)
Dgitos fraccionarios 0000 hasta 0007 hexadecimal (vase la nota)

Nota: Existen lmites para el nmero total de caracteres y el nmero


de dgitos fraccionarios. Consulte informacin detallada en Lmites
del nmero de caracteres ASCII en la pgina 607.

El contenido de C (formato de datos) especifica si se expresa el nmero


en S+1, S en notacin decimal o en notacin cientfica.
Notacin decimal
Expresa un nmero real como entero y parte fraccionaria.
Ejemplo: 124,56

605
Instrucciones matemticas de coma flotante Seccin 3-15

Notacin cientfica
Expresa un nmero real como parte entera, parte fraccionaria y parte
exponencial.
Ejemplo: 1,2456E-2 (1,245610-2)
El contenido de C+1 (caracteres totales) especifica el nmero de
caracteres ASCII despus de la conversin incluyendo el smbolo del
signo, nmeros, coma decimal y espacios.
El contenido de C+2 (dgitos fraccionarios) especifica el nmero de
dgitos (caracteres) por detrs de la coma decimal.
El texto ASCII se almacena en D y canales subsecuentes en el siguiente
orden: byte de la izquierda de D, byte de la derecha de D, byte de la izquierda
de D+1, byte de la derecha de D+1, etc.
Notacin decimal
(C=0000 hexadecimal)
1.23456 Conversin a
texto ASCII

2D 20 20 31 2E 32 33 34 35 36
() (SP)(SP) (1) (,) (2) (3) (4) (5) (6)
(SP representa un espacio).
Redondeado
Almacenado en los canales de destino empezando por D.
Ejemplo: 1,23456 15 87 0
Caracteres totales = 8 (C+1 = 0008 hexadecimal)
D: 2D 20
S Datos de coma 20 31 Dgitos fraccionarios = 3 (C+2 = 0003 hexadecimal)
S+1 flotante 2E 32
33 34
00 00
Los caracteres ASCII se almacenan en orden.
(Byte de la izquierda byte de la derecha)

Notacin cientfica
(C = 0001 hexadecimal)
1.23E+00 Conversin a
texto ASCII

2D 20 31 2E 32 33 45 2B 30 31
() (SP) (1) (,) (2) (3) (E) (+) (0) (0)

(SP representa un espacio).

Almacenado en los canales de destino empezando por D.


15 87 0
2D 20
Caracteres totales = 10 (C+1 = 000A hexadecimal)
31 2E Dgitos fraccionarios = 2 (C+2 = 0002 hexadecimal)
32 33
45 2B
30 30
00 00
Los caracteres ASCII se almacenan en orden.
(Byte de la izquierda byte de la derecha)

606
Instrucciones matemticas de coma flotante Seccin 3-15

Almacenamiento de texto ASCII


Una vez haya sido convertido el nmero de coma flotante a texto ASCII, los caracteres ASCII se
almacenan en los canales de destino empezando por D, como se muestra en los siguientes diagramas.
Se utilizan diferentes mtodos de almacenamiento para notacin decimal y notacin cientfica.
Notacin decimal (C=0000 hexadecimal)
Nmero total de caracteres
Parte entera Parte fraccionaria
Signo Coma decimal
.

Si hay ms dgitos fraccionarios en los datos de origen que los especificados en C+1, los dgitos sobrantes se
redondean. Si hay menos dgitos fraccionarios, se aaden ceros ((ASCII: 30 hexadecimal) al final de los datos de origen.
Se aade una coma decimal (ASCII: 2E hexadecimal) si el nmero de dgitos fraccionarios es mayor de 0.
Se aaden espacios (ASCII: 20 hexadecimal) si la parte entera de los datos de coma flotante es ms corta que la parte
entera del resultado (nmero total de caracteres dgito de signo coma decimal dgitos fraccionarios).
Nmero positivo: Espacio (20 hexadecimal)
Nmero negativo: Signo negativo (2D hexadecimal)

Notacin cientfica (C=0000 hexadecimal)


Nmero total de caracteres
Parte
Parte entera fraccionaria Parte exponencial
Signo Coma decimal Signo
. E

0 a 9 se escriben como 00 a 09.


Positivo: Signo positivo (2B hexadecimal)
Negativo: Signo negativo (2D hexadecimal)
Aqu se escribe la letra E (ASCII: 45 hexadecimal)
Si hay ms dgitos fraccionarios en los datos de origen que los especificados en C+1, los dgitos sobrantes se redondean.
Si hay menos dgitos fraccionarios, se aaden ceros ((ASCII: 30 hexadecimal) al final de los datos de origen.
Se aade una coma decimal (ASCII: 2E hexadecimal) si el nmero de dgitos fraccionarios es mayor de 0.
Espacios (ASCII: 20 hexadecimal) si la parte entera de los datos de coma flotante es ms corta que la parte entera del
resultado (nmero total de caracteres dgito de signo coma decimal dgito E).
Nmero positivo: Espacio (20 hexadecimal)
Nmero negativo: Signo negativo (2D hexadecimal)

Nota Se aaden bien uno o dos bytes de ceros al final del texto ASCII como cdigo
final.
Nmero total de caracteres impar: se almacena 00 hexadecimal despus del
texto ASCII.
Nmero total de caracteres par: se almacena 00 hexadecimal despus del
texto ASCII.
Lmites del nmero de caracteres ASCII
Existen lmites en el nmero de caracteres ASCII en el nmero convertido. El
indicador de error se pondr en ON si el nmero de caracteres excede el
mximo permitido.
1. Lmites del nmero total de caracteres ASCII
a) Notacin decimal (C = 0000 hexadecimal)
Cuando no hay parte fraccionaria (C+2 = 0000 hexadecimal):
2 Caracteres totales 24
Cuando hay parte fraccionaria (C+2 = 0001 hasta 0007 hexadecimal):
(Dgitos fraccionarios + 3) Caracteres totales 24
b) Notacin cientfica (C = 0001 hexadecimal)
Cuando no hay parte fraccionaria (C+2 = 0000 hexadecimal):
6 Caracteres totales 24
Cuando hay parte fraccionaria (C+2 = 0001 hasta 0007 hexadecimal):
(Dgitos fraccionarios +7) Caracteres totales 24

607
Instrucciones matemticas de coma flotante Seccin 3-15

2. Lmites en el nmero de dgitos de la parte entera


a) Notacin decimal (C = 0000 hexadecimal)
Cuando no hay parte fraccionaria (C+2 = 0000 hexadecimal):
1 Nmero de dgitos enteros 24
Cuando hay parte fraccionaria (C+2 = 0001 hasta 0007 hexadecimal):
1 Nmero de dgitos enteros (24 Dgitos fraccionarios 2)
b) Notacin cientfica (C = 0001 hexadecimal)
1 dgito (fijo)
3. Lmites en el nmero de dgitos de la parte fraccionaria
a) Notacin decimal (C = 0000 hexadecimal)
Dgitos fraccionarios 7
Por lo tanto: Dgitos fraccionarios
(Nmero total de caracteres ASCII 3)
b) Notacin cientfica (C = 0001 hexadecimal)
Dgitos fraccionarios 7
Por lo tanto: Dgitos fraccionarios (Nmero total de caracteres ASCII
3)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de S+1 y S no son un nmero de coma
error flotante vlido (NaN).
ON si los datos de S+1 y S son + o bien .
ON si la configuracin del formato de datos de C no es
0000 o bien 0001.
ON si la configuracin de caracteres totales de C+1 no
est dentro del rango permitido. (Consulte 1. Lmites del
nmero total de caracteres ASCII para obtener ms
detalles.)
ON si la configuracin de caracteres fraccionarios de C+2
no est dentro del rango permitido. (Consulte 3. Lmites
en el nmero de dgitos de la parte fraccionaria para
obtener ms detalles.)
OFF en el resto de los casos.
Indicador de = ON cuando el resultado de la conversin es 0.
igual OFF en el resto de los casos.

Ejemplos Conversin a texto ASCII en notacin decimal


Cuando CIO 000000 est en ON en el siguiente ejemplo, FSTR(448)
convierte los datos de coma flotante de D00001 y D00000 a texto ASCII en
notacin decimal y escribe el texto ASCII en los canales de destino
empezando por D00100. Los contenidos de los canales de control (D00010
hasta D00012) especifican los detalles del formato de datos (notacin
decimal, 7 caracteres total, 3 dgitos fraccionarios).

608
Instrucciones matemticas de coma flotante Seccin 3-15

000000 FSTR
D00000
D00010
D00100

15 0 Conversin
D00000 1 0 1 0 1 0 0 0 0 1 1 1 0 0 1 0
0,327457
D00001 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 1

Condiciones de D00010 0000(Hexadecimal)


Notacin decimal
almacenamiento D00011 0007(Hexadecimal) Caracteres totales = 7 caracteres
D00012 0003(Hexadecimal) Dgitos fraccionarios = 3 dgitos (caracteres)

Nmero total de caracteres Redondeado


0.327457
Espacios Parte fraccionaria
D00100 20 (Espacio) 20 (Espacio)
D00101 30 (0) 2E (.)
D00102 33 (3) 32 (2)
D00103 37 (7) 00

Conversin a texto ASCII en notacin cientfica


Cuando CIO 000000 est en ON en el siguiente ejemplo, FSTR(448)
convierte los datos de coma flotante de D00001 y D00000 a texto ASCII en
notacin cientfica y escribe el texto ASCII en los canales de destino
empezando por D00100. Los contenidos de los canales de control (D00010
hasta D00012) especifican los detalles del formato de datos (notacin
cientfica, 11 caracteres total, 3 dgitos fraccionarios).
000000 FSTR
D00000
D00010
D00100

15 0
Conversin
D00000 1 0 1 0 1 0 0 0 0 1 1 1 0 0 1 0
0,327457
D00001 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 1

Notacin cientfica
D00010 0001(Hexadecimal)
Condiciones de D00011 000B(Hexadecimal) Caracteres totales = 11 caracteres
almacenamiento D00012 0003(Hexadecimal) Dgitos fraccionarios = 3 dgitos (caracteres)

Nmero total de caracteres

3,27457E-01
Espacios Parte Redondeado
fraccionaria
D00100 20 (Espacio) 20 (Espacio)
D00101 33 (3) 2E (.)
D00102 32 (2) 37 (7)
D00103 35 (5) 45 (E)
D00104 2D () 30 (0)
D00105 31 (1) 00

3-15-23 ASCII TO FLOATING-POINT: FVAL(449)


Empleo Convierte un nmero expresado en texto ASCII (notacin decimal o cientfica)
a un valor de coma flotante de 32 bits (formato IEEE754) y entrega el valor de
coma flotante a los canales especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

609
Instrucciones matemticas de coma flotante Seccin 3-15

Smbolo de diagrama de rels

FVAL(449)
S S: Primer canal fuente

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FVAL(449)
Se ejecuta una vez en el diferencial ascendente @FVAL(449)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta T4094
rea Contador C0000 hasta C4095 C0000 hasta C4094
rea DM D00000 hasta D32767 D00000 hasta D32766
rea EM sin banco E00000 hasta E32767 E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta En_32766
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ()IR15
,IR0 hasta ,IR15

Descripcin FVAL(449) convierte el nmero de texto ASCII especificado (empezando por


el canal S) en un nmero de coma flotante de 32 bits (formato IEEE754) y
entrega el resultado en los canales de destino empezando por D.
FVAL(449) puede convertir texto ASCII en notacin decimal o cientfica si se
cumplen las siguientes condiciones:

610
Instrucciones matemticas de coma flotante Seccin 3-15

Notacin decimal
Nmeros reales expresados como entero y parte fraccionaria.
Ejemplo: 124,56
Notacin cientfica
Nmeros reales expresados como parte entera, parte fraccionaria y parte
exponencial.
Ejemplo: 1,2456E-2 (1,245610-2)
El formato de datos (notacin decimal o cientfica) se detecta
automticamente.
El texto ASCII debe estar almacenado en S y canales subsecuentes en el
siguiente orden: byte de la izquierda de S, byte de la derecha de S, byte de la
izquierda de S+1, byte de la derecha de S+1, etc.
Notacin decimal
Conversin de nmero de texto ASCII a datos de
15 87 0 coma flotante de 32 bits
2D 20 Datos de coma flotante de 32 bits
20 31 1110100101111001
32 33 123,456
1100001011110110
2E 34 Signo Exponente
35 36 Almacenados en D y D+1.
37 38
00 00 15 0
D 1110100101111001
SP SP 1 2 3 . 4 5 6 7 8
(2D)(20)(20)(31)(32)(33)(2E)(34)(35)(36)(37)(38)
D+1 1 1 0 0 0 0 1 0 1 1 1 1 0 1 1 0

Los espacios se Si hay ms de 6 dgitos, los dgitos 7 y


ignoran durante la siguientes se ignoran.
conversin. (Los dgitos no incluyen signo, coma decimal ni
caracteres de exponente).

Notacin cientfica
15 87 0
Conversin de nmero de texto ASCII a datos de
2D 20 coma flotante de 32 bits Datos de coma flotante de 32 bits
20 31
2E 32 1,234102 1100110011001101
33 34 1100001011110110
45 2B Signo Exponente Almacenados en D y D+1.
30 32
00 00

SP SP 1 . 2 3 4 E + 0 2 15 0
(2D)(20)(20)(31)(2E)(32)(33)(34)(45)(2D)(31)(38) D 1100110011001101
D+1 1 1 0 0 0 0 1 0 1 1 1 1 0 1 1 0
Los espacios se
ignoran durante
la conversin.

Almacenamiento de texto Los siguientes diagramas muestran cmo el nmero de texto ASCII se
ASCII convierte a datos de coma flotante. Se utilizan diferentes mtodos de
conversin para los nmeros almacenados con notacin decimal y notacin
cientfica.
Almacenamiento de caracteres ASCII
S FVAL(449) convierte los carcacteres ASCII
comenzando por el byte de la izquierda de S y
continuando hasta alcanzar un byte que contenga
00 hexadecimal. Debe haber un byte que contenga
00 hexadecimal dentro de los 25 primeros bytes.
00
Hasta 00 hexadecimal
(25 caracteres como mximo).

611
Instrucciones matemticas de coma flotante Seccin 3-15

Notacin decimal
15 87 0 25 caracteres como mximo
Signo (20)
(20) Dgito Signo Parte entera Parte fraccionaria

SP SP 00
Coma
00 decimal Los dgitos 7 y siguientes se ignoran.
(Signo, coma decimal y caracteres de
exponente no se cuentan como dgitos).
Los espacios (20 hexadecimal) o ceros (30
hexadecimal) antes del primer dgito se ignoran.
Nmero positivo: Espacio (20 hexadecimal) o signo positivo (2B hexadecimal)
Nmero negativo: Signo negativo (2D hexadecimal)

Notacin cientfica
15 87 0 25 caracteres como mximo
Signo (20)
Dgito Parte entera Parte fraccionariaParte exponencial
(20)
Signo Signo
. (2E) Dgito SP E 00
Dgito Coma Positivo: + (2B hexadecimal)
E (45) Signo decimal Negativo: - (2D hexadecimal)
Dgito Dgito E (45)
Los dgitos 7 y siguientes se ignoran.
00
(Signo, coma decimal y caracteres de
exponente no se cuentan como dgitos).
Los espacios (20 hexadecimal) o ceros (30 hexadecimal)
antes del primer dgito se ignoran.
Nmero positivo: Espacio (20 hexadecimal) o signo positivo (2B hexadecimal)
Nmero negativo: Signo negativo (2D hexadecimal)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los dgitos (partes entera y fraccionaria) de los
error datos de origen empezando por S no son de 30 hasta
39 hexadecimal (0 a 9).
ON si los primeros dos dgitos de la parte exponencial
no contienen 45 y 2B hexadecimal (E+) o bien 45 y 2D
hexadecimal (E-). (Partes entera y fraccionaria) de los
datos de origen empezando por S no son de 30 hasta
39 hexadecimal (0 a 9).
ON si hay dos o ms partes exponenciales en los datos
de origen.
ON si los datos son + o bien despus de la
conversin.
ON si hay caracteres 0 en los datos de texto.
ON si no se encuentra un byte que contenga 00
hexadecimal dentro de los primeros 25 caracteres.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado de la conversin es 0.
igual OFF en el resto de los casos.

Ejemplos Conversin de texto ASCII en notacin decimal a datos de coma flotante


Cuando CIO 000000 est en ON en el siguiente ejemplo, FVAL(449)
convierte el nmero de texto ASCII en notacin decimal especificado de los
canales fuente empezando por D00000 en datos de coma flotante y escribe
el resultado en los canales de destino D00100 y D00101.

612
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

000000
FVAL
D00000
D00100
Los dgitos 7 y siguientes se ignoran.
(Signo, coma decimal y ceros/
espacios iniciales no se cuentan).
Ignorado
01. 234521
D00000 2D () 20 (Espacio) Conversin
D00001 30 (0) 31 (1) 15 0
D00002 2E (.) 32 (2) 0000010011000000
D00003 33 (3) 34 (4) 1011111110011110
D00004 35 (5) 32 (2)
D00005 31 (1) 00
En
almacenamiento

15 0
D00100 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0
D00101 1 0 1 1 1 1 1 1 1 0 0 1 1 1 1 0

Conversin de texto ASCII en notacin cientfica


Cuando CIO 000000 est en ON en el siguiente ejemplo, FVAL(449)
convierte el nmero de texto ASCII en notacin cientfica especificado de los
canales fuente empezando por D00000 en datos de coma flotante y escribe
el resultado en los canales de destino D00100 y D00101.
000000
FVAL
D00000
D00100

Ignorado Ignorado

1 . 23 4 5 E- 0 2

D00000 2D () 20 (Espacio) Conversin


15 0
D00001 31 (1) 2E (.)
D00002 32 (2) 33 (3) 0100001010101111
D00003 34 (4) 35 (5) 1011110001001010
D00004 45 (E) 2D ()
D00005 30 (0) 32 (2)
D00006 00 00 En
almacenamiento

15 0
D00100 0 1 0 0 0 0 1 0 1 0 1 0 1 1 1 1
D00101 1 0 1 1 1 1 0 0 0 1 0 0 1 0 1 0

3-16 Instrucciones de coma flotante de doble precisin


(slo en CS1-H, CJ1-H, CJ1M o CS1D)
Las instrucciones de coma flotante de doble precisin convierten datos y
llevan a cabo operaciones aritmticas de coma flotante en datos de coma
flotante de doble precisin. Las unidades CS1-H/CJ1-H CPU soportan las
siguientes 20 instrucciones.
Instruccin Nemnico Cdigo de Pgina
funcin
DOUBLE FLOATING TO 16-BIT FIXD 841 620
DOUBLE FLOATING TO 32-BIT FIXLD 842 621
16-BIT TO DOUBLE FLOATING DBL 843 623
32-BIT TO DOUBLE FLOATING DBLL 844 624
DOUBLE FLOATING-POINT ADD +D 845 626
DOUBLE FLOATING-POINT SUBTRACT D 846 628

613
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Instruccin Nemnico Cdigo de Pgina


funcin
DOUBLE FLOATING-POINT MULTIPLY *D 847 630
DOUBLE FLOATING-POINT DIVIDE /D 848 632
DOUBLE DEGREES TO RADIANS RADD 849 634
DOUBLE RADIANS TO DEGREES DEGD 850 636
DOUBLE SINE SIND 851 637
DOUBLE COSINE COSD 852 639
DOUBLE TANGENT TAND 853 641
DOUBLE ARC SINE ASIND 854 643
DOUBLE ARC COSINE ACOSD 855 645
DOUBLE ARC TANGENT ATAND 856 647
DOUBLE SQUARE ROOT SQRTD 857 649
DOUBLE EXPONENT EXPD 858 651
DOUBLE LOGARITHM LOGD 859 653
DOUBLE EXPONENTIAL POWER PWRD 860 655
Instrucciones de comparacin de smbolos LD, AND, 335 hasta 340 657
de coma flotante de doble precisin OR
+
=D, <>D,
<D, <=D,
>D, o bien
>=D

Formato de datos Los datos de coma flotante expresan nmeros reales utilizando un signo,
exponente y mantisa. Cuando se expresan los datos en formato de coma
flotante se aplica la siguiente frmula.
Nmero real = (1)s 2e1.023 (1.f)
s: Signo
e: Exponente
f: Mantisa
El formato de datos de coma flotante cumple las normas IEEE754. Los datos
se expresan en 32 bits, como sigue:
Signo Exponente Mantisa
s e f
63 62 52 51 0

Datos N de bits Contenido


s: signo 1 0: positivo; 1: negativo
e: 11 El valor de exponente (e) puede estar entre 0 y 2,047. El
exponente exponente real es el valor restante despus de sustraer
1.023 de e, resultando en un rango de 1.023 a 1.024.
e=0 y e=2.047 expresan nmeros especiales.
f: mantisa 52 La parte de mantisa de los datos binarios de coma
flotante se ajusta a la frmula 2,0 > 1,f 1,0.

Nmero de dgitos El nmero de dgitos efectivos para datos de coma flotante es de 53 bits para
binarios (aproximadamente 15 dgitos decimales).

Datos de coma flotante Los siguientes datos pueden expresarse mediante datos de coma flotante:

1,79769313486232 x 10308 valor 2,22507385850720 x 10308
0
2,22507385850720 x 10308 valor 1,79769313486232 x 1030

614
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

+
No es n nmero (NaN)
2,2250738585072010-308 2,2250738585072010-308
+

1 0
1
1,7976931348623210308 1,7976931348623210308

Nmeros especiales Los formatos para NaN, y 0 son los siguientes:


NaN*: e = 1.024 y f 0
+: e = 1.024, f = 0 y s= 0
: e = 1.024, f = 0 y s= 1
0: e=0yf=0
*NaN (no es un nmero) es un nmero de coma flotante no vlido. La
ejecucin de las instrucciones de coma flotante de doble precisin no
resultar en NaN.

Escritura de datos de Cuando se especifica coma flotante de doble precisin para el formato de
coma flotante datos en el display de edicin de la memoria de E/S de CX-Programmer, la
introduccin de nmeros decimales estndar se convierte automticamente
al formato de coma flotante de doble precisin mostrado anteriormente
(formato IEEE754) y se escribe en la memoria de E/S. Los datos escritos en
el formato IEEE754 se convierten automticamente a formato decimal
estndar cuando se monitorizan en el display.
s e f
6362 5251 4847 3231 1615 0

n+3 n+2 n+1 n

El usuario no necesita tener en cuenta el formato de datos IEEE754 cuando


lee y escribe datos de coma flotante de doble precisin. Solamente es
necesario recordar que los valores de coma flotante de doble precisin
ocupan cuatro canales cada uno.

Nmeros expresados como valores de coma flotante


Pueden utilizarse los siguientes tipos de nmeros de coma flotante.
Mantisa (f) Exponente (e)
0 No 0 y no todos 1s Todos 1s (1.024)
(1.024)
0 0 Nmero Infinito
No 0 Nmero no normalizado NaN
normalizado

Nota Un nmero no normalizado es uno cuyo valor absoluto es demasiado


pequeo para ser expresado como un nmero normalizado. Los nmeros no
normalizados tienen menos dgitos significativos. Si el resultado de los
clculos es un nmero no normalizado (incluyendo los resultados
intermedios) se reducir el nmero de dgitos significativos.

Nmeros normalizados Los nmeros normalizados expresan nmeros reales. El bit de signo ser 0
para un nmero positivo y 1 para un nmero negativo.
El exponente (e) se expresar desde 1 hasta 2.046 y el exponente real ser
1.023 menos, es decir, 1.022 hasta 1.023.
La mantisa (f) se expresar desde 0 hasta (252 1) y se asume que, en la
mantisa real, el bit 252 es 1 y que la coma decumal sigue inmediatamente
despus de l.

615
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Los nmeros normalizados se expresan como sigue:


(1)(signo s) x 2(exponente e)1.023 x (1 + mantisa x 252)
Ejemplo
32 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 0
1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
63 62 52 51 33

Signo:
Exponente: 1.024 1.023 = 1
Mantisa: 1 + (251 + 250) x 252 = 1 + (21 + 22) = 1 + (0,75) = 1,75
Valor: 1,75 x 21 = 3,5

Nmeros no normalizados Los nmeros no normalizados expresan nmeros reales con valores
absolutos muy pequeos. El bit de signo ser 0 para un nmero positivo y 1
para un nmero negativo.
El exponente (e) ser 0 y el exponente real ser 1.022.
La mantisa (f) se expresar desde 1 hasta (252 1) y se asume que, en la
mantisa real, el bit 252 es 0 y que la coma decumal sigue inmediatamente
despus de l.
Los nmeros no normalizados se expresan como sigue:
(1)(signo s) x 21.022 x (1 + mantisa x 252)
Ejemplo
32 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 0
0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
64 63 52 51 33

Signo:
Exponente: -1.022
Mantisa: 0 + (251 + 250) x 252 = 0 + (21 + 22) = 0 + (0,75) = 0,75
Valor: 0,75 x 21.022 = 1,668805 x 10308
Cero Los valores de +0,0 y 0,0 pueden expresarse configurando el signo como 0
para positivo o como 1 para negativo. El exponente y la mantisa sern ambos
0. Tanto +0,0 como 0,0 son equivalentes a 0,0. Consulte en el apartado
siguiente Resultados aritmticos de coma flotante las diferencias producidas
por el signo de 0,0.

Infinito Los valores de + y pueden expresarse configurando el signo como 0


para positivo o como 1 para negativo. El exponente ser 2.047 (211 1) y la
mantisa ser 0.

NaN NaN (no es un nmero) se produce cuando el resultado de los clculos, como
0,0/0,0, /, o bien , no se corresponde con un nmero o infinito. El
exponente ser 255 (28 1) y la mantisa no ser 0.
Nota No hay especificaciones para el signo de NaN o el valor del campo de
mantisa (otras que no sean no ser 0).

Resultados aritmticos de coma flotante


Redondeo de resultados Se utilizarn los siguientes mtodos para redondear resultados cuando el
nmero de dgitos del resultado preciso de las operaciones aritmticas de
coma flotante exceda los dgitos significativos de las expresiones de
procesamiento interno.

616
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Si el resultado es cercano a una o dos expresiones de coma flotante internas


se utilizar la expresin ms cercana. Si el resultado est a medio camino
entre dos expresiones de coma flotante internas, el resultado se redondear
de tal manera que el dgito de la mantisa sea 0.

Desbordamientos, Los desbordamientos se entregarn bien como infinito positivo o negativo,


subdesbordamientos y dependiendo del signo del resultado. Los subdesbordamientos se entregarn
clculos no vlidos bien como cero positivo o negativo, dependiendo del signo del resultado.
Los clculos no vlidos resultarn en NaN. Los clculos no vlidos incluyen
sumar infinito a un nmero con el signo opuesto, restar infinito de un nmero
con el signo opuesto, multiplicar cero e infinito, dividir cero por cero o dividir
infinito por infinito.
El valor del resultado puede no ser correcto si se produce un desbordamiento
cuando se convierte un nmero de coma flotante en un entero.

Preauciones al utilizar Deben aplicarse las siguientes precauciones al utilizar cero, infinito y NaN.
valores especiales La suma de cero positivo y cero negativo es cero positivo.
La diferencia entre ceros del mismo signo es cero positivo.
Si cualquier operando es NaN, los resultados sern NaN.
Cero positivo y cero negativo se tratan como equivalentes en
comparaciones.
Los test de comparacin o equivalencia en uno o ms NaN siempre
sern verdaderos para != y siempre sern falsos para el resto de las
instrucciones.

Resultados de clculo de coma flotante de doble precisin


Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como . Si el
resultado es positivo se entregar como +; si es negativo como .
El indicador de igual se pondr en ON cuando el exponente (e) y la mantisa
(f) sean cero despus de un clculo. Un resultado de entregar tambin como
cero cuando el valor absoluto del resultado sea menor que el valor mnimo
que pueda expresarse para datos de coma flotante. Es este caso el indicador
de subdesbordamiento se pondr en ON.

Comparacin de clculos de precisin simple y doble precisin


Este ejemplo muestra las diferencias entre clculos de precisin simple y
doble precisin cuando el siguiente vector expresado en coordenadas
polares se convierte a coordenadas rectangulares A (x,y).

j
r = re 360

En este ejemplo, el ngulo BCD de 4 dgitos (, en grados) se lee de D00000


y la distancia BCD de 4 dgitos (r) se lee de D01000.
Y

A (x y) = A (rcos ,rsen )
r r

0 X

617
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Programa de diagrama de rels Programa de diagrama de rels


para el clculo de precisin simple para el clculo de precisin doble
000000 000000
BIN BIN
D00000 D00000
D00100 D00100

BIN BIN
D01000 D01000
D01000 D01000

FLT DBL
D00100 D00100
D00200 D00200

FLT DBL
D01000 D01000
D01200 D01200

RAD RADD
D00200 D00200
D00200 D00200

COS COSD
D00200 D00200
D00300 D00300

SIN SIND
D00200 D00200
D00400 D00400

*F *D
D01200 D01200
D00300 D00300
D10000 D10000

*F *D
D01200 D01200
D00400 D00400
D20000 D20000

END END

618
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

1. Esta seccin del programa convierte los datos 1. Esta seccin del programa convierte los datos
BCD a datos de coma flotante de precisin BCD a datos de coma flotante de doble
simple (32 bits, formato IEEE754). precisin (64 bits, formato IEEE754).
a) Las instrucciones BIN(023) convierten los a) Las instrucciones BIN(023) convierten los
datos BCD a binario y las instrucciones datos BCD a binario y las instrucciones
FLT(452) convierten los datos binarios a DBL(843) convierten los datos binarios a
datos de coma flotante de precisin datos de coma flotante de doble
simple. precisin.
b) Los datos de coma flotante para el ngulo b) Los datos de coma flotante para el ngulo
se entregan a D00200 y D00201. se entregan a los canales D00200 y
c) RAD(458) convierte los datos de ngulo D00203.
de D00200 y D00201 a radianes. c) RADD(849) convierte los datos de ngulo
d) Los datos de coma flotante para el radio r de los canales D00200 y D00203 a
se entregan a D01200 y D01201. radianes.
2. Esta seccin del programa calcula el sen y d) Los datos de coma flotante para el radio r
el cos como valores de coma flotante de se entregan a los canales D01200 y
precisin simple. D01203.
a) El valor para el cos se entrega a D00300 2. Esta seccin del programa calcula el sen y
y D00301. el cos como valores de coma flotante de
doble precisin.
b) El valor para el sen se entrega a
D00400 y D00401. a) El valor para el cos se entrega a los
canales D00300 y D00303.
3. Esta seccin del programa calcula x (r cos
) e y (r sen ). b) El valor para el sen se entrega a los
canales D00400 y D00403.
a) El valor para x (r cos ) se entrega a
D10000 y D10001. 3. Esta seccin del programa calcula x (r cos
) e y (r sen ).
b) El valor para y (r sen ) se entrega a
D20000 y D20001. a) El valor para x (r cos ) se entrega a los
canales D10000 y D10003.
b) El valor para y (r sen ) se entrega a
Coordenada Nmero de Nmero real
coma flotante D20000 y D20003.
x 4116 59CF 3,4202015399933
y 405A E495 9,3969259262085 Coordenada Nmero de Nmero real
coma flotante
x 4022 CB39 3,4202014332567
E973 5C32
y 400B 5C92 9,3969262078591
91AC 8EEB

Comparacin de los resultados de clculo


Cuando los resultados de nmero real se comparan, est claro que el clculo
de precisin doble produce un resultado ms preciso.

619
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

3-16-1 DOUBLE FLOATING TO 16-BIT: FIXD(841)


Empleo Convierte un valor de coma flotante de doble precisin de 64 bits en datos
binarios con signo de 16 bits y entrega el resultado en el canal de resultado
especificado.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

FIXD(841)
S: Primer canal fuente
S D: Canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FIXD(841)
Se ejecuta una vez en el diferencial ascendente @FIXD(841)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140 CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W508 W000 hasta W511
rea de bit en Espera H000 hasta H508 H000 hasta H511
rea Bit Auxiliar A000 hasta A956 A448 hasta A959
rea Temporizador T0000 hasta T4092 T0000 hasta T4095
rea Contador C0000 hasta C4092 C0000 hasta C4095
rea DM D00000 hasta D32764 D00000 hasta D32767
rea EM sin banco E00000 hasta E32764 E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta En_32767
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

620
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Descripcin FIXD(841) convierte la parte entera del nmero de coma flotante de doble
precisin de 64 bits de los canales S hasta S+3 (formato IEEE754) a datos
binarios con signo de 16 bits y entrega el resultado a D.
S+3CH S+2CH S+1CH SCH
Datos de coma flotante (64 bits)

DCH
Datos binarios con signo (16 bits)

Slo se convierte la parte entera de los datos de coma flotante: la parte


fraccionaria se descarta. La parte entera de los datos de coma flotante debe
estar en el rango entre 32.768 hasta 32.767.
Ejemplos de conversin:
Un valor de coma flotante de 3,5 se convierte a 3.
Un valor de coma flotante de 3,5 se convierte a 3.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son un nmero (NaN).
error ON si la parte entera de los datos de origen (S hasta
S+3) no est dentro del rango de -32.768 hasta 32.767.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 del resultado est en ON.
negativo OFF en el resto de los casos.

3-16-2 DOUBLE FLOATING TO 32-BIT: FIXLD(842)


Empleo Convierte un valor de coma flotante de doble precisin de 64 bits en datos
binarios con signo de 32 bits y entrega el resultado en los canales de
resultado especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

FIXDL(842)
S: Primer canal fuente
S D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FIXLD(842)
Se ejecuta una vez en el diferencial ascendente @FIXLD(842)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140 CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W508 W000 hasta W510

621
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
rea de bit en Espera H000 hasta H508 H000 hasta H510
rea Bit Auxiliar A000 hasta A956 A448 hasta A958
rea Temporizador T0000 hasta T4092 T0000 hasta T4094
rea Contador C0000 hasta C4092 C0000 hasta C4094
rea DM D00000 hasta D32764 D00000 hasta D32766
rea EM sin banco E00000 hasta E32764 E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta En_32766
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin FIXLD(842) convierte la parte entera del nmero de coma flotante de doble
precisin de 64 bits de los canales S hasta S+3 (formato IEEE754) a datos
binarios con signo de 32 bits y entrega el resultado a D+1 y D.
S+3CH S+2CH S+1CH SCH
Datos de coma flotante (64 bits)

D+1CH DCH
Datos binarios con signo (32 bits)

Slo se convierte la parte entera de los datos de coma flotante: la parte


fraccionaria se descarta. (La parte entera de los datos de coma flotante debe
estar en el rango entre 2.147.483.648 hasta 2.147.483.647).
Ejemplos de conversin:
Un valor de coma flotante de 2.147.483.640,5 se convierte a 2.147.483.640.
Un valor de coma flotante de 2.147.483.640,5 se convierte a 2.147.483.640.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de los canales S hasta S+3 no son un
error nmero (NaN).
ON si la parte entera de los canales S hasta S+3 no est
dentro del rango de 2.147.483.648 hasta 2.147.483.647.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0000 0000.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 de D+1 est en ON despus de la
negativo ejecucin.
OFF en el resto de los casos.

622
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Precauciones El contenido de los canales S hasta S+3 debe ser datos de coma flotante y la
parte entera debe estar en el rango de 2.147.483.648 hasta 2.147.483.647.

3-16-3 16-BIT TO DOUBLE FLOATING: DBL(843)


Empleo Convierte un valor binario con signo de 16 bits en datos de coma flotante de
doble precisin de 64 bits y entrega el resultado en los canales de destino
especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

DBL(843)
S S: Canal fuente
D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DBL(843)
Se ejecuta una vez en el diferencial ascendente @DBL(843)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W511 W000 hasta W508
rea de bit en Espera H000 hasta H511 H000 hasta H508
rea Bit Auxiliar A000 hasta A959 A448 hasta A956
rea Temporizador T0000 hasta T4095 T0000 hasta T4092
rea Contador C0000 hasta C4095 C0000 hasta C4092
rea DM D00000 hasta D32767 D00000 hasta D32764
rea EM sin banco E00000 hasta E32767 E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta En_32764
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #FFFF ---
(Binario)
Registros de datos DR0 hasta DR15 ---

623
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin DBL(843) convierte el valor binario con signo de 16 bits de S a datos de coma
flotante de doble precisin de 64 bits (formato IEEE754) y entrega el
resultado en los canales D hasta D+3. Se aade un 0 despus de la coma
decimal en el resultado de coma flotante.
SCH
Datos binarios con signo (16 bits)

D+3CH D+2CH D+1CH DCH


Datos de coma flotante (64 bits)

Slo los valores dentro del rango de 32.768 hasta 32.767 pueden
especificarse para S. Para convertir datos binarios con signo fuera de este
rango utilice DBLL(844).
Ejemplos de conversin:
Un valor binario con signo de 3 se convierte a 3,0.
Un valor binario con signo de 3 se convierte a 3,0.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones El contenido de S debe contener datos binarios con signo con un valor
(decimal) en el rango de 32.768 hasta 32.767.

3-16-4 32-BIT TO DOUBLE FLOATING: DBLL(844)


Empleo Convierte un valor binario con signo de 32 bits en datos de coma flotante de
doble precisin de 64 bits y entrega el resultado en los canales de destino
especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
Smbolo de diagrama de rels

DBLL(844)
S S: Primer canal fuente
D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DBLL(844)
Se ejecuta una vez en el diferencial ascendente @DBLL(844)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

624
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6142 CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W510 W000 hasta W508
rea de bit en Espera H000 hasta H510 H000 hasta H508
rea Bit Auxiliar A000 hasta A958 A448 hasta A956
rea Temporizador T0000 hasta T4094 T0000 hasta T4092
rea Contador C0000 hasta C4094 C0000 hasta C4092
rea DM D00000 hasta D32766 D00000 hasta D32764
rea EM sin banco E00000 hasta E32766 E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32766 En_00000 hasta En_32764
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #00000000 hasta ---
#FFFFFFFF
(Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin DBLL(844) convierte el valor binario con signo de 32 bits de S+1 y S a datos
de coma flotante de doble precisin de 64 bits (formato IEEE754) y entrega el
resultado en los canales D hasta D+3. Se aade un 0 despus de la coma
decimal en el resultado de coma flotante.
S+1CH SCH
Datos binarios con signo (32 bits)

D+3CH D+2CH D+1CH DCH


Datos de coma flotante (64 bits)

Los datos binarios con signo dentro del rango desde 2.147.483.648 hasta
2.147.483.647 pueden especificarse para S+1 y S. El valor de coma flotante
tiene 24 dgitos binarios significativos (bits). El resultado no ser exacto si se
convierte un nmero mayor de 16.777.215 (el valor mximo que puede
expresarse en 24 bits) mediante DBLL(844).
Ejemplos de conversin:
Un valor binario con signo de 16.777.215 se convierte a 16.777.215,0.
Un valor binario con signo de 16.777.215 se convierte a 15.777.215,0.

625
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones El resultado no ser exacto si se convierte un nmero con un valor absoluto


mayor de 16.777.215 (el valor mximo que puede expresarse en 24 bits).

3-16-5 DOUBLE FLOATING-POINT ADD: +D(845)


Empleo Suma dos nmeros de coma flotante de doble precisin de 64 bits y entrega
el resultado en los canales de destino especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

+D(845)
Au Au: Primer canal de sumando 1
Ad Ad: Primer canal de sumando 2
D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON +D(845)
Se ejecuta una vez en el diferencial @+D(845)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Au Ad D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

626
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea Au Ad D
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin +D(845) aade el nmero de coma flotante de doble precisin de 64 bits de


los canales Ad hasta Ad+3 al nmero de coma flotante de doble precisin de
64 bits de los canales Au hasta Au+3 y entrega el resultado en los canales D
hasta D+3 (los datos de coma flotante deben estar en formato EEE754).
S1+3CH S1+2CH S1+1CH S1CH
Sumando (datos de coma flotante, 64 bits)

S2+3CH S2+2CH S2+1CH S2CH


+ Nmero adicional (datos de coma flotante, 64 bits)

D+3CH D+2CH D+1CH DCH


Resultado (datos de coma flotante, 64 bits)

Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Las distintas combinaciones de datos de sumando y nmero adicional
producen los resultados mostrados en la siguiente tabla.
Sumando
Adicional 0 Valor + NaN
numrico
0 0 Valor +
numrico
Valor Valor Ver nota 1. +
numrico numrico
+ + + + Ver nota 2.
Ver nota 2.
NaN Ver nota 2.

Nota 1. Los resultados pueden ser cero (incluyendo subdesbordamientos), un


valor numrico, +, o bien .
2. El indicador de error se pondr en ON y la instruccin no se ejecutar.

627
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de sumando o nmero adicional no son
error reconocidos como datos de coma flotante.
ON si los datos de sumando o nmero adicional no son
un nmero (NaN).
ON si + se aade a .
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin.
Indicador de UF ON si el valor absoluto del resultado es demasiado
subdesborda- bajo como para ser expresado como un valor de coma
miento flotante de doble precisin.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos de sumando (Au hasta Au+3) y de nmero adicional (Ad hasta
Ad+3) deben estar en formato de datos de coma flotante IEEE754.

3-16-6 DOUBLE FLOATING-POINT SUBTRACT: D(846)


Empleo Resta un nmero de coma flotante de doble precisin de 64 bits de otro y
entrega el resultado en los canales de destino especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

D(846)
Mi Mi: Primer canal de minuendo
Su: Primer canal de sustraendo
Su
D: Primer canal de destino
D
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON D(846)
Se ejecuta una vez en el diferencial ascendente @D(846)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Mi Su D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764

628
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea Mi Su D
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin D(846) resta el nmero de coma flotante de doble precisin de 64 bits de los
canales Su hasta Su+3 del nmero de coma flotante de doble precisin de
64 bits de los canales Mi hasta Mi+3 y entrega el resultado en los canales D
hasta D+3 (los datos de coma flotante deben estar en formato EEE754).
S1+3CH S1+2CH S1+1CH S1CH
Minuendo (datos de coma flotante, 64 bits)

S2+3CH S2+2CH S2+1CH S2CH


Sustraendo (datos de coma flotante, 64 bits)

D+3CH D+2CH D+1CH DCH


Resultado (datos de coma flotante, 64 bits)

Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Las distintas combinaciones de datos de minuendo y sustraendo producen
los resultados mostrados en la siguiente tabla.
Minuendo
Sustraendo 0 Valor + NaN
numrico
0 0 Valor +
numrico
Valor Valor Ver nota 1. +
numrico numrico
+ Ver nota 2.
+ + + Ver nota 2.
NaN Ver nota 2.

Nota 1. Los resultados pueden ser cero (incluyendo subdesbordamientos), un


valor numrico, +, o bien .
2. El indicador de error se pondr en ON y la instruccin no se ejecutar.

629
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de minuendo o sustraendo no son
error reconocidos como datos de coma flotante.
ON si los datos de minuendo o sustraendo no son un
nmero (NaN).
ON si + se resta de +.
ON si se resta de .
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin.
Indicador de UF ON si el valor absoluto del resultado es demasiado
subdesborda- bajo como para ser expresado como un valor de coma
miento flotante de doble precisin.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos de minuendo (Mi hasta Mi+3) y de sustraendo (Su hasta Su+3)
deben estar en formato de datos de coma flotante IEEE754.

3-16-7 DOUBLE FLOATING-POINT MULTIPLY: *D(847)


Empleo Multiplica dos nmeros de coma flotante de doble precisin de 64 bits y
entrega el resultado en los canales de resultado especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

*D(847)
Md: Primer canal de multiplicando
Md Mr: Primer canal de multiplicador
Mr D: Primer canal de destino
D
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON *D(847)
Se ejecuta una vez en el diferencial ascendente @*D(847)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Md Mr D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764

630
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea Md Mr D
rea EM sin banco E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin *D(847) multiplica el nmero de coma flotante de doble precisin de 64 bits de


los canales Md hasta Md+3 por el nmero de coma flotante de doble precisin
de 64 bits de los canales Mr hasta Mr+3 y entrega el resultado en los canales D
hasta D+3 (los datos de coma flotante deben estar en formato EEE754).
S1+3CH S1+2CH S1+1CH S1CH
Multiplicando (datos de coma flotante, 64 bits)

S2+3CH S2+2CH S2+1CH S2CH


Multiplicador (datos de coma flotante, 64 bits)

D+3CH D+2CH D+1CH DCH


Resultado (datos de coma flotante, 64 bits)

Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Las distintas combinaciones de datos de multiplicando y multiplicador
producen los resultados mostrados en la siguiente tabla.
Multiplicando
Multi- 0 Valor + NaN
plicador numrico
0 0 0 Ver nota 2. Ver nota 2.
Valor 0 Ver nota 1. +/ +/
numrico
+ Ver nota 2. +/ +
Ver nota 2 +/ +
NaN Ver nota 2.

Nota 1. Los resultados pueden ser cero (incluyendo subdesbordamientos), un


valor numrico, +, o bien .
2. El indicador de error se pondr en ON y la instruccin no se ejecutar.

631
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de multiplicando o multiplicador no son
error reconocidos como datos de coma flotante.
ON si los datos de multiplicando o multiplicador no son
un nmero (NaN).
ON si se multiplican + y 0.
ON si se multiplican y 0.
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de doble precisin.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos de multiplicando (Md hasta Md+3) y multiplicador (Mr hasta Mr+3)
deben estar en formato de datos de coma flotante IEEE754.

3-16-8 DOUBLE FLOATING-POINT DIVIDE: /D(848)


Empleo Divide un nmero de coma flotante de doble precisin de 64 bits por otro y
entrega el resultado en los canales de destino especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

/D(848)
Dd: Primer canal de dividendo
Dd Dr: Primer canal de divisor
Dr D: Primer canal de destino
D
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON /D(848)
Se ejecuta una vez en el diferencial ascendente @/D(848)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea Dd Dr D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764

632
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea Dd Dr D
rea EM sin banco E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15
Descripcin /D(848) divide el nmero de coma flotante de doble precisin de 64 bits de los
canales Dd hasta Dd+3 por el nmero de coma flotante de doble precisin de
64 bits de los canales Dr hasta Dr+3 y entrega el resultado en los canales D
hasta D+3 (los datos de coma flotante deben estar en formato EEE754).
S1+3 S1+2 S1+1 S1
Dividendo (datos de coma flotante, 64 bits)

S2+3 S2+2 S2+1 S2


Divisor (datos de coma flotante, 64 bits)

D+3 D+2 D+1 DCH


Resultado (datos de coma flotante, 64 bits)

Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Las distintas combinaciones de datos de dividendo y divisor producen los
resultados mostrados en la siguiente tabla.
Dividendo
Divisor 0 Valor + NaN
numrico
0 Ver nota 3. +/ +
Valor 0 Ver nota 1. +/ +/
numrico
+ 0 Ver nota 2. Ver nota 3. Ver nota 3.
0 Ver nota 2. Ver nota 3. Ver nota 3.
NaN Ver nota 3.
Nota 1. Los resultados pueden ser cero (incluyendo subdesbordamientos), un
valor numrico, +, o bien .
2. Los resultados sern cero para subdesbordamientos.
3. El indicador de error se pondr en ON y la instruccin no se ejecutar.

633
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de dividendo o divisor no son
error reconocidos como datos de coma flotante.
ON si los datos de dividendo o divisor no son un nmero
(NaN).
ON si el dividendo y el divisor son 0.
ON si el dividendo y el divisor son ambos + o bien ..
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de doble precisin.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos de dividendo (Dd hasta Dd+3) y divisor (Dr hasta Dr+3) deben
estar en formato de datos de coma flotante IEEE754.

3-16-9 DOUBLE DEGREES TO RADIANS: RADD(849)


Empleo Convierte un nmero de coma flotante de doble precisin de 64 bits de
grados a radianes y entrega el resultado en los canales de resultado
especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
Smbolo de diagrama de rels

RADD(849)
S S: Primer canal fuente
D: Primer canal de destino
D
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RADD(849)
Se ejecuta una vez en el diferencial ascendente @RADD(849)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK
Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764

634
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin RADD(849) convierte el nmero de coma flotante de doble precisin de 64


bits de los canales S hasta S+3 de grados a radianes y entrega el resultado
en los canales D hasta D+3 (los datos origen de coma flotante deben estar en
formato IEEE754).
S+3CH S+2CH S+1CH SCH
Origen (grados, datos de coma flotante de 64 bits)

D+3CH D+2CH D+1CH DCH


Resultado (radianes, datos de coma flotante de 64 bits)

Los grados se convierten a radianes mediante la frmula siguiente:


Grados /180 = radianes
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de doble precisin.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

635
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-10 DOUBLE RADIANS TO DEGREES: DEGD(850)


Empleo Convierte un nmero de coma flotante de doble precisin de 64 bits de
radianes a grados y entrega el resultado en los canales de resultado
especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

DEGD(850)
S: Primer canal fuente
S D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DEGD(850)
Se ejecuta una vez en el diferencial ascendente @DEGD(850)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---

636
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin DEGD(850) convierte el nmero de coma flotante de doble precisin de


64 bits de los canales S hasta S+3 de radianes a grados y entrega el
resultado en los canales D hasta D+3 (los datos origen de coma flotante
deben estar en formato IEEE754).
S+3CH S+2CH S+1CH SCH
Origen (radianes, datos de coma flotante de 64 bits)

D+3CH D+2CH D+1CH DCH


Resultado (grados, datos de coma flotante de 64 bits)

Los radianes se convierten a grados mediante la frmula siguiente:


Radianes 180/ = grados
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de doble precisin.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-11 DOUBLE SINE: SIND(851)


Empleo Calcula el seno de un nmero de coma flotante de doble precisin de 64 bits
(en radianes) y entrega el resultado en los canales de destino especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

637
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Smbolo de diagrama de rels

SIND(851)
S: Primer canal fuente
S D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SIND(851)
Se ejecuta una vez en el diferencial ascendente @SIND(851)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SIND(851) calcula el seno del ngulo (en radianes) expresado como un valor
de coma flotante de doble precisin de 64 bits de los canales S hasta S+3 y
entrega el resultado en los canales D hasta D+3.
(Los datos origen de coma flotante deben estar en formato IEEE754).
SIN( S+3 S+2 S+1 S ) D+3 D+2 D+1 D

638
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Especifique el ngulo deseado (65.535 hasta 65.535) en radianes en los


canales S hasta S+3. Si el ngulo est fuera del rango 65.535 hasta 65.535,
se producir un error y la instruccin no se ejecutar. Encontrar ms
informacin sobre la conversin de grados a radianes en 3-16-9 DOUBLE
DEGREES TO RADIANS: RADD(849) o bien 3-16-10 DOUBLE RADIANS
TO DEGREES: DEGD(850).
El siguiente diagrama muestra la relacin entre el ngulo y el resultado.
R S: Datos de ngulo (radin)
R: Resultado (seno)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son un nmero (NaN).
error ON si el valor absoluto de los datos origen excede de
65.535.
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF Sin cambios
desbordamiento
Indicador de UF Sin cambios
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-12 DOUBLE COSINE: COSD(852)


Empleo Calcula el coseno de un nmero de coma flotante de doble precisin de 64
bits (en radianes) y entrega el resultado en los canales de destino
especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

COSD(852)
S: Primer canal fuente
S D: Primer canal de destino
D
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON COSD(852)
Se ejecuta una vez en el diferencial ascendente @COSD(852)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

639
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin COSD(852) calcula el coseno del ngulo (en radianes) expresado como un
valor de coma flotante de doble precisin de 64 bits de los canales S hasta
S+3 y entrega el resultado en los canales D hasta D+3.
(Los datos origen de coma flotante deben estar en formato IEEE754).
COS( S+3 S+2 S+1 S ) D+3 D+2 D+1 D

Especifique el ngulo deseado (65.535 hasta 65.535) en radianes en los


canales S hasta S+3. Si el ngulo est fuera del rango 65.535 hasta 65.535,
se producir un error y la instruccin no se ejecutar. Encontrar ms
informacin sobre la conversin de grados a radianes en 3-16-9 DOUBLE
DEGREES TO RADIANS: RADD(849) o bien 3-16-10 DOUBLE RADIANS
TO DEGREES: DEGD(850).
El siguiente diagrama muestra la relacin entre el ngulo y el resultado.
R S: Datos de ngulo
(radin) R: Resultado
(coseno)

640
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son un nmero (NaN).
error ON si el valor absoluto de los datos origen excede de
65.535.
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF Sin cambios
desbordamiento
Indicador de UF Sin cambios
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-13 DOUBLE TANGENT: TAND(853)


Empleo Calcula la tangente de un nmero de coma flotante de doble precisin de
64 bits (en radianes) y entrega el resultado en los canales de destino
especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
Smbolo de diagrama de rels

TAND(853) S: Primer canal fuente


S D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TAND(853)
Se ejecuta una vez en el diferencial ascendente @TAND(853)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)

641
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin TAND(853) calcula la tangente del ngulo (en radianes) expresada como un
valor de coma flotante de doble precisin de 64 bits de los canales S hasta
S+3 y entrega el resultado en los canales D hasta D+3.
(Los datos origen de coma flotante deben estar en formato IEEE754).
TAN( S+3 S+2 S+1 S ) D+3 D+2 D+1 D

Especifique el ngulo deseado (65.535 hasta 65.535) en radianes en los


canales S hasta S+3. Si el ngulo est fuera del rango 65.535 hasta 65.535,
se producir un error y la instruccin no se ejecutar. Encontrar ms
informacin sobre la conversin de grados a radianes en 3-16-9 DOUBLE
DEGREES TO RADIANS: RADD(849) o bien 3-16-10 DOUBLE RADIANS
TO DEGREES: DEGD(850).
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
El siguiente diagrama muestra la relacin entre el ngulo y el resultado.
R
S: Datos de ngulo
(radin)
R: Resultado
(tangente)

642
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son un nmero (NaN).
error ON si el valor absoluto de los datos origen excede de
65.535.
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin de 64 bits.
Indicador de UF Sin cambios
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-14 DOUBLE ARC SINE: ASIND(854)


Empleo Calcula el arco seno de un nmero de coma flotante de doble precisin de 64
bits y entrega el resultado en los canales de destino especificados. (La
funcin de arco seno es la inversa de la funcin de seno; devuelve el ngulo
que produce un valor de seno dado entre 1 y 1.)
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
Smbolo de diagrama de rels

ASIND(854)
S: Primer canal fuente
S D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ASIND(854)
Se ejecuta una vez en el diferencial ascendente @ASIND(854)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764

643
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ASIND(854) calcula el ngulo (en radianes) para un valor de seno expresado
como un nmero de coma flotante de doble precisin de 64 bits de los
canales S hasta S+3 y entrega el resultado en los canales D hasta D+3.
(Los datos origen de coma flotante deben estar en formato IEEE754).
SIN-1( S+3 S+2 S+1 S ) D+3 D+2 D+1 D

Los datos origen deben estar entre 1,0 y 1,0. Si el valor absoluto de los
datos origen excede de 1,0 se producir un error y la instruccin no se
ejecutar.
El resultado se entrega a los canales D hasta D+3 como un ngulo (en
radianes) en el rango de /2 hasta /2.
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
R

S: Datos de entrada (valor de


seno) R: Resultado (radianes)

, ,

644
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos de
error coma flotante.
ON si los datos origen no son un nmero (NaN).
ON si el valor absoluto de los datos origen excede de 1,0.
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF Sin cambios
desbordamiento
Indicador de UF Sin cambios
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-15 DOUBLE ARC COSINE: ACOSD(855)


Empleo Calcula el arco coseno de un nmero de coma flotante de doble precisin de
64 bits y entrega el resultado en los canales de resultado especificados. (La
funcin de arco coseno es la inversa de la funcin de coseno; devuelve el
ngulo que produce un valor de coseno dado entre 1 y 1.)
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

ACOSD(855)
S: Primer canal fuente
S D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ACOSD(855)
Se ejecuta una vez en el diferencial ascendente @ACOSD(855)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764

645
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ACOSD(855) calcula el ngulo (en radianes) para un valor de coseno


expresado como un nmero de coma flotante de doble precisin de 64 bits de
los canales S hasta S+3 y entrega el resultado en los canales D hasta D+3.
(Los datos origen de coma flotante deben estar en formato IEEE754).
COS-1( S+3 S+2 S+1 S ) D+3 D+2 D+1 D

Los datos origen deben estar entre 1,0 y 1,0. Si el valor absoluto de los
datos origen excede de 1,0 se producir un error y la instruccin no se
ejecutar.
El resultado se entrega a los canales D hasta D+3 como un ngulo (en
radianes) en el rango de 0 hasta .
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
S: Datos de entrada (valor
R de coseno)
R: Resultado (radianes)

, ,

646
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos de
error coma flotante.
ON si los datos origen no son un nmero (NaN).
ON si el valor absoluto de los datos origen excede de 1,0.
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF Sin cambios
desbordamiento
Indicador de UF Sin cambios
subdesborda-
miento
Indicador de N Sin cambios
negativo

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-16 DOUBLE ARC TANGENT: ATAND(856)


Empleo Calcula el arco tangente de un nmero de coma flotante de doble precisin
de 64 bits y entrega el resultado en los canales de resultado especificados.
(La funcin de arco tangente es la inversa a la funcin de tangente; devuelve
el ngulo que produce un valor de tangente dado).
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
Smbolo de diagrama de rels

ATAND(856)
S: Primer canal fuente
S D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ATAND(856)
Se ejecuta una vez en el diferencial ascendente @ATAND(856)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764

647
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ATAND(856) calcula el ngulo (en radianes) para un valor de tangente


expresado como un nmero de coma flotante de doble precisin de 64 bits de
los canales S hasta S+3 y entrega el resultado en los canales D hasta D+3.
(Los datos origen de coma flotante deben estar en formato IEEE754).
TAN-1( S+3 S+2 S+1 S ) D+3 D+2 D+1 D

El resultado se entrega a los canales D hasta D+3 como un ngulo (en


radianes) en el rango de /2 hasta /2.
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
R

S: Datos de entrada
(tangente)
R: Resultado (radianes)

648
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF Sin cambios
desbordamiento
Indicador de UF Sin cambios
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-17 DOUBLE SQUARE ROOT: SQRTD(857)


Empleo Calcula la raz cuadrada de un nmero de coma flotante de doble precisin
de 64 bits y entrega el resultado en los canales de resultado especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

SQRTD(857)

S S: Primer canal fuente


D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SQRTD(857)
Se ejecuta una vez en el diferencial ascendente @SQRTD(857)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764

649
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SQRTD(857) calcula la raz cuadrada del nmero de coma flotante de doble
precisin de 64 bits de los canales S hasta S+3 y entrega el resultado en los
canales D hasta D+3 (los datos origen de coma flotante deben estar en
formato IEEE754).

S+3 S+2 S+1 S D+3 D+2 D+1 D

Los datos origen deben ser positivos: si son negativos se producir un error y
la instruccin no se ejecutar.
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
R

S: Datos de entrada
R: Resultado

650
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen son negativos.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin de 64 bits.
Indicador de UF Sin cambios
subdesborda-
miento
Indicador de N Sin cambios
negativo

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-18 DOUBLE EXPONENT: EXPD(858)


Empleo Calcula el exponencial natural (de base e) de un nmero de coma flotante de
doble precisin de 64 bits y entrega el resultado en los canales de resultado
especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

EXPD(858)
S S: Primer canal fuente
D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON EXPD(858)
Se ejecuta una vez en el diferencial ascendente @EXPD(858)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764

651
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
rea EM sin banco E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin EXPD(858) calcula el exponencial natural (base e) del nmero de coma


flotante de doble precisin de 64 bits de los canales S hasta S+3 y entrega el
resultado en los canales D hasta D+3. Es decir, EXP(467) calcula ex (x =
origen) y entrega el resultado en los canales D hasta D+3.
S+3 S+2 S+1 S
e D+3 D+2 D+1 D

Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON y el resultado se entregar como 0.
Nota La constante e es 2,718282.
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
R

S: Datos de entrada
R: Resultado

652
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin de 64 bits.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de doble precisin de 64 bits.
Indicador de N Sin cambios
negativo

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-19 DOUBLE LOGARITHM: LOGD(859)


Empleo Calcula el logaritmo natural (de base e) de un nmero de coma flotante de
doble precisin de 64 bits y entrega el resultado en los canales de destino
especificados.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

LOGD(859)
S S: Primer canal fuente
D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON LOGD(859)
Se ejecuta una vez en el diferencial ascendente @LOGD(859)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764

653
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S D
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin LOGD(859) calcula el logaritmo natural (en radianes) del nmero de coma
flotante de doble precisin de 64 bits de los canales S hasta S+3 y entrega el
resultado en los canales D hasta D+3.

loge S+3 S+2 S+1 S D+3 D+2 D+1 D

Los datos origen deben ser positivos: si son negativos se producir un error y
la instruccin no se ejecutar.
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON y el resultado se entregar como .
Nota La constante e es 2,718282.
El siguiente diagrama muestra la relacin entre los datos introducidos y el
resultado.
R
S: Datos de entrada
R: Resultado

654
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos origen no son reconocidos como datos
error de coma flotante.
ON si los datos origen son negativos.
ON si los datos origen no son un nmero (NaN).
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.
Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin de 64 bits.
Indicador de UF Sin cambios
subdesborda-
miento
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos origen de S hasta S+3 deben estar en formato de datos de coma
flotante IEEE754.

3-16-20 DOUBLE EXPONENTIAL POWER: PWRD(860)


Empleo Eleva un nmero de coma flotante de doble precisin de 64 bits a la potencia
de otro nmero de coma flotante de doble precisin de 64 bits.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de rels

PWRD(860)

B B: Primer canal de base


E: Primer canal de exponente
E
D: Primer canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PWRD(860)
Se ejecuta una vez en el diferencial ascendente @PWRD(860)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea B E D
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A448 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764

655
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea B E D
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin PWRD(860) eleva el nmero de coma flotante de doble precisin de 64 bits


de los canales B hasta B+3 a la potencia del nmero de coma flotante de
doble precisin de 64 bits de los canales E hasta E+3. Es decir, PWR(840)
calcula XY (X = contenido de B hasta B+3; Y = contenido de E hasta E+3).
Datos de exponente
S2+3 S2+2 S2+1 S2
S1+3 S1+2 S1+1 S1 D+3 D+2 D+1 D
Datos de base

Por ejemplo, cuando los canales de base (B hasta B+3) contienen 3,1 y los canales
de exponente (E hasta E+3) contienen 3, el resultado es 3,13 o bien 29,791.
Cuando el valor absoluto del resultado es mayor que el valor mximo que
puede expresarse para datos de coma flotante, el indicador de
desbordamiento se pondr en ON.
Cuando el valor absoluto del resultado es menor que el valor mnimo que
puede expresarse para datos de coma flotante, el indicador de
subdesbordamiento se pondr en ON.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de base (B hasta B+3) o los datos de
error exponente (E hasta E+3) no se reconocen como datos
de coma flotante.
ON si los datos de base (B hasta B+3) o los datos de
exponente (E hasta E+3) no son un nmero (NaN).
ON si los datos de base (B hasta B+3) son 0 y los datos
de exponente (E hasta E+3) son menores que 0
(divisin por 0).
ON si los datos de base (B hasta B+3) son negativos y
los datos de exponente (E hasta E+3) no son enteros.
(Raz de un nmero negativo)
OFF en el resto de los casos.
Indicador de = ON si el exponente y la mantisa del resultado son 0.
igual OFF en el resto de los casos.

656
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Nombre Etiqueta Operacin


Indicador de OF ON si el valor absoluto del resultado es demasiado alto
desbordamiento como para ser expresado como un valor de coma
flotante de doble precisin.
Indicador de UF ON si el valor absoluto del resultado es demasiado bajo
subdesborda- como para ser expresado como un valor de coma
miento flotante de doble precisin.
Indicador de N ON si el resultado es negativo.
negativo OFF en el resto de los casos.

Precauciones Los datos de base (B hasta B+3) y los datos de exponente (E hasta E+3)
deben tener formato de datos de coma flotante IEEE754.

3-16-21 Instrucciones de entrada de coma flotante de doble precisin


Empleo Estas instrucciones de comparacin de entrada comparan dos valores de coma
flotante de doble precisin (formato IEEE754 de 64 bits) y crean una condicin
de ejecucin ON cuando la condicin de comparacin es verdadera.
Estas instrucciones son admitidas slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
Nota Consulte en 3-7-1 Instrucciones de comparacin de entrada (300 hasta 328)
ms detalles sobre las instrucciones de comparacin de entrada binaria con
signo y sin signo y en 3-15-21 Instrucciones de comparacin de coma flotante
de precisin simple ms detalles sobre las instrucciones de comparacin de
entrada de coma flotante de precisin simple.
Smbolo de diagrama de
rels Smbolo y opciones

S1 S1: Datos de comparacin 1

S2 S2: Datos de comparacin 2

Variaciones
Variaciones Crea ON cada ciclo que la comparacin Instruccin de com-
es verdadera. paracin de entrada
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK
Especificaciones del
operando rea S1 S2
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32767 (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

657
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

rea S1 S2
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La instruccin de comparacin de entrada compara los datos especificados


en S1 y S2 como valores de coma flotante de doble precisin (datos IEEE754
de 64 bits) y crea una condicin de ejecucin ON cuando la condicin de
comparacin es verdadera. Cuando los datos estn almacenados en canales,
S1 y S2 especifique el primero de los cuatro canales que contienen los datos
de 64 bits. Los datos de coma flotante de 64 bits no pueden introducirse
como constantes.
Introduccin de las instrucciones
Las instrucciones de comparacin de entrada se tratan de la misma manera
que las instrucciones LD, AND y OR para controlar la ejecucin de
instrucciones subsecuentes.
Entrada Operacin
LD La instruccin puede conectarse directamente a la barra de bus izquierda.
AND La instruccin no puede conectarse directamente a la barra de bus izquierda.
OR La instruccin puede conectarse directamente a la barra de bus izquierda.

Conexin LD Condicin de ejecucin ON si el resultado de la


comparacin es verdadero.
<D

Condicin de ejecucin ON si el
Conexin AND resultado de la comparacin es
verdadero.
<D

Conexin OR

<D

Condicin de ejecucin ON si el
resultado de la comparacin es
verdadero.

658
Instrucciones de coma flotante de doble precisin (slo en CS1-H, CJ1-H, CJ1M o CS1D) Seccin 3-16

Opciones
Con los tres tipos de entrada y seis smbolos existen 18 posibles combinacio-
nes diferentes.
Smbolo Opcin (formato de datos)
= (Igual que) D: Datos de coma flotante de doble precisin
<> (Distinto de)
< (Menor que)
<= (Menor o igual que)
> (Mayor que)
>= (Mayor o igual que)

Resumen de instrucciones de comparacin de entrada


En la siguiente tabla se muestran los cdigos de funcin, nemnicos,
nombres y funciones de las 18 instrucciones de entrada de coma flotante de
precisin simple. (C1=S1+3, S1+2, S1+1, S1 y C2=S2+3, S2+2, S2+1, S2.)
Cdigo Nemnico Nombre Funcin
335 LD=D LOAD DOUBLE FLOATING EQUAL Verda-
AND=D AND DOUBLE FLOATING EQUAL dera si
C1 = C2
OR=D OR DOUBLE FLOATING EQUAL
336 LD <>D LOAD DOUBLE FLOATING NOT EQUAL Verda-
AND <>D AND DOUBLE FLOATING NOT EQUAL dera si
C1 C2
OR <>D OR DOUBLE FLOATING NOT EQUAL
337 LD <D LOAD DOUBLE FLOATING LESS THAN Verda-
AND <D AND DOUBLE FLOATING LESS THAN dera si
C1 < C2
OR <D OR DOUBLE FLOATING LESS THAN
338 LD <=D LOAD DOUBLE FLOATING LESS THAN OR EQUAL Verda-
AND <=D AND DOUBLE FLOATING LESS THAN OR EQUAL dera si
C1 C2
OR <=D OR DOUBLE FLOATING LESS THAN OR EQUAL
339 LD >D LOAD DOUBLE FLOATING GREATER THAN Verda-
AND >D AND DOUBLE FLOATING GREATER THAN dera si
C1 > C2
OR >D OR DOUBLE FLOATING GREATER THAN
340 LD >=D LOAD DOUBLE FLOATING GREATER THAN OR Verda-
EQUAL dera si
AND >=D AND DOUBLE FLOATING GREATER THAN OR C1 C2
EQUAL
OR >=D OR DOUBLE FLOATING GREATER THAN OR EQUAL

Indicadores En esta tabla, C1 = contenido de S1 hasta S1+3 y C2 = contenido de S2 hasta S2+3.


Nombre Etiqueta Operacin
Indicador de ER ON si C1 o bien C2 no es un nmero de coma flotante
error vlido (NaN).
ON si C1 o bien C2 es +.
ON si C1 o bien C2 es .
OFF en el resto de los casos.
Indicador de > ON si C1 > C2.
mayor que OFF en el resto de los casos.
Indicador de >= ON si C1 C2.
mayor o igual que OFF en el resto de los casos.
Indicador de = ON si C1 = C2.
igual OFF en el resto de los casos.
Indicador de = ON si C1 C2.
distinto de OFF en el resto de los casos.

659
Instrucciones de proceso de datos de tabla Seccin 3-17

Nombre Etiqueta Operacin


Indicador de < ON si C1 < C2.
menor que OFF en el resto de los casos.
Indicador de <= ON si C1 C2.
menor o igual que OFF en el resto de los casos.
Indicador de N Sin cambios
negativo

Precauciones Las instrucciones de comparacin de entrada no pueden utilizarse como


instrucciones de la derecha, es decir, debe utilizarse otra instruccin entre
ellas y la barra de bus de la derecha.

Ejemplo AND DOUBLE FLOATING LESS THAN: AND<D(331)


Cuando CIO 000000 est en ON en el siguiente ejemplo, los datos de coma
flotante de los canales D00100 hasta D00103 se comparan con los datos de
coma flotante de los canales D00200 hasta D00203. Si el contenido de
D00100 hasta D00103 es menor que el de D00200 hasta D00203 se procede
a la ejecucin hasta la siguiente lnea y CIO 005000 se pone en ON. Si el
contenido de D00100 hasta D00103 no es menor que el de D00200 hasta
D00203, no se procede a la ejecucin hasta la siguiente lnea de instruccin.
005000
000000
<D
D00100
D00200

Compararcin DOUBLE FLOATING LESS THAN (<D)


15 0 15 0
S1 :D00100 1000101101000100 S1 :D00100 0111100100111110
S1+1:D00101 1110011101101100 S2+1:D00101 1010100001011000
S1+2:D00102 1010100111111011 S2+2:D00102 1100110100110101
S1+3:D00103 0100000000001011 S2+3:D00103 0011111111110111
Valor decimal: 3,4580 Valor decimal: 1,4876
34580>14876

No produce una condicin ON.

15 0 15 0
S1 :D00100 1101111010010001 S1 :D00100 0101010001010011
S1+1:D00101 1010100110110110 S2+1:D00101 1010100000101011
S1+2:D00102 1110110110110000 S2+2:D00102 0100100100100100
S1+3:D00103 1100101000000010 S2+3:D00103 0100100111110000
Valor decimal: 3,4580E+48 Valor decimal: 1,4876E+48
3,4580E+48<1,4876E+48

Produce una condicin ON.

3-17 Instrucciones de proceso de datos de tabla


Esta seccin describe las instrucciones utilizadas para gestionar datos de
tablas, pilas y otros rangos de datos. Las 5 instrucciones de la parte inferior
de la tabla (marcadas con un asterisco) slo son compatibles con las CPUs
CS1-H, CJ1-H, CJ1M y CS1D.
Instruccin Nemnico Cdigo de Pgina
funcin
SET STACK SSET 630 666
PUSH ONTO STACK PUSH 632 669
FIRST IN FIRST OUT FIFO 633 672

660
Instrucciones de proceso de datos de tabla Seccin 3-17

Instruccin Nemnico Cdigo de Pgina


funcin
LAST IN FIRST OUT LIFO 634 675
DIMENSION RECORD TABLE DIM 631 678
SET RECORD LOCATION SETR 635 681
GET RECORD NUMBER GETR 636 683
DATA SEARCH SRCH 181 685
SWAP BYTES SWAP 637 687
FIND MAXIMUM MX 182 689
FIND MINIMUM MIN 183 693
SUM SUM 184 697
FRAME CHECKSUM FCS 180 700
STACK NUMBER OUTPUT SNUM 638 704
STACK DATA READ SREAD 639 707
STACK DATA OVERWRITE SWRIT 640 710
STACK DATA INSERT SINS 641 713
STACK DATA DELETE SDEL 642 716

Todas estas instrucciones definen u operan en un grupo de canales. Los


grupos de canales de una pila se definen mediante SSET(630), los grupos de
canales de una tabla de registros se definen mediante DIM(631) y los grupos
de canales utilizados en una instruccin de rango se definen
independientemente en cada instruccin.
Grupo Empleo Instrucciones
Pila Operacin de tablas de datos FIFO SSET(630), PUSH(632),
(first-in first-out primero en entrar, FIFO(633), LIFO(634),
primero en salir) o LIFO (last-in first-out SREAD(639), SWRIT(640),
ltimo en entrar, primero en salir). SINS(641), SDEL(642) y
SNUM(638)
Tabla de Opera tablas de datos consistentes en DIM(631), SETR(635) y
registros registros. (El tamao de registro es GETR(636)
definido por el usuario).
Rango Opera en un rango de canales para FCS(180), SRCH(181),
encontrar valores tales como la suma MAX(182), MIN(183),
de control, un valor concreto, el valor SUM(184) y SWAP(637)
mximo o el valor mnimo del rango.

Instrucciones de Pila Las instrucciones de pila actan sobre tablas de datos especficas,
denominadas pilas. Los dos primeros canales de la pila contienen la direccin
de memoria del PLC del ltimo canal de la pila y los dos segundos canales
contienen el puntero de la pila (la direccin de memoria del PLC del canal
que ser sobrescrito por la siguiente instruccin PUSH(632)).
Memoria de E/S

Regin de pila

661
Instrucciones de proceso de datos de tabla Seccin 3-17

El siguiente diagrama muestra la estructura bsica de una pila.


Direccin de
Regin de pila Ejemplo Regin de pila memoria del PLC
Direccin de memoria del PLC
del ltimo canal de la pila Canales en
una regin 16 canales
Direccin de memoria del PLC del sigu-
Puntero

iente canal de datos (puntero de pila) de pila

Regin de datos Puntero

Final
de pila

La siguiente instruccin define o acta sobre regiones de pila. Bsicamente,


PUSH(632) almacena datos en el siguiente canal de datos disponible en la
pila. FIFO(633) y LIFO(634) leen datos de la pila. FIFO(633) lee el primer
canal que fue almacenado, mientras que LIFO(634) lee el ltimo canal que
fue almacenado.
Las ltimas cinco instrucciones son admitidas slo por las CPUs CS1-H, CJ1-
H, CJ1M y CS1D. SNUM(638) cuenta el nmero de elementos de datos
(canales) de la pila especificada; por ejemplo, esta instruccin puede
utilizarse para indicar el nmero de elementos de una cinta transportadora.
Use las instrucciones SREAD(639), SWRIT(640), SINS(641) y SDEL(642)
para leer, sobrescribir, insertar y borrar elementos de datos de una pila. Por
ejemplo, cuando se estn manipulando elementos en una cinta
transportadora, estas instrucciones pueden aadir, eliminar o modificar un
elemento de datos de la pila que corresponde a un elemento de la cinta
transportadora.
PUSH(632)
Almacena datos en la direccin indicada por el puntero de la pila y aumenta
el puntero en uno.
Pila Pila

Puntero A
Puntero

FIFO(633)
Lee el primer (ms antiguo) canal de datos que fue almacenado en la pila,
desplaza los datos restantes hacia abajo en un canal, y disminuye el puntero
en uno.
Pila Pila
Puntero al ltimo
canal de la pila
Puntero

a
a Regin de datos Regin de datos
Puntero
Puntero

Lee el contenido de A, disminuye el puntero en


1, borra A, y desplaza los datos restantes hacia
abajo.

662
Instrucciones de proceso de datos de tabla Seccin 3-17

LIFO(634)
Lee el ltimo (ms reciente) canal de datos que fue almacenado en la pila.
Disminuye el puntero en uno y lee los datos de esta direccin (los datos ms
recientemente almacenados en la pila). Los datos ledos no se borrarn.
Pila Pila

B B
Regin Puntero
A de datos A Regin de datos
Puntero

A es el ltimo canal Disminuye el puntero en uno y


almacenado en la pila. lee el contenido de A.

SREAD(639)
Lee los datos del elemento de datos especificado de la pila. El valor de
desplazamiento indica la posicin del canal deseado (el nmero de canales
de datos situados antes de la posicin del puntero actual).
Pila Pila
Puntero al ltimo
canal de la pila

Puntero
: :
A A
B B
-n Regin de datos Regin de datos
(n=3) C C
Puntero Puntero
(sin cambios)

Datos en la posicin de ltimo canal de


puntero - n datos de la pila.
(n=3 en este ejemplo).
A
Lee los datos de la
posicin de puntero - n.
(n=3 en este ejemplo).

663
Instrucciones de proceso de datos de tabla Seccin 3-17

SWRIT(640)
Escribe los datos origen en el elemento de datos especificado de la pila
(sobrescribiendo los datos existentes). El valor de desplazamiento indica la
posicin del canal deseado (el nmero de canales de datos situados antes de
la posicin del puntero actual).
Pila Pila
Puntero al ltimo M
canal de la pila Sobrescribe los datos de
la posicin de puntero - n.
Puntero (n=3 en este ejemplo).
: :
A M
-n B B
(n=3) C Regin de datos C Regin de datos
Puntero Puntero
(sin
cambios)

Datos en la posicin de ltimo canal de datos


puntero - n de la pila.
(n=3 en este ejemplo).

SINS(641)
Inserta los datos origen en la posicin especificada de la pila y desplaza el
resto de los datos de la pila situada hacia abajo. El valor de desplazamiento
indica la posicin del canal deseado (el nmero de canales de datos situados
antes de la posicin del puntero actual).
Pila Pila
Puntero al ltimo M Puntero al ltimo
canal de la pila Datos en la posicin canal de la pila
de puntero n Puntero
Puntero

Insertar
: :
A M
B Regin de datos A Regin de
-n datos
(n=3) C B
Puntero Puntero C
(Aumentado en 1)
Inserta el elemento de datos M en la
Datos en la posicin de ltimo canal de posicin de puntero - n, desplaza los
puntero - n datos de la pila. datos existentes (A, B y C) hacia abajo,
(n=3 en este ejemplo). y aumenta el valor de puntero en 1.

664
Instrucciones de proceso de datos de tabla Seccin 3-17

SDEL(642)
Elimina el elemento de datos de la posicin especificada de la pila y desplaza
hacia arriba el resto de los datos de la pila. El valor de desplazamiento indica
la posicin del canal deseado (el nmero de canales de datos situados antes
de la posicin del puntero actual).
Pila Pila

Puntero al ltimo Puntero al ltimo


canal de la pila canal de la pila

Puntero Puntero
: :
A B
-n B C
Regin Puntero Regin de datos
(n=3) C
de datos
C
Puntero (Disminuido
en 1)

Datos en la posicin de
puntero - n ltimo canal
(n=3 en este ejemplo). de datos de
la pila.
A
Elimina el elemento de datos de la
posicin del puntero - n, desplaza
los datos restantes hacia arriba, y
disminuye el valor del puntero en 1.

SNUM(638)
Cuenta la cantidad de datos de la pila (nmero de canales de datos) desde el
puntero de la pila hasta el comienzo de la regin de datos.
Pila Pila
Puntero al ltimo Puntero al ltimo
canal de la pila canal de la pila

Puntero Puntero
A A
B B
C C
Regin Regin de datos
D de datos D
E E
Puntero Puntero
(sin cambios)

Cuenta los elementos de datos (N).


0005

Instrucciones de la tabla Una serie de datos consistente en ms de un registro con el mismo nmero
de registros de canales en cada registro se llama datos de tabla. Los datos de tabla
almacenados en la memoria de E/S especificada pueden registrarse como
rea de tabla mediante la instruccin DIM. Pueden definirse hasta 16 tablas
distintas con los nmeros de tabla del 0 al 15.

Tabla nmero 0

Tabla nmero 1

665
Instrucciones de proceso de datos de tabla Seccin 3-17

El siguiente diagrama muestra la estructura bsica de una tabla de registros.


Todos los registros de una tabla tienen el mismo nmero de canales.
Tabla

Registro
Mismo nmero de
Registro canales en cada
registro

Registro

Los registros de ndice (IR) para referenciar indirectamente datos de tabla. El


clculo de la direccin del registro puede ejecutarse fcilmente mediante las
instrucciones SETR(635) (SET RECORD NUMBER) y GETR(636) (GET
RECORD NUMBER).

Instrucciones de rango Las instrucciones de rango incluidas aqu actan sobre un rango de canales
especificado para buscar el valor mximo (MAX(182)) o el valor mnimo
(MIN(183)), buscar un valor particular (SRCH(181)), calcular la suma
(SUM(184)) o FCS (FCS(180)), o intercambiar los contenidos de los bytes de
la izquierda y derecha de los canales (SWAP(637)).
Bsqued Bsqueda
a MAX o SRCH Clculo
Rango MIN Operacin
especificado SUM o SWAP
en la clculo FCS
instruccin

3-17-1 SET STACK: SSET(630)


Empleo Define una pila de la longitud especificada comenzando en el canal
especificado.

Smbolo de diagrama de
rels SSET(630)

TB TB: Primera direccin


de la pila
N N: Nmero de canales

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SSET(630)
Se ejecuta una vez en el diferencial ascendente @SSET(630)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos TB hasta TB+3: Canales de control de pila


Los primeros cuatro canales de la pila contienen la direccin de memoria del
PLC del ltimo canal de la pila y el puntero de la pila (la direccin de memoria
del PLC del siguiente canal a ser sobrescrito mediante PUSH(632)).

666
Instrucciones de proceso de datos de tabla Seccin 3-17

15 0
TB

Direccin de memoria del PLC del


ltimo canal de la pila (4 dgitos de
la derecha)
15 0
TB+1

Direccin de memoria del PLC del


ltimo canal de la pila (4 dgitos de
la izquierda)
15 0
TB+2

Puntero de la pila
(4 dgitos de la derecha)
15 0
TB+3
Puntero de la pila
(4 dgitos de la izquierda)

TB+4 hasta TB+(N1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar datos.
15 0
TB+4 Regin de almacenamiento de datos

---
TB+(N1)

Nota 1. El valor inicial del puntero de la pila es siempre la direccin de memoria


del PLC de TB+4.
2. TB y TB+(N1) deben estar en el mismo rea de datos.

Especificaciones del
operando rea TB N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0005 hasta #FFFF
(binario) o bien &5 hasta
&65.535

667
Instrucciones de proceso de datos de tabla Seccin 3-17

rea TB N
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SSET(630) asegura una pila con N canales empezando por TB y finalizando
en TB+(N1). Los primeros dos canales de la pila (TB+1 y TB) contienen la
direccin de memoria hexadecimal de 8 dgitos del PLC del ltimo canal de la
pila. Los siguientes dos canales (TB+3 y TB+2) contienen el puntero de la
pila. El puntero de la pila es la direccin de memoria del PLC del siguiente
canal de la pila que ser sobrescrito mediante PUSH(632); su valor inicial es
la direccin de TB+4.
SSET(630) inicializa automticamente la regin de datos de la pila (TB+4
hasta TB+(N1)) a ceros. El siguiente diagrama muestra la estructura bsica
de una pila.
Direccin de
memoria del PLC
TB
TB+1
m+(N1)
N
ltimo TB+2 canales
canal de TB+3 apilados
la pila
Puntero
de pila
m+(N1)

SSET(630) establece e inicializa una pila. Utilice las siguientes instrucciones


para almacenar datos en la pila y leer datos de la pila.

1,2,3... 1. PUSH(632) almacena datos en la pila en un canal cada vez.


2. FIFO(633) y LIFO(634) leen datos de la pila. FIFO(633) lee el primer canal
que fue almacenado, LIFO(634) lee el ltimo canal que fue almacenado.
3. El valor de puntero de la pila del canal de control de la pila se actualiza
automticamente cuando se ejecuta PUSH(632), FIFO(633) o bien
LIFO(634). Normalmente, el usuario no necesita preocuparse acerca del
control de la pila. Cuando acceda a los contenidos de la pila sin utilizar las
instrucciones anteriores, ajuste el valor del puntero de la pila mediante el
Registro de ndice (IR) para una referenciacin indirecta.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no est dentro del rango especificado de 0005
error hasta FFFF.
OFF en el resto de los casos.

Precauciones El valor mnimo para el nmero de canales de la pila (N) es 5 porque N


incluye los cuatro canales que contienen el puntero hasta el ltimo canal de la
pila y el puntero de la pila. Se producir un error si N no est dentro del rango
de 0005 hasta FFFF.
Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, SSET(630) asegura
una pila de 10 canales desde D00000 hasta D00009. D00000 y D00001
contienen la direccin de memoria del PLC del ltimo canal de la pila.
D00002 y D00003 contienen el puntero de la pila. La pila en s misma
comienza en D00004.
668
Instrucciones de proceso de datos de tabla Seccin 3-17

&10
Direccin de memoria del PLC
Direccin de memoria del
PLC del ltimo canal de la pila

Puntero de pila

ltimo 10 canales
canal de Puntero
la pila de pila

3-17-2 PUSH ONTO STACK: PUSH(632)


Empleo Escribe un canal de datos en la pila especificada.

Smbolo de diagrama de
rels PUSH(632)
TB: Primera direccin
TB de la pila
S S: Canal fuente

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PUSH(632)
Se ejecuta una vez en el diferencial ascendente @PUSH(632)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos TB hasta TB+3: Canales de control de pila


Los primeros cuatro canales de la pila contienen la direccin de memoria del
PLC del ltimo canal de la pila y el puntero de la pila (la direccin de memoria
del PLC del siguiente canal a ser sobrescrito mediante PUSH(632)).

669
Instrucciones de proceso de datos de tabla Seccin 3-17

15 0
TB

Direccin de memoria del PLC del


ltimo canal de la pila (4 dgitos de
la derecha)
15 0
TB+1

Direccin de memoria del PLC del


ltimo canal de la pila (4 dgitos de
la izquierda)
15 0
TB+2

Puntero de la pila
(4 dgitos de la derecha)
15 0
TB+3

Puntero de la pila
(4 dgitos de la izquierda)

TB+4 hasta TB+(N1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar datos.
15 0
TB+4 Regin de almacenamiento de datos

TB+(N1)

Especificaciones del
operando rea TB S
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta #FFFF
(binario)
Registros de datos --- DR0 hasta DR15

670
Instrucciones de proceso de datos de tabla Seccin 3-17

rea TB S
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin PUSH(632) escribe el contenido de S en la direccin indicada por el puntero


de la pila (TB+3 y TB+2) y aumenta el puntero en uno.
Direccin de Direccin de
memoria del PLC memoria del PLC
D D
n n
D+1 D+1
D+2 D+2
m m+1
D+3 Escribir A. D+3
S A
A m A m
Puntero m+1
Puntero
n Aumentar n
puntero en 1.

Una vez PUSH(632) ha sido utilizado para escribir datos en una pila,
FIFO(633) y LIFO(634) pueden utilizarse para leer datos de la pila.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si la direccin especificada por el puntero de la pila
error (TB+3 y TB+2) excede el ltimo canal de la pila.
(Esto sera un error de desbordamiento de la pila).
OFF en el resto de los casos.

Precauciones La pila debe definirse con anterioridad con SSET(630).

671
Instrucciones de proceso de datos de tabla Seccin 3-17

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, PUSH(632) copia el


contenido de D00200 en la pila empezando por D00000. En este caso el
puntero de la pila indica D00007.

Direccin de memoria del PLC


Direccin de memoria del PLC
del ltimo canal de la pila
Puntero de pila
Puntero
de pila
ltimo canal Escribir A.
de la pila

Direccin de memoria del PLC


Direccin de memoria del PLC
del ltimo canal de la pila
Puntero de pila Una vez se escriben los
datos en D00007, el puntero
ltimo de la pila aumenta en uno.
canal de
la pila
A

3-17-3 FIRST IN FIRST OUT: FIFO(633)


Empleo Lee el primer canal de datos escritos en la pila especificada (los datos ms
antiguos de la pila).

Smbolo de diagrama de
rels FIFO(633)

TB TB: Primera direccin


de la pila
D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FIFO(633)
Se ejecuta una vez en el diferencial ascendente @FIFO(633)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

672
Instrucciones de proceso de datos de tabla Seccin 3-17

Operandos TB hasta TB+3: Canales de control de pila


Los primeros cuatro canales de la pila contienen la direccin de memoria del
PLC del ltimo canal de la pila y el puntero de la pila (la direccin de memoria
del PLC del siguiente canal a ser sobrescrito mediante PUSH(632)).
15 0
TB

Direccin de memoria del PLC del


ltimo canal de la pila (4 dgitos de
la derecha)
15 0
TB+1

Direccin de memoria del PLC del


ltimo canal de la pila (4 dgitos de
la izquierda)
15 0
TB+2

Puntero de la pila
(4 dgitos de la derecha)
15 0
TB+3

Puntero de la pila
(4 dgitos de la izquierda)

TB+4 hasta TB+(N1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar datos.
15 0
TB+4 Regin de almacenamiento de datos

---
TB+(N1)

Especificaciones del
operando rea TB D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---

673
Instrucciones de proceso de datos de tabla Seccin 3-17

rea TB D
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin FIFO(633) lee el canal de datos ms antiguo de la pila (TB+4) y entrega los
datos a D. A continuacin, el puntero de la pila (TB+3 y TB+2) disminuye en
uno, el resto de los datos de la pila se desplazan hacia abajo en un canal, y
los datos ledos de TB+4 se eliminan. Los datos al final de la pila (la direccin
que era indicada por el puntero de la pila) se mantienen sin cambios.
Direccin de Direccin de
memoria del PLC memoria del PLC
TB Datos TB
Puntero TB+1 ms TB+1
de pila TB+2 antiguos TB+2
m1
TB+3 TB+3
TB+4 TB+4

Puntero
de pila m1

FIFO (primero en entrar, primero en salir)

Use FIFO(633) en combinacin con PUSH(632). Una vez PUSH(632) ha sido


utilizado para escribir datos en una pila, FIFO(633) puede utilizarse para leer
datos de la pila con un concepto primero en entrar, primero en salir.
FIFO(633) lee los datos del principio de la pila y los elimina para desplazar
los siguientes datos en una posicin hacia adelante.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los contenidos del puntero de la pila (TB+3 y TB+2)
error son menores o iguales que la direccin de memoria del
PLC del primer canal de la regin de datos de la pila
(TB+4).
(Esto sera un error de subdesbordamiento de la pila).
OFF en el resto de los casos.

Precauciones La pila debe definirse con anterioridad con SSET(630).

674
Instrucciones de proceso de datos de tabla Seccin 3-17

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, FIFO(633) lee el


contenido de D00004 (TB+4 para la pila que comienza por D00000) y escribe
esos datos en D00300.

TB

TB:
Direccin de memoria del PLC
del ltimo canal de la pila
Puntero de pila
ltimo canal Puntero Ledo mediante FIFO(633).
de la pila de pila
D: D00300

Una vez se escriben los datos en D00300, el puntero de la pila disminuye en


uno y los datos restantes se desplazan hacia abajo. (El contenido de D00005
se desplaza a D00004 y el contenido de D00006 de desplaza a D00005).
Direccin de memoria del PLC
del ltimo canal de la pila

Puntero de pila
Puntero
ltimo de pila
canal de
la pila 1 D: D00300

3-17-4 LAST IN FIRST OUT: LIFO(634)


Empleo Lee el ltimo canal de datos escritos en la pila especificada (los datos ms
recientes de la pila).

Smbolo de diagrama de
rels LIFO(634)
TB: Primera direccin
TB de la pila
D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON LIFO(634)
Se ejecuta una vez en el diferencial ascendente @LIFO(634)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

675
Instrucciones de proceso de datos de tabla Seccin 3-17

Operandos TB hasta TB+3: Canales de control de pila


Los primeros cuatro canales de la pila contienen la direccin de memoria del
PLC del ltimo canal de la pila y el puntero de la pila (la direccin de memoria
del PLC del siguiente canal a ser sobrescrito mediante PUSH(632)).
15 0
TB

Direccin de memoria del PLC del


ltimo canal de la pila (4 dgitos de
la derecha)
15 0
TB+1

Direccin de memoria del PLC del


ltimo canal de la pila (4 dgitos de
la izquierda)
15 0
TB+2

Puntero de la pila
(4 dgitos de la derecha)
15 0
TB+3

Puntero de la pila
(4 dgitos de la izquierda)

TB+4 hasta TB+(N1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar datos.
15 0
TB+4 Regin de almacenamiento de datos

---
TB+(N1)

Especificaciones del
operando rea TB D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos --- DR0 hasta DR15

676
Instrucciones de proceso de datos de tabla Seccin 3-17

rea TB D
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin LIFO(634) lee los datos de la direccin indicada por el puntero de la pila (el
canal de datos ms reciente de la pila), disminuye el puntero de la pila en
uno, y entrega los datos a D. El canal ledo se mantiene sin cambios.
Direccin de Direccin de memoria
memoria del PLC del PLC
TB Datos TB
Puntero TB+1 ms TB+1
de pila TB+2 recientes TB+2
TB+3 TB+3 m1

Puntero
de pila
m1 m1 A se mantiene
sin cambios.

El puntero Leyendo
disminuye.

Use LIFO(634) en combinacin con PUSH(632). Una vez PUSH(632) ha sido


utilizado para escribir datos en una pila, LIFO(634) puede utilizarse para leer
datos de la pila con un concepto ltimo en entrar, primero en salir. Una vez
los datos hayan sido almacenados por PUSH(632), el puntero de la pila
indica la direccin siguiente a los ltimos datos.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los contenidos del puntero de la pila (TB+3 y TB+2)
error son menores o iguales que la direccin de memoria del
PLC del primer canal de la regin de datos de la pila
(TB+4).
(Esto sera un error de subdesbordamiento de la pila).
OFF en el resto de los casos.

Precauciones La pila debe definirse con anterioridad con SSET(630).

677
Instrucciones de proceso de datos de tabla Seccin 3-17

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, LIFO(634) lee el


contenido del canal indicado por el puntero de la pila (D00006) y escribe esos
datos en D00300.

TB:
Direccin de memoria del PLC
del ltimo canal de la pila

Puntero de pila
Puntero
de pila
ltimo canal
de la pila 1

Direccin de memoria del PLC


del ltimo canal de la pila

Puntero de pila
Puntero
ltimo canal de pila
de la pila Ledo mediante LIFO(634).

D: D00300

Una vez se escriben los datos en D00300, el puntero de la pila disminuye en


uno. El contenido de D00006 se mantiene sin cambios.

3-17-5 DIMENSION RECORD TABLE: DIM(631)


Empleo Define el rea de memoria de E/S especificada como una tabla de registros
determinando la longitud de cada registro y el nmero de registros. Es
posible definir hasta 16 tablas de registros.

Smbolo de diagrama de
rels DIM(631)

N N: Nmero de tabla

LR LR: Longitud de cada registro

NR NR: Nmero de registros

TB TB: Primer canal de la tabla

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DIM(631)
Se ejecuta una vez en el diferencial ascendente @DIM(631)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

678
Instrucciones de proceso de datos de tabla Seccin 3-17

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de tabla


Indica el nmero de tabla. N debe estar entre 0 y 15.
LR: Longitud de cada registro
Indica el nmero de canales en cada registro. LR debe ser de 0001 hasta
FFFF hexadecimal (1 a 65.535 canales).
NR: Nmero de registros
Indica el nmero de registros de la tabla. NR debe ser de 0001 hasta FFFF
hexadecimal (1 a 65.535 canales).
TB: Primer canal de la tabla
Indica el primer canal de la tabla. Todos los canales de la tabla deben estar
en el mismo rea de datos. Es decir, TB y TB+LRNR1 deben estar en el
mismo rea de datos.
Especificaciones del
operando rea N LR NR TB
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 hasta A959 A448 hasta A959
rea Temporizador --- T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes 0 a 15 #0001 hasta #FFFF (binario) o ---
bien &1 hasta &65.535
Registros de datos --- DR0 hasta DR15 ---
Registros de ndice --- ---
Direccionamiento --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15 ,IR0+(++) hasta
,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin DIM(631) registra los canales de TB hasta TB+LRNR1 como el nmero de


tabla N. El nmero de tabla N tiene NR registros y cada registro tiene una
longitud de LR canales. Los datos de esta regin no pueden modificarse una
vez la regin haya sido declarada como registros.
Use DIM(631) en combinacin con SETR(635) (SET RECORD NUMBER) o
bien GETR(636) (GET RECORD NUMBER) para simplificar el clculo de

679
Instrucciones de proceso de datos de tabla Seccin 3-17

direcciones en las tablas de datos. Use DIM(631) para dividir datos en


registros y despus use SETR(635) para almacenar la primera direccin del
registro deseado en un registro de ndice. El registro de ndice puede
utilizarse a manera de puntero en otras instrucciones, como pueden ser leer,
escribir, buscar, o comparar instrucciones.
Por ejemplo, si las temperaturas, presiones u otros valores de configuracin
se almacenan como registros y los registros de varios modelos se combinan
en una tabla, es muy sencillo leer los valores de configuracin de cada
modelo para cualquier condicin particular.
Nmero de tabla (N)

Registro 0

Nmero de Registro 1
registros LR NR
canales

Registro NR1

Las dos instrucciones de tabla de registros asociadas com DIM(631) son


SETR(635) y GETR(636). SETR(635) ajusta la direccin de memoria del PLC
inicial del nmero de registro especificado en el registro de ndice especificado.
GETR(636) entrega el nmero de registro del registro que incluye el valor de
registro de ndice especificado (direccin de memoria del PLC).
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si LR o NR es 0000.
error OFF en el resto de los casos.
Precauciones Los registros de una tabla registrada se identifican mediante sus nmeros de
registro, cuyo rango es de 0 hasta NR1.
Dependiendo de las configuraciones de la longitud del registro (LR) y del
nmero de registros (NR), es posible que una sola tabla (desde TB y
TB+LRNR1) solape dos reas de datos. Asegrese de que no se
producirn problemas antes de especificar una tabla que solape el lmite de
un rea de datos.
Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, DIM(631) define el
nmero de tabla de registros 2 con tres registros de 10 canales. La tabla
comienza en D00300.

N Longitud de registro:
LR LR: D00100 10 canales
NR NR: D00200 Nmero de registros: 3
TB Tabla nmero 2

Registro 0
10 canales

10 canales
Registro 1

10 canales
Registro 2

680
Instrucciones de proceso de datos de tabla Seccin 3-17

3-17-6 SET RECORD LOCATION: SETR(635)


Empleo Escribe la posicin del registro especificado (la direccin de memoria del PLC
del principio del registro) en el registro de ndice especificado.

Smbolo de diagrama de
rels SETR(635)

N N: Nmero de tabla

R R: Nmero de registro

D D: Registro de ndice de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SETR(635)
Se ejecuta una vez en el diferencial ascendente @SETR(635)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de tabla


Indica el nmero de tabla. N debe estar entre 0 y 15.
R: Nmero de registro
Indica el nmero de registro del registro deseado. R debe ser de 0000 hasta
FFFE hexadecimal (0 a 65.534 canales). Los nmeros de registro comienzan
por 0, as que los nmeros de registro vlidos son 0 hasta NR1 para una
tabla con NR registros.
D: Registro de ndice de destino
Indica el registro de ndice desado. D debe estar entre IR0 y IR15.

Especificaciones del
operando rea N R D
rea CIO --- CIO 0000 hasta CIO 6143 ---
rea de Trabajo --- W000 hasta W511 ---
rea de bit en Espera --- H000 hasta H511 ---
rea Bit Auxiliar --- A000 hasta A959 ---
rea Temporizador --- T0000 hasta T4095 ---
rea Contador --- C0000 hasta C4095 ---
rea DM --- D00000 hasta D32767 ---
rea EM sin banco --- E00000 hasta E32767 ---
rea EM con Banco --- En_00000 hasta En_32767 ---
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767 ---
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @
En_32767
Direcciones DM/EM --- *D00000 hasta *D32767 ---
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767

681
Instrucciones de proceso de datos de tabla Seccin 3-17

rea N R D
Constantes 0 a 15 #0000 hasta #FFFE (binario) ---
o bien &0 hasta 65534
Registros de datos --- DR0 hasta DR15 ---
Registros de ndice --- IR0 hasta
IR15
Direccionamiento --- ,IR0 hasta ,IR15 ---
indirecto utilizando 2048 hasta +2047 ,IR0 hasta
registros de ndice 2048 hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta
IR15
,IR0+(++) hasta ,IR15+(++)
, ( )IR0 hasta, ( )IR15

Descripcin SETR(635) almacena la direccin de memoria del PLC del primer canal del
registro especificado en el registro de ndice especificado. El siguiente
diagrama muestra la operacin bsica de SETR(635).
Nmero de tabla (N) Direccin de memoria
del PLC
SETR(635) escribe la direccin de memoria
R del PLC (m) del primer canal del registro R
en el registro de ndice D.
Nmero de
registro (R)

IR@

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el nmero de tabla especificado (N) no ha sido
error definido con DIM(631).
ON si el nmero de registro especificado (R) excede el
nmero de registro ms alto de la tabla (NR1).
OFF en el resto de los casos.

Precauciones La tabla de registros debe definirse con anterioridad con DIM(631).


Los nmeros de registro vlidos van desde 0 hasta NR1, donde NR es el
nmero de registros especificado cuando la tabla fue definida mediante
DIM(631).

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, SETR(635) busca la


direccin de memoria del PLC del primer canal del registro 3 del nmero de
tabla 10 y almacena esta direccin en el registro de ndice IR11.

Direccin de
R memoria del PLC
Tabla nmero 10
Nmero de registro: 0
a
Nmero de registro 3

682
Instrucciones de proceso de datos de tabla Seccin 3-17

3-17-7 GET RECORD NUMBER: GETR(636)


Empleo Devuelve el nmero de registro del registro situado en la direccin de
memoria del PLC contenida en el registro de ndice especificado.

Smbolo de diagrama de
rels GETR(636)

N N: Nmero de tabla

IR IR: Registro de ndice

D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON GETR(636)
Se ejecuta una vez en el diferencial ascendente @GETR(636)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de tabla


Indica el nmero de tabla. N debe estar entre 0 y 15.
IR: Registro de ndice
Indica el registro de ndice desado. D debe estar entre IR0 y IR15.
D: Canal de destino
Indica el canal en el que se escribir el nmero de registro.

Especificaciones del
operando rea N IR D
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A448 hasta A959
rea Temporizador --- T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes 0 a 15 --- ---

683
Instrucciones de proceso de datos de tabla Seccin 3-17

rea N IR D
Registros de datos --- DR0 hasta DR15
Registros de ndice --- IR0 hasta ---
IR15
Direccionamiento --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047, IR0
registros de ndice hasta
2048 hasta +2047, IR15
DR0 hasta DR15, IR0 hasta
IR15 ,IR0+(++) hasta
,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin GETR(636) busca qu registro incluye la direccin de memoria del PLC


contenida en el registro de ndice especificado y escribe ese nmero de
registro en D. La direccin de memoria del PLC contenida en el registro de
ndice no tiene que ser necesariamente el primer canal del regsitro; puede
ser cualquier canal del registro.
El siguiente diagrama muestra la operacin bsica de GETR(636).

Nmero de tabla (N) Direccin de


memoria del PLC

GETR(636) escribe el nmero de


IR Nmero de registro del registro que incluye la
registro (R) direccin de memoria del PLC m en D.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si la direccin de memoria del PLC del registro de
error ndice especificado no est dentro de la tabla
especificada (N).
ON si el nmero de tabla especificado (N) no ha sido
definido con DIM(631).
OFF en el resto de los casos.

Precauciones La tabla de registro debe definirse anteriormente mediante DIM(631) y la


direccin de memoria del PLC del registro de ndice especificado debe estar
dentro de la tabla especificada.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, GETR(636) busca


el nmero de registro del registro que contiene la direccin de memoria del
PLC del registro de ndice IR11 y escribe este nmero de registro en D01000.

IR Direccin de
Tabla nmero 10 memoria del PLC
Nmero de registro: 0
a
Nmero de registro 3 Registro conteniendo
la direccin 10000.

684
Instrucciones de proceso de datos de tabla Seccin 3-17

3-17-8 DATA SEARCH: SRCH(181)


Empleo Busca un canal de datos dentro de un rango de canales.
En las CPUs CS1D para sistemas de CPU individual y en las CPUs CS1-H,
CJ1-H y CJ1M, esta instruccin puede ejecutarse en segundo plano.
Consulte informacin ms detallada sobre la ejecucin en segundo plano en
el Manual de programacin de las series CS y CJ.

Smbolo de diagrama de
rels SRCH(181)

C C: Primer canal de control


R1: Primer canal en
R1
el rango
Cd Cd: Datos de comparacin

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SRCH(181)
Se ejecuta una vez en el diferencial ascendente @SRCH(181)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C y C+1: Canales de control


C especifica el nmero de canales del rango y el bit 15 de C+1 indica si
entregar o no el nmero de coincidencias a DR00.
15 0
C

Nmero de canales del rango


15 14 0
C+1 000 0000 0000 0000

0
Seleccin de salida Seleccin de salida
0000 hexadecimal: No entrega el
0: No entrega el nmero de nmero de coincidencias.
coincidencias. 8000 hexadecimal: Entrega el nmero
1: Entrega el nmero de coincidencias. de coincidencias.

Nota C y C+1 deben estar en el mismo rea de datos.


R1: Primer canal en el rango
R1 especifica el primer canal del rango de bsqueda. Se buscan en los
canales de R1 hasta R1+(C1) los datos deseados. (C es el nmero de
canales configurado en C).
15 0

R1
Rango de bsqueda
a ---
R1+(C1)

685
Instrucciones de proceso de datos de tabla Seccin 3-17

Nota R1 y R1+C1 deben estar en el mismo rea de datos.

Especificaciones del
operando rea C R1 Cd
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 6143
CIO 6142
rea de Trabajo W000 hasta W510 W000 hasta W511
rea de bit en Espera H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A958 A000 hasta A959
rea Temporizador T0000 hasta T4094 T0000 hasta T4095
rea Contador C0000 hasta C4094 C0000 hasta C4095
rea DM D00000 hasta D00000 hasta D32767
D32766
rea EM sin banco E00000 hasta E00000 hasta E32767
E32766
rea EM con Banco En_00000 hasta En_00000 hasta En_32767 (n = 0 a C)
En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores --- #0000 hasta
especificados #FFFF (binario)
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SRCH(181) busca en el rango de memoria desde R1 hasta R1+C1 canales


que contengan los datos de comparacin (Cd). Si se encuentra una
coincidencia, SRCH(181) escribe la direccin de memoria del PLC del canal
en IR00 y pone el indicador de igual en ON.
(Si hay dos o ms coincidencias, slo se escribe la direccin del primer canal
que contenga los datos de comparacin en IR00).
Cuando el bit 15 de C+1 se ha configurado como 1, SRCH(181) escribe el
nmero de coincidencias en DR00. Cuando el bit 15 de C+1 es 0, DR00 se
mantiene sin cambios.
Direccin de memoria
del PLC
R1 Buscar

C Cd

R1+(C1)
Coincidencia

686
Instrucciones de proceso de datos de tabla Seccin 3-17

SRCH(181) busca datos de tabla que contengan un canal en cada registro.


Para buscar datos que contengan ms de un canal por registro use DIM(631),
SETR(635), GETR(636), FOR(512)NEXT(513) o BREAK(514) junto con un
registro de ndice (IR).
El estado del indicador de igual puede comprobarse inmediatamente
despus de la ejecucin para determinar su haba o no una coincidencia.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de C no est dentro del rango
error especificado de 0001 hasta FFFF.
OFF en el resto de los casos.
Indicador de = ON si uno o ms de los canales del rango de bsqueda
igual contienen los datos de comparacin.
ON si el indicador de habilitacin de puerto de
comunicaciones para el nmero de puerto de
comunicaciones especificado como el N de puerto de
comunicaciones para Ejecucin en segundo plano est
en OFF cuando se especifica procesamiento en
segundo plano.
OFF en el resto de los casos.

Precauciones Si no se encuentra ninguna coincidencia, los contenidos de IR00 y DR00 se


mantienen sin cambios.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, SRCH(181) busca


en el rango de 10 canales empezando por D00100 canales que tengan el
mismo contenido que D00200. La direccin de memoria del PLC del primer
canal que contenga una coincidencia se escribe en IR00 y el nmero total de
coincidencias se escribe en DR00.

Direccin de
#8000000A
memoria del PLC
R1
Buscar
Cd
10067
D00200
Nmero de coincidencias

00010067
Nmero de
0003 coincidencias

Si la longitud de la tabla se especifica como &10 (10 decimal) o bien A


hexadecimal, el nmero de coincidencias no se entregar al registro de datos
DR00.

3-17-9 SWAP BYTES: SWAP(637)


Empleo Cambia los bits de la izquierda y de la derecha en todos los canales del
rango.
En las CPUs CS1D para sistemas de CPU individual y en las CPUs CS1-H,
CJ1-H y CJ1M, esta instruccin puede ejecutarse en segundo plano.
Consulte informacin ms detallada sobre la ejecucin en segundo plano en
el Manual de programacin de las series CS y CJ.

687
Instrucciones de proceso de datos de tabla Seccin 3-17

Smbolo de diagrama de
rels SWAP(637)

N N: Nmero de canales
R1: Primer canal en
R1
el rango
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SWAP(637)
Se ejecuta una vez en el diferencial ascendente @SWAP(637)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de canales


N especifica el nmero de canales del rango y debe ser de 0001 hasta FFFF
hexadecimal (o bien de &1 hasta &65.535).
R1: Primer canal en el rango
R1 especifica el primer canal del rango. R1 y R1+(N1) deben estar en el
mismo rea de datos.
Byte de la izquierda Byte de la derecha
15 8 7 0

R1

a
R1+(N1)

Especificaciones del
operando rea N R1
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)

688
Instrucciones de proceso de datos de tabla Seccin 3-17

rea N R1
Constantes #0001 hasta #FFFF ---
(binario) o bien &1 hasta
&65.535
Registros de datos DR00 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SWAP(637) cambia la posicin de los dos bytes de todos los canales del
rango de memoria de R1 hasta R1+N1. Esta instruccin puede usarse para
invertir el orden de los caracteres del cdigo ASCII de cada canal.
Intercambio de la posicin de los bytes.

R1
N

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N es 0000.
error ON si el indicador de habilitacin de puerto de
comunicaciones para el nmero de puerto de
comunicaciones especificado como el N de puerto de
comunicaciones para Ejecucin en segundo plano est
en OFF cuando se especifica procesamiento en
segundo plano.
OFF en el resto de los casos.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, SWAP(637)


intercambia los datos de los bytes de la izquierda con los datos de los bytes
de la derecha de cada canal del rango de 10 canales desde W000 hasta
W009.

N &10
R1

a a a a

3-17-10 FIND MAXIMUM: MAX(182)


Empleo Busca el valor mximo del rango.
En las CPUs CS1D para sistemas de CPU individual y en las CPUs CS1-H,
CJ1-H y CJ1M, esta instruccin puede ejecutarse en segundo plano.
Consulte informacin ms detallada sobre la ejecucin en segundo plano en
el Manual de programacin de las series CS y CJ.

689
Instrucciones de proceso de datos de tabla Seccin 3-17

Smbolo de diagrama de
rels MAX(182)

C C: Primer canal de control


R1: Primer canal en
R1
el rango
D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MAX(182)
Se ejecuta una vez en el diferencial ascendente @MAX(182)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C y C+1: Canales de control


C especifica el nmero de canales del rango, el bit 15 de C+1 indica si los
datos se tratarn como binarios con signo o binarios sin signo, y el bit 14 de
C+1 indica si se entrega o no la direccin de memoria del PLC del canal que
contiene el valor mximo a IR00.
Nota C y C+1 deben estar en el mismo rea de datos.

15 0
C

Nmero de canales del rango

15 14 13 0

C+1 00 0000 0000 0000

0
Seleccin de salida
0: No entrega la direccin a IR00.
1: Entrega la direccin a IR00.

Tipo de datos
0: Datos binarios sin signo
1: Datos binarios con signo

La siguiente tabla muestra los posibles valores de C.


C+1 Tipo de datos Salida de registro de ndice
0000 Binario sin signo No
4000 Binario sin signo S
8000 Binario con signo No
C000 Binario con signo S

R1: Primer canal en el rango


R1 especifica el primer canal del rango de bsqueda. Se busca en los
canales de R1 hasta R1+(C1) el valor mximo. (C es el nmero de canales
especificado en C).

690
Instrucciones de proceso de datos de tabla Seccin 3-17

15 0
R1 Rango de bsqueda

a ---
R1+(C1)

Nota R1 y R1+(C1) deben estar en el mismo rea de datos.

Especificaciones del
operando rea C R1 D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 6143
CIO 6142
rea de Trabajo W000 hasta W510 W000 hasta W511
rea de bit en Espera H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A958 A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4094 T0000 hasta T4095
rea Contador C0000 hasta C4094 C0000 hasta C4095
rea DM D00000 hasta D00000 hasta D32767
D32766
rea EM sin banco E00000 hasta E00000 hasta E32767
E32766
rea EM con Banco En_00000 hasta En_00000 hasta En_32767
En_32766 (n = 0 a C)
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores ---
especificados
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin MAX(182) busca en el rango de memoria desde R1 hasta R1+C1 el valor


mximo del rango y entrega ese valor mximo a D.
Cuando el bit 14 de C+1 ha sido configurado como 1, MAX(182) escribe la
direccin de memoria del PLC del canal que contiene el valor mximo en
IR00. (Si dos o ms canales del rango contienen el valor mximo, la direccin
del primer canal que contiene el valor mximo se escribe en IR00).
Cuando el bit 15 de C+1 ha sido configurado como 1, MAX(182) trata los
datos del rango como datos binarios con signo.

691
Instrucciones de proceso de datos de tabla Seccin 3-17

Direccin de
memoria del PLC
C W
Canales C

R1+(W1) Valor
mx.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de C no est dentro del rango
error especificado de 0001 hasta FFFF.
ON si el indicador de habilitacin de puerto de
comunicaciones para el nmero de puerto de
comunicaciones especificado como el N de puerto de
comunicaciones para Ejecucin en segundo plano est
en OFF cuando se especifica procesamiento en
segundo plano.
OFF en el resto de los casos.
Indicador de = ON si el valor mximo es 0000.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 est en ON en el canal que contiene el
negativo valor mximo.
OFF en el resto de los casos.

Precauciones Cuando el bit 15 de C+1 ha sido configurado como 1, los datos del rango se
tratan como datos binarios con signo y los valores hexadecimales desde
8000 hasta FFFF se consideran negativos. As, los resultados de la bsqueda
diferirn dependiendo de la configuracin del tipo de datos.

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MAX(182)


busca en el rango de 10 canales empezando por D00200 el valor mximo. El
valor mximo se escribe en D00300 y la direccin de memoria del PLC del
canal que contiene el valor mximo se escribe en IR00.

692
Instrucciones de proceso de datos de tabla Seccin 3-17

R1
C:D00100 0 0 0 A 10 canales

Nmero de canales

C+1: D00101 1

Siempre 0.
1: Entrega la direccin a IR00.

1: Trata los datos como


binarios con signo.
Decimal
equivalente
R1:
Direccin de
memoria del PLC
Valor mx.
100CA

1
3

D: D00300

000100CA

3-17-11 FIND MINIMUM: MIN(183)


Empleo Busca el valor mnimo del rango.
En las CPUs CS1D para sistemas de CPU individual y en las CPUs CS1-H,
CJ1-H y CJ1M, esta instruccin puede ejecutarse en segundo plano.
Consulte informacin ms detallada sobre la ejecucin en segundo plano en
el Manual de programacin de las series CS y CJ.

Smbolo de diagrama de
rels MIN(183)

C C: Primer canal de control

R1 R1: Primer canal en


el rango
D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MIN(183)
Se ejecuta una vez en el diferencial ascendente @MIN(183)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

693
Instrucciones de proceso de datos de tabla Seccin 3-17

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C y C+1: Canales de control


C especifica el nmero de canales del rango, el bit 15 de C+1 indica si los
datos se tratarn como binarios con signo o binarios sin signo, y el bit 14 de
C+1 indica si se entrega o no la direccin de memoria del PLC del canal que
contiene el valor mnimo a IR00.
Nota C y C+1 deben estar en el mismo rea de datos.

15 0
C

Nmero de canales del rango


15 14 13 0
C+1 00 0000 0000 0000

0
Seleccin de salida
0: No entrega la direccin a IR00.
1: Entrega la direccin a IR00.

Tipo de datos
0: Datos binarios sin signo
1: Datos binarios con signo

La siguiente tabla muestra los posibles valores de C.


C+1 Tipo de datos Salida de registro de ndice
0000 Binario sin signo No
4000 Binario sin signo S
8000 Binario con signo No
C000 Binario con signo S

R1: Primer canal en el rango


R1 especifica el primer canal del rango de bsqueda. Se busca en los
canales de R1 hasta R1+(C1) el valor mnimo. (C es el nmero de canales
especificado en C).
15 0

R1 Rango de bsqueda

a ---
R1+(C1)

Nota R1 y R1+C1 deben estar en el mismo rea de datos.

Especificaciones del
operando rea C R1 D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 6143
CIO 6142
rea de Trabajo W000 hasta W000 hasta W511
W510

694
Instrucciones de proceso de datos de tabla Seccin 3-17

rea C R1 D
rea de bit en Espera H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A958 A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T4095
T4094
rea Contador C0000 hasta C0000 hasta C4095
C4094
rea DM D00000 hasta D00000 hasta D32767
D32766
rea EM sin banco E00000 hasta E00000 hasta E32767
E32766
rea EM con Banco En_00000 hasta En_00000 hasta En_32767
En_32766 (n = 0 a C)
(n = 0 a C)
Direcciones DM/EM @ D0000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores ---
especificados
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin MIN(183) busca en el rango de memoria desde R1 hasta R1+C1 el valor


mnimo del rango y entrega ese valor mnimo a D.
Cuando el bit 14 de C+1 ha sido configurado como 1, MIN(183) escribe la
direccin de memoria del PLC del canal que contiene el valor mnimo en
IR00. (Si dos o ms canales del rango contienen el valor mnimo, la direccin
del primer canal que contiene el valor mnimo se escribe en IR00).
Cuando el bit 15 de C+1 ha sido configurado como 1, MIN(183) trata los
datos del rango como datos binarios con signo.
Direccin de
memoria del PLC
R1
C W

Canales C

Valor mn.
R1+(W1)

695
Instrucciones de proceso de datos de tabla Seccin 3-17

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de C no est dentro del rango
error especificado de 0001 hasta FFFF.
ON si el indicador de habilitacin de puerto de
comunicaciones para el nmero de puerto de
comunicaciones especificado como el N de puerto de
comunicaciones para Ejecucin en segundo plano est
en OFF cuando se especifica procesamiento en
segundo plano.
OFF en el resto de los casos.
Indicador de = ON si el valor mnimo es 0000.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 est en ON en el canal que contiene el
negativo valor mnimo.
OFF en el resto de los casos.

Precauciones Cuando el bit 15 de C+1 ha sido configurado como 1, los datos del rango se
tratan como datos binarios con signo y los valores hexadecimales desde
8000 hasta FFFF se consideran negativos. As, los resultados de la bsqueda
diferirn dependiendo de la configuracin del tipo de datos.

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MIN(183) busca


en el rango de 10 canales empezando por D00200 el valor mnimo. El valor
mnimo se escribe en D00300 y la direccin de memoria del PLC del canal
que contiene el valor mnimo se escribe en IR00.

696
Instrucciones de proceso de datos de tabla Seccin 3-17

R1
C: D00100 0 0 0 A 10 canales

Nmero de canales

C+1: D00101 1

Siempre 0.
1: Entrega la direccin a IR00.

1: Trata los datos como binarios


con signo.
Decimal
equivalente
R1:

Direccin
2
de
memoria
del PLC 1
Valor mn.
100CF 3

D: D00300
000100CF

3-17-12 SUM: SUM(184)


Empleo Suma los bytes o canales del rango y enva el resultado a dos canales.

Smbolo de diagrama de
rels SUM(184)

C C: Primer canal de control

R1 R1: Primer canal en el rango

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SUM(184)
Se ejecuta una vez en el diferencial ascendente @SUM(184)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

697
Instrucciones de proceso de datos de tabla Seccin 3-17

Operandos C y C+1: Canales de control


C especifica el nmero de unidades (bytes o canales) a sumar. (El bit 13 de
C+1 determina si se suman bytes o canales).
Los bits 12 hasta 15 de C+1 indican qu tipo de datos se suman, como se
indica en el siguiente diagrama.
15 0
C

Nmero de canales/bytes
del rango
15 14 13 12 11 0
C+1 0000 0000 0000

0
Byte inicial (efectivo si el bit 13 es 1).
0: Byte de la izquierda
1: Byte de la derecha
Unidades
0: Canales
1: Bytes

Tipo de datos
0: Binario
1: BCD
Tipo de datos (efectivo si el bit 14 es 0).
0: Datos binarios sin signo
1: Datos binarios con signo

Nota C y C+1 deben estar en el mismo rea de datos.


R1: Primer canal en el rango
R1 especifica el primer canal del rango. La longitud del rango depende del
nmero de unidades as como del byte inicial, su se suman bytes.
15 0
R1 Rango de clculo

a ---
R1+(C unidades 1)

Nota Todos los canales del rango de clculo deben estar en el mismo rea de
datos.
D: Primer canal de destino
El resultado del clculo se entrega a D+1 y D. Los cuatro dgitos de la
izquierda se almacenan en D+1 y los cuatro dgitos de la derecha se
almacenan en D.

Especificaciones del
operando rea C R1 D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6142 CIO 6143 CIO 6142
rea de Trabajo W000 hasta W510 W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H510 H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A000 hasta A959 A448 hasta A958
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4094 T4095 T4094

698
Instrucciones de proceso de datos de tabla Seccin 3-17

rea C R1 D
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4094 C4095 C4094
rea DM D00000 hasta D00000 hasta D00000 hasta
D32766 D32767 D32766
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32766 E32767 E32766
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32766 En_32767 En_32766
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores ---
especificados
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SUM(184) suma C unidades de datos empezando por los datos de R1 y


entrega el resultado a D+1 y D. Las configuraciones de C+1 determinan si las
unidades son canales o bytes, si los datos son binarios (con signo o sin
signo) o BCD, y si se empieza por el byte de la izquierda o la derecha de R1
si se suman bytes.
Cuando el bit 14 de C+1 ha sido configurado como 0, SUM(184) trata los
datos como binarios. En este caso, el bit 15 determina si los datos son con
signo (bit 15 = 1) o sin signo (bit 15 = 0).
Cuando el bit 13 de C+1 ha sido configurado como 1, SUM(184) suma bytes
de datos. En este caso el bit 12 determina si el clculo comienza por el byte de
la derecha de R1 (bit 12 = 1) o por el byte de la izquierda de R1 (bit 12 = 0).
S

Longitud de tabla
especificada en C
La longitud de la tabla especificada en
+) C depende de las unidades (canales o
bytes) configuradas en C+1.
D+1 D

699
Instrucciones de proceso de datos de tabla Seccin 3-17

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de C no est dentro del rango
error especificado de 0001 hasta FFFF.
ON si se han especificado datos BCD, pero el rango
contiene datos binarios.
ON si el indicador de habilitacin de puerto de
comunicaciones para el nmero de puerto de
comunicaciones especificado como el N de puerto de
comunicaciones para Ejecucin en segundo plano est
en OFF cuando se especifica procesamiento en
segundo plano.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON si el bit 15 del resultado est en ON.
negativo OFF en el resto de los casos.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, SUM(184) suma


10 bytes de datos binarios sin signo empezando por el byte de la derecha de
D00100 y escribe el resultado en D00201 y D00200.

Nmero de canales/bytes
R1
C+1: D00301

Siempre 0.
Byte inicial
1: Byte de la derecha

Unidades
1: Bytes
Tipo de datos
0: Binario
Tipo de datos
0: Datos binarios sin signo

C: D00300 10 bytes

Longitud de la tabla

R1: 2 A
C 3 2 A
9 F 2 0
2 7 2 0
2 A 5 5 Se suman los bytes
sombreados.
D C

D: D00200 0 3 7 8
D+1: D00201 0 0 0 0

3-17-13 FRAME CHECKSUM: FCS(180)


Empleo Calcula el valor FCS del rango especificado y entrega el resultado en ASCII.

700
Instrucciones de proceso de datos de tabla Seccin 3-17

Smbolo de diagrama de
rels FCS(180)

C C: Primer canal de control

R1 R1: Primer canal en el rango

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FCS(180)
Se ejecuta una vez en el diferencial ascendente @FCS(180)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C y C+1: Canales de control


C especifica el nmero de unidades (bytes o canales) a utilizar en el clculo
FCS. (El bit 13 de C+1 determina si se utilizan bytes o canales).
Cuando el bit 13 de C+1 ha sido configurado como 1, FCS(180) calcula el
valor FCS para bytes de datos. En este caso el bit 12 determina si el clculo
comienza por el byte de la derecha de R1 (bit 12 = 1) o por el byte de la
izquierda de R1 (bit 12 = 0).
15 0
C

Nmero de canales/bytes del rango


15 14 13 12 11 0
C+1 00 0000 0000 0000

0
Byte inicial (efectivo slo si el bit 13 es 1).
0: Byte de la izquierda
1: Byte de la derecha
Unidades del clculo
0: Canales
1: Bytes
0

Nota C y C+1 deben estar en el mismo rea de datos.


R1: Primer canal en el rango
R1 especifica el primer canal del rango. La longitud del rango depende del
nmero de unidades as como del byte inicial, su se utilizan bytes en el clculo.
15 0
R1 Rango de clculo

a a
R1+(C unidades 1)

Nota Todos los canales del rango de clculo deben estar en el mismo rea de
datos.

701
Instrucciones de proceso de datos de tabla Seccin 3-17

D: Primer canal de destino


El resultado del clculo se entrega a D si se han seleccionado bytes.
El resultado del clculo se entrega a D+1 y D si se han seleccionado canales.
En este caso los cuatro dgitos de la izquierda se almacenan en D+1 y los
cuatro dgitos de la derecha se almacenan en D.

Especificaciones del
operando rea C R1 D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 6143
CIO 6142
rea de Trabajo W000 hasta W000 hasta W511
W510
rea de bit en Espera H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A958 A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T4095
T4094
rea Contador C0000 hasta C0000 hasta C4095
C4094
rea DM D00000 hasta D00000 hasta D32767
D32766
rea EM sin banco E00000 hasta E00000 hasta E32767
E32766
rea EM con Banco En_00000 hasta En_0000 hasta En_32767
En_32766 (n = 0 a C)
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores ---
especificados
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin FCS(180) calcula el valor FCS para C unidades de datos empezando por los
datos de R1, convierte el valor a cdigo ASCII, y entrega el resultado a D (en
el caso de bytes) o a D+1 y D (en el caso de canales). Las configuraciones de
C+1 determinan si las unidades son canales o bytes, si los datos son binarios
(con signo o sin signo) o BCD, y si se empieza por el byte de la derecha o de
la izquierda de R1 si se utilizan bytes.
Cuando el bit 13 de C+1 ha sido configurado como 1, FCS(180) opera en
bytes de datos. En este caso el bit 12 determina si el clculo comienza por el
byte de la derecha de R1 (bit 12 = 1) o por el byte de la izquierda de R1 (bit
12 = 0).

702
Instrucciones de proceso de datos de tabla Seccin 3-17

R1
C (longitud de la tabla)

Conversin ASCII
Clculo
Valor FCS

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de C no est dentro del rango
error especificado de 0001 hasta FFFF.
ON si el indicador de habilitacin de puerto de
comunicaciones para el nmero de puerto de
comunicaciones especificado como el N de puerto de
comunicaciones para Ejecucin en segundo plano est
en OFF cuando se especifica procesamiento en segundo
plano.
OFF en el resto de los casos.

703
Instrucciones de proceso de datos de tabla Seccin 3-17

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, FCS(180) calcula el


valor FCS de los 10 bytes de datos empezando por el byte de la derecha de
D00100 y escribe el resultado en D00200.

R1
C+1: D00301

Siempre 0.
Byte inicial (efectivo slo si el bit 13 es 1).
1: Byte de la derecha

Unidades
1: Bytes
Siempre 0.

C: D00300 10 bytes

Longitud de la tabla

R1: 0 1
0 2 0 3
0 4 0 5
0 6 0 7
Se calcula el valor FCS de
0 8 0 0
los bytes sombreados y se
0 0 convierte a ASCII.

D: D00200 3 0 3 8

3-17-14 STACK SIZE READ: SNUM(638)


Empleo Cuenta la cantidad de datos apilados (nmero de canales) de la pila
especificada.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de SNUM(638)


rels
TB TB: Primera direccin de la pila
D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SNUM(638)
Se ejecuta una vez en el diferencial ascendente @SNUM(638)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

704
Instrucciones de proceso de datos de tabla Seccin 3-17

Operandos TB hasta TB+3: Canales de control de pila


Los primeros cuatro canales de la pila contienen la direccin de memoria del
PLC del ltimo canal de la pila y el puntero de la pila (la direccin de memoria
del PLC del siguiente canal disponible en la pila).
15 0
TB

Direccin de memoria del PLC del ltimo


canal de la pila (4 dgitos de la derecha)

15 0
TB+1

Direccin de memoria del PLC del ltimo


canal de la pila (4 dgitos de la izquierda)

15 0
TB+2

Puntero de la pila (4 dgitos de la derecha)


(El valor inicial es los 4 dgitos de la derecha de
la direccin de memoria del PLC para TB+4).
15 0
TB+3

Puntero de la pila (4 dgitos de la izquierda)


(El valor inicial es los 4 dgitos de la izquierda de
la direccin de memoria del PLC para TB+4).

TB+4 hasta TB+(N1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar datos.
15 0
TB+4 Regin de almacenamiento de datos

TB+(N1)

Especificaciones del
operando rea TB D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---

705
Instrucciones de proceso de datos de tabla Seccin 3-17

rea TB D
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SNUM(638) cuenta el nmero de canales de datos de la pila especificada


desde el principio de la regin de datos de TB+4 hasta la direccin anterior a
la indicada por el puntero de la pila (TB+3 y TB+2). SNUM(638) no modifica
los datos de la pila ni el puntero de la pila.
Pila Direccin de
memoria del PLC
TB
n
TB+1
TB+2 m
TB+3
TB+4 A
Cuenta el nmero de canales (N)
desde la direccin del principio de
Puntero la pila (TB+4) hasta la posicin
del puntero -1.

D N
m
ltimo canal
de la pila
n

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el nmero de canales de datos de la pila (el valor
error entregado a D) es 0.
OFF en el resto de los casos.

Precauciones La pila debe definirse con anterioridad con SSET(630).

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, SNUM(638) cuenta


el nmero de canales desde el principio de la regin de datos de D00004
hasta la posicin del puntero de la pila - 1 (D00006) y entrega el resultado a
D00300. (En este caso el puntero de la pila indica D00007).
000000
SNUM
D00000
D00300 Direccin de
memoria del PLC
D00000 Direccin de memoria del
PLC del ltimo canal de la pila
D00001
D00002 Puntero de pila
D00003
ltimo canal Puntero D00004
de la pila de pila
D00005 D:D00300 0003Hex
D00006
Nmero de canales
de datos. (3 en este
D00007 ejemplo)
D00008
D00009

706
Instrucciones de proceso de datos de tabla Seccin 3-17

3-17-15 STACK DATA READ: SREAD(639)


Empleo Lee los datos del elemento de datos especificado de la pila. El valor de
desplazamiento indica la posicin del elemento de datos deseado (cuntos
elementos de datos situados antes de la posicin del puntero actual).
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de
rels SREAD(639)
TB TB: Primera direccin de la pila
C C: Valor de desplazamiento
D: Canal de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SREAD(639)
Se ejecuta una vez en el diferencial ascendente @SREAD(639)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos TB hasta TB+3: Canales de control de pila


Los primeros cuatro canales de la pila contienen la direccin de memoria del
PLC del ltimo canal de la pila y el puntero de la pila (la direccin de memoria
del PLC del siguiente canal disponible en la pila).
15 0
TB

Direccin de memoria del PLC del ltimo


canal de la pila (4 dgitos de la derecha)

15 0
TB+1

Direccin de memoria del PLC del ltimo


canal de la pila (4 dgitos de la izquierda)

15 0
TB+2

Puntero de la pila (4 dgitos de la derecha)


(El valor inicial es los 4 dgitos de la derecha de
la direccin de memoria del PLC para TB+4).
15 0
TB+3

Puntero de la pila (4 dgitos de la izquierda)


(El valor inicial es los 4 dgitos de la izquierda de
la direccin de memoria del PLC para TB+4).

707
Instrucciones de proceso de datos de tabla Seccin 3-17

TB+4 hasta TB+(N1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar datos.
15 0
TB+4 Regin de almacenamiento de datos

TB+(N1)

Especificaciones del
operando rea TB C D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0001 hasta ---
#FFFB
(Hexadecimal)
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SREAD(639) lee los datos desde la direccin especificada por el puntero de
la pila (TB+3 y TB+2) menos el valor de desplazamiento de C. SREAD(639)
no modifica los datos de la pila ni el puntero de la pila.

708
Instrucciones de proceso de datos de tabla Seccin 3-17

Pila Direccin de
memoria del PLC
TB n
TB+1
TB+2 m
TB+3
TB+4

Puntero A Los datos (A)


B
no cambian.
C
m
Valor de ltimo
desplazamiento canal de la
n
pila
C
Lee los datos (A) sin cambiar
el puntero de la pila.
D A
Lee los datos (A) del canal especificado y
entrega esos datos a D.
La direccin del canal deseado se calcula
restando el valor de desplazamiento de la
direccin del puntero de la pila.

SREAD(639) puede utilizarse para leer los datos de un elemento que se


encuentre sobre una cinta transportadora en ese momento. La posicin del
elemento deseado es simplemente el nmero de elementos por detrs (el
valor de desplazamiento) del elemento ms reciente aadido a la cinta
transportadora.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si la ubicacin de lectura especificada no est
error dentro del rea de la pila.
ON si el valor de desplazamiento especificado en C es 0
o mayor que el tamao de regin de datos mximo
(FFFB hexadecimal).
OFF en el resto de los casos.
Indicador de = ON si los datos entregados a D son 0000.
igual OFF en el resto de los casos.

Precauciones La pila debe definirse con anterioridad con SSET(630).


La direccin del puntero de la pila debe ser mayor que la direccin de
memoria del PLC del principio de la regin de datos (TB+4). Se producir un
error si el puntero de la pila es menor que la direccin de memoria del PLC de
TB+4, es decir, si se produce un error de subdesbordamiento de la pila.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, SREAD(639) lee los
datos del canal especificado de la pila comenzando por D00000 y entrega los
datos a D00100. En este caso, el puntero de la pila indica D00007 y el valor
de desplazamiento es 3, as que se leen los datos de D00004.

709
Instrucciones de proceso de datos de tabla Seccin 3-17

000000
SREAD
D00000
&3 Direccin de
D00100
memoria del PLC
D00000 Direccin de memoria del
PLC del ltimo canal de la pila
D00001
D00002
Puntero de pila
D00003
Pun- D00004 A
tero D00005
ltimo canal de pila 3
D00006 D00100 A
de la pila D00007
D00008
D00009

D00000 Direccin de memoria del PLC


D00001 del ltimo canal de la pila
D00002 Puntero de pila
D00003
Puntero D00004 A
de pila D00005
ltimo
canal de D00006
la pila D00007 La posicin del puntero de la pila
se mantiene sin cambios una vez
D00008 que se leen los datos.
D00009

3-17-16 STACK DATA OVERWRITE: SWRIT(640)


Empleo Escribe los datos origen en el elemento de datos especificado de la pila
(sobrescribiendo los datos existentes). El valor de desplazamiento indica la
posicin del elemento de datos deseado (cuntos elementos de datos
situados antes de la posicin del puntero actual).
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de
rels SWRIT(640)
TB TB: Primera direccin de la pila
C C: Valor de desplazamiento
S: Canal fuente
S

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SWRIT(640)
Se ejecuta una vez en el diferencial ascendente @SWRIT(640)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

710
Instrucciones de proceso de datos de tabla Seccin 3-17

Operandos TB hasta TB+3: Canales de control de pila


Los primeros cuatro canales de la pila contienen la direccin de memoria del
PLC del ltimo canal de la pila y el puntero de la pila (la direccin de memoria
del PLC del siguiente canal disponible en la pila).
15 0
TB

Direccin de memoria del PLC del ltimo


canal de la pila (4 dgitos de la derecha)

15 0
TB+1

Direccin de memoria del PLC del ltimo


canal de la pila (4 dgitos de la izquierda)

15 0
TB+2

Puntero de la pila (4 dgitos de la derecha)


(El valor inicial es los 4 dgitos de la derecha de
la direccin de memoria del PLC para TB+4).
15 0
TB+3

Puntero de la pila (4 dgitos de la izquierda)


(El valor inicial es los 4 dgitos de la izquierda de
la direccin de memoria del PLC para TB+4).

TB+4 hasta TB+(N1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar datos.
15 0
TB+4 Regin de almacenamiento de datos

TB+(N1)

Especificaciones del
operando rea TB C S
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)

711
Instrucciones de proceso de datos de tabla Seccin 3-17

rea TB C S
Constantes --- #0001 hasta #0000 hasta
#FFFB #FFFF
(Hexadecimal) (Hexadecimal)
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SWRIT(640) sobrescribe los datos del canal deseado con los datos
especificados en S. La ubicacin del canal deseado se calcula restando el
valor de desplazamiento de C del puntero de la pila (TB+3 y TB+2).
SWRIT(640) no cambia el puntero de la pila.
Pila Direccin de Pila
memoria del PLC
TB n TB n
TB+1 TB+1
TB+2 m TB+2 m
TB+3 TB+3
TB+4 TB+4

B A
Puntero C C
D D
m Puntero m
Valor de ltimo
desplaza- canal de n ltimo canal n
miento la pila de la pila
C
Escribe los datos (A) sin
cambiar el puntero de la pila.
S A
Sobrescribe los datos del canal deseado con los datos de S.
La direccin del canal deseado se calcula restando el valor
de desplazamiento de la direccin del puntero de la pila.

SWRIT(640) puede utilizarse para modificar los datos de un elemento que se


encuentre sobre una cinta transportadora en ese momento. La posicin del
elemento deseado es simplemente el nmero de elementos por detrs (el
valor de desplazamiento) del elemento ms reciente aadido a la cinta
transportadora.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si la ubicacin de escritura especificada no est
error dentro del rea de la pila.
ON si el valor de desplazamiento especificado en C es
0 o mayor que el tamao de regin de datos mximo
(FFFB hexadecimal).
OFF en el resto de los casos.

Precauciones La pila debe definirse con anterioridad con SSET(630).


La direccin del puntero de la pila debe ser mayor que la direccin de
memoria del PLC del principio de la regin de datos (TB+4). Se producir un
error si el puntero de la pila es menor que la direccin de memoria del PLC de
TB+4, es decir, si se produce un error de subdesbordamiento de la pila.

712
Instrucciones de proceso de datos de tabla Seccin 3-17

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, SWRIT(640)


escribe los datos de D00100 en el canal especificado de la pila comenzando
por D00000. En este caso, el puntero de la pila indica D00007 y el valor de
desplazamiento es 3, as que se sobrescriben los datos de D00004.
000000
SWRIT
D00000
&3
Direccin de
D00100 memoria del PLC
D00000 Direccin de memoria del PLC
D00001 del ltimo canal de la pila
(Sobrescribir)
D00002
Puntero de pila
D00003 D00100 A
Pun- D00004 B
tero D00005
de pila 3
ltimo D00006
canal de D00007
la pila D00008
D00009

D00000 Direccin de memoria del PLC


del ltimo canal de la pila
D00001
D00002 Puntero de pila
D00003
D00004 A
Puntero
de pila D00005
ltimo
canal de D00006
la pila D00007 La posicin del puntero de la pila se mantiene
sin cambios una vez que se escriben los datos.
D00008
D00009

3-17-17 STACK DATA INSERT: SINS(641)


Empleo Inserta los datos origen en la posicin especificada de la pila y desplaza el
resto de los datos de la pila situada debajo. El valor de desplazamiento indica
la posicin del elemento de datos deseado (cuntos elementos de datos
situados antes de la posicin del puntero actual).
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
Smbolo de diagrama de
rels SINS(641)
TB TB: Primera direccin de la pila
C C: Valor de desplazamiento
S: Canal fuente
S

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SINS(641)
Se ejecuta una vez en el diferencial ascendente @SINS(641)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

713
Instrucciones de proceso de datos de tabla Seccin 3-17

Operandos TB hasta TB+3: Canales de control de pila


Los primeros cuatro canales de la pila contienen la direccin de memoria del
PLC del ltimo canal de la pila y el puntero de la pila (la direccin de memoria
del PLC del siguiente canal disponible en la pila).
15 0
TB

Direccin de memoria del PLC del ltimo


canal de la pila (4 dgitos de la derecha)

15 0
TB+1

Direccin de memoria del PLC del ltimo


canal de la pila (4 dgitos de la izquierda)

15 0
TB+2

Puntero de la pila (4 dgitos de la derecha)


(El valor inicial es los 4 dgitos de la derecha de
la direccin de memoria del PLC para TB+4).
15 0
TB+3

Puntero de la pila (4 dgitos de la izquierda)


(El valor inicial es los 4 dgitos de la izquierda de
la direccin de memoria del PLC para TB+4).

TB+4 hasta TB+(N1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar datos.
15 0
TB+4 Regin de almacenamiento de datos

TB+(N1)

Especificaciones del
operando rea TB C S
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)

714
Instrucciones de proceso de datos de tabla Seccin 3-17

rea TB C S
Constantes --- #0001 hasta #0000 hasta
#FFFB #FFFF
(Hexadecimal) (Hexadecimal)
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SINS(641) inserta los datos de origen en la direccin deseada y desplaza los
datos existentes un canal hacia abajo. Al mismo tiempo, SINS(641) aumenta
el puntero de la pila (TB+3 y TB+2) en 1. La ubicacin de la direccin deseada
se calcula restando el valor de desplazamiento de C del puntero de la pila.
Pila Direccin de Pila Direccin de
memoria del PLC memoria del PLC
TB n TB n
TB+1 TB+1
TB+2 m TB+2 m+1
TB+3 TB+3
TB+4 TB+4
Inserta los datos de origen El puntero de la pila
Puntero (A) y aumenta el puntero aumenta en +1.
de la pila.
A
B A
Valor de C La direccin del canal deseado se calcula B
restando el valor de desplazamiento de la
despla- D direccin del puntero de la pila. C
zamiento Puntero
m D m
ltimo m+1
canal de ltimo
la pila n
canal de
la pila
C

SINS(641) puede utilizarse para insertar datos para un elemento que se


encuentre entre otros elementos de una cinta transportadora. La posicin del
punto de insercin es simplemente el nmero de elementos por detrs (el
valor de desplazamiento) del elemento ms reciente aadido a la cinta
transportadora.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si la direccin indicada por el puntero de la pila
error (TB+3 y TB+2) es mayor que la direccin de memoria
del PLC del ltimo canal de la regin de datos de la pila.
(Esto sera un error de desbordamiento de la pila).
ON si el valor de desplazamiento especificado es mayor
que el tamao de regin de datos mximo - 1 (FFFA
hexadecimal).
OFF en el resto de los casos.

Precauciones La pila debe definirse con anterioridad con SSET(630).


SINS(641) inserta un canal de datos en la pila, as que debe existir al menos
un canal disponible al final de la pila. Si la pila est llena se producir un error
y los datos de origen no se insertarn.
Si la direccin indicada por el puntero de la pila (TB+3 y TB+2) ya es mayor
que la direccin del ltimo canal de la pila (TB+1 y TB) cuando se ejecuta
SINS(641), se producir un error de desbordamiento de la pila y los datos de
origen no se insertarn.

715
Instrucciones de proceso de datos de tabla Seccin 3-17

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, SINS(641) inserta los
datos de D00100 en la direccin especificada de la pila comenzando por
D00000. En este caso, el puntero de la pila indica D00007 y el valor de despla-
zamiento es 3, as que se insertan los datos de origen en D00004. Los datos
existentes se desplazan hacia abajo un canal y los datos de D00007 se sobres-
criben. Al mismo tiempo el puntero de la pila aumenta de D00007 a D00008.
000000
SINS
D00000
#0003
D00100

Direccin de
memoria del PLC
D00000 Direccin de memoria del
PLC del ltimo canal de la pila
D00001
D00002 (Insertar)
Puntero de pila
D00003
D00100 A
Pun- D00004 B
tero D00005 C
ltimo de 3
pila D00006 D
canal
de la D00007
pila D00008
D00009

+1

D00000 Direccin de memoria del PLC


del ltimo canal de la pila
D00001
D00002 Puntero de pila
D00003
Puntero D00004 A
de pila D00005 B
ltimo
canal de D00006 C
la pila D00007 D El puntero de la pila aumenta en
+1 +1 tras insertar los datos.
D00008
D00009

3-17-18 STACK DATA DELETE: SDEL(642)


Empleo Elimina el elemento de datos de la ubicacin especificada de la pila, entrega
los datos al canal de destino especificado y desplaza los datos restantes de
la pila hacia arriba. El valor de desplazamiento indica la posicin del
elemento de datos deseado (cuntos elementos de datos situados antes de
la posicin del puntero actual).
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de
SDEL(642)
rels
TB TB: Primera direccin de la pila
C C: Valor de desplazamiento
D: Canal de destino
D

716
Instrucciones de proceso de datos de tabla Seccin 3-17

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SDEL(642)
Se ejecuta una vez en el diferencial ascendente @SDEL(642)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos TB hasta TB+3: Canales de control de pila


Los primeros cuatro canales de la pila contienen la direccin de memoria del
PLC del ltimo canal de la pila y el puntero de la pila (la direccin de memoria
del PLC del siguiente canal disponible en la pila).
15 0
TB

Direccin de memoria del PLC del ltimo


canal de la pila (4 dgitos de la derecha)

15 0
TB+1

Direccin de memoria del PLC del ltimo


canal de la pila (4 dgitos de la izquierda)

15 0
TB+2

Puntero de la pila (4 dgitos de la derecha)


(El valor inicial es los 4 dgitos de la derecha de la
direccin de memoria del PLC para TB+4).
15 0
TB+3

Puntero de la pila (4 dgitos de la izquierda)


(El valor inicial es los 4 dgitos de la izquierda de
la direccin de memoria del PLC para TB+4).

TB+4 hasta TB+(N1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar datos.
15 0
TB+4 Regin de almacenamiento de datos

TB+(N1)

Especificaciones del
operando rea TB C D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767

717
Instrucciones de proceso de datos de tabla Seccin 3-17

rea TB C D
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0001 hasta ---
#FFFB
(Hexadecimal)
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SDEL(642) elimina los datos de la ubicacin especificada de la pila, entrega


los datos al canal de destino especificado y desplaza los datos restantes de
la pila hacia arriba. Al mismo tiempo, SDEL(642) disminuye el puntero de la
pila (TB+3 y TB+2) en 1. La ubicacin de la direccin deseada se calcula
restando el valor de desplazamiento de C del puntero de la pila.
Pila Direccin de Pila Direccin de
memoria del PLC memoria del PLC
TB n TB n
TB+1 TB+1
TB+2 m TB+2 m-1
El puntero de la pila
TB+3 TB+3 disminuye en 1.
TB+4 TB+4

Puntero
A B
B C
C
Puntero
m m
Valor de ltimo
desplaza- canal de ltimo
miento la pila n canal de n
la pila
C Elimina el canal
especificado y disminuye
el puntero de la pila.
D A
La direccin del canal deseado
se calcula restando el valor de
desplazamiento de la direccin
del puntero de la pila.

SDEL(642) puede utilizarse para eliminar datos para un elemento que se


rechaza de los elementos de una cinta transportadora. La posicin del punto
de rechazo es simplemente el nmero de elementos por detrs (el valor de
desplazamiento) del elemento ms reciente aadido a la cinta
transportadora.

718
Instrucciones de proceso de datos de tabla Seccin 3-17

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los contenidos del puntero de la pila (TB+3 y TB+2)
error son menores o iguales que la direccin de memoria del
PLC del primer canal de la regin de datos de la pila
(TB+4).
(Esto sera un error de subdesbordamiento de la pila).
ON si el valor de desplazamiento especificado en C es 0
o mayor que el tamao de regin de datos mximo (FFFB
hexadecimal).
OFF en el resto de los casos.
Indicador de = ON si los datos entregados a D son 0000.
igual OFF en el resto de los casos.

Precauciones La pila debe definirse con anterioridad con SSET(630).


La direccin del puntero de la pila debe ser mayor que la direccin de
memoria del PLC del principio de la regin de datos (TB+4). Se producir un
error si el puntero de la pila es menor que la direccin de memoria del PLC de
TB+4, es decir, si se produce un error de subdesbordamiento de la pila.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, SDEL(642) elimina


el canal de la direccin especificada de la pila comenzando por D00000,
entrega los datos eliminados a D00100, desplaza los datos restantes hacia
arriba, y disminuye el puntero de la pila.
En este caso, el puntero de la pila indica D00007 y el valor de
desplazamiento es 3, as que se eliminan los datos de D00004. Los datos
restantes se desplazan hacia arriba un canal y el puntero de la pila disminuye
de D00007 a D00006.
000000
SDEL
D00000
&3 Direccin de
D00100 memoria del PLC
D00000 Direccin de memoria del PLC
D00001 del ltimo canal de la pila

D00002 Puntero de pila


D00003 (Eliminar/entregar)
Pun- D00004 A
tero D00005 B
de 3 D00100 A
ltimo pila D00006 C
canal de D00007
la pila D00008
D00009

-1
D00000 Direccin de memoria del PLC
del ltimo canal de la pila
D00001
D00002 Puntero de pila
D00003
Puntero D00004 B
de pila D00005 C
ltimo D00006 C
canal de 1 D00007 El puntero de la pila disminuye en
la pila D00008 1 tras eliminar los datos.
D00009

719
Instrucciones de control de datos Seccin 3-18

3-18 Instrucciones de control de datos


3-18-1 PID CONTROL: PID(190)
Empleo Ejecuta el control PID de acuerdo con los parmetros especificados.

Smbolo de diagrama de
rels PID(190)

S S: Canal de entrada

C C: Primer canal de parmetro

D D: Canal de salida

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PID(190)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

Parmetros Los siguientes diagramas muestran las ubicaciones de los datos de


parmetro. Encontrar ms detalles sobre los parmetros en el apartado
Configuracin de parmetros PID en esta seccin.

Valor seleccionado (SV)


Banda proporcional (P)
Constante de integral (Tik)
Constante de derivada (Tdk)
Periodo de muestreo ( )

15 8 7 4 32 1 0

C+5 0

Designacin directa/inversa
Designacin de temporizacin de
actualizacin de constante PID
Configuracin de salida de variable manipulada
Parmetro 2-PID ()

Rango de salida
Unidad de integral y derivada
Rango de entrada

Control de lmite de salida de variable manipulada

720
Instrucciones de control de datos Seccin 3-18

Especificaciones del
operando rea S C D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6105 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta
W511 W473 W511
rea de bit en Espera H000 hasta H511 H000 hasta H473 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A000 hasta A921 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4057 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4057 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32729 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32729 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32729 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes DR0 hasta DR15 --- DR0 hasta DR15
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15

Descripcin Cuando la condicin de ejecucin est en ON, PID(190) realiza un control


PID con dos grados de libertad del valor objetivo segn los parmetros
designados por C (valor seleccionado, constante PID, etc.). Toma el rango de
entrada de datos binarios especificado de los contenidos del canal de entrada
S y realiza la accin PID de acuerdo a los parmetros configurados. El
resultado se almacena como la variable manipulada en el canal de salida D.
Los parmetros se obtienen cuando la condicin de ejecucin cambia de
OFF a ON, y el indicador de error se pondr en ON si las configuraciones
estn fuera del rango permitido.
Si las configuraciones estn dentro del rango permitido, el procesamiento PID
se ejecutar utilizando los valores iniciales. En este momento no se realiza
operacin sin sacudidas. Se utilizar para variables manipuladas en
ejecuciones de procesamiento PID subsecuentes. (La operacin sin
sacudidas consiste en un procesamiento que modifica de manera gradual y
continua la variable manipulada con el fin de evitar los efectos adversos de
cambios repentinos).
Cuando la condicin de ejecucin se pone en ON, se introduce el PV para el
periodo de muestreo especificado y se realiza el procesamiento.

721
Instrucciones de control de datos Seccin 3-18

Parmetros (C a C+8)

Entrada
Control PID
de PV (S)

Variable manipulada (D)

El nmero de los bits de datos de entrada vlidos dentro de los 16 bits de la


entrada PV (S) se designa mediante la configuracin del rango de entrada de
C+6, bits 08 hasta 11. Por ejemplo, si se designan 12 bits (4 hexadecimal)
para el rango de entrada ,se habilitar el rango desde 0000 hexadecimal
hasta 0FFF hexadecimal como el PV. (Los valores mayores que 0FFF
hexadecimal se considerarn como 0FFF hexadecimal).
El rango de valores seleccionados depende tambin del rango de entrada.
Los valores medidos (PV) y los valores seleccionados(SV) son binarios sin
signo, desde 0000 hexadecimal hasta el valor mximo del rango de entrada.
El nmero de los bits de datos de salida vlidos dentro de los 16 bits de la
salida de la variable manipulada se designa mediante la configuracin del
rango de salida de C+6, bits 00 hasta 03. Por ejemplo, si se designan 12 bits
(4 hexadecimal) para el rango de salida, se entregar el rango desde 0000
hexadecimal hasta 0FFF hexadecimal como la variable manipulada.
Para operacin proporcional solamente, la salida de variable manipulada
cuando el PV es igual que el SV puede designarse como sigue:
0: Salida 0%
1: Salida 50%
La direccin de la operacin proporcional puede designarse como directa o
inversa.
Pueden designarse los lmites superior e inferior de la salida de variable
manipulada.
El periodo de muestreo puede designarse en unidades de 10 ms (0,01 hasta
99,99 s), pero la accin PID real es determinada por una combinacin del
periodo de muestreo y el tiempo de ejecucin de la instruccin PID(190) (con
cada ciclo).
La temporizacin de habilitacin de cambios realizados en las constantes
PID puede configurarse bien como 1) al comienzo de la ejecucin de la
instruccin PID, o bien como 2) al comienzo de la ejecucin de la instruccin
PID y en cada uno de los periodos de muestreo. Slo pueden modificarse la
banda proporcional (P), la constante de integral (Tik) y la constante de
derivada (Tdk) cada ciclo de muestreo (es decir, durante la ejecucin de la
instruccin PID). La temporizacin se configura en el bit 1 de C+5.
Nota La configuracin del bit 1 de C+5 solamente es compatible con las CPUs
CJ1, CS1-H, CJ1-H y CS1 con nmero de lote 001201@@@@ o posterior
(fabricadas el 1 de dicienbre de 2000 o posteriormente).
En el caso de los parmetros PID (C hasta C+38), slo puede modificarse el
valor seleccionado (SV) cuando la condicin de ejecucin est en ON.
Cuando desee modificar otros valores, asegrese de cambiar la condicin de
ejecucin de OFF a ON para activar los nuevos valores.

722
Instrucciones de control de datos Seccin 3-18

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de C estn fuera del rango.
error ON si el periodo de muestreo actual es ms del doble
del periodo de muestreo designado.
OFF en el resto de los casos.
Indicador de > ON si la variable manipulada despus de la accin PID
mayor que excede el lmite superior.
OFF en el resto de los casos.
Indicador de < ON si la variable manipulada despus de la accin PID
menor que est por debajo del lmite inferior.
OFF en el resto de los casos.
Indicador de CY ON mientras se est ejecutando control PID.
acarreo OFF en el resto de los casos.

Precauciones PID(190) se ejecuta como si la condicin de ejecucin fuera una seal STOP-
RUN. Los clculos PID se ejecutan cuando la condicin de ejecucin se
mantiene en ON para el siguiente ciclo despus de que C+9 hasta C+38 se
hayan inicializado. Por lo tanto, cuando utilice el indicador de siempre ON
(ON) como condicin de ejecucin para PID(190), disponga un proceso
separado en el que C+9 hasta C+38 se inicialicen cuando comience la
operacin.
Si los datos de C estn fuera del rango, se producir un error y el indicador de
error se pondr en ON.
Si el periodo de muestreo actual es ms del doble del periodo de muestreo
designado, se producir un error y el indicador de error se pondr en ON. No
obstante, el control PID se ejecutar.
El indicador de acarreo se pone en ON mientras se ejecuta el control PID.
El indicador de mayor que se pondr en ON si la variable manipulada
despus de la accin PID excede el lmite superior. En este momento, los
resultados se entregan en el lmite superior.
El indicador de menor que se pondr en ON si la variable manipulada
despus de la accin PID est por debajo del lmite inferior. En este
momento, los resultados se entregan en el lmite inferior.
En el caso de los parmetros PID (C hasta C+38), el nico valor que puede
modificarse mientras la condicin de entrada est en ON es el valor
seleccionado para C. Si desea modificar cualquier otro valor, asegrese de
cambiar la condicin de ejecucin de OFF a ON para habilitar el nuevo valor.

Ejemplo En el flanco ascendente de CIO 000000 (OFF a ON), el rea de trabajo de


D00209 hasta D00238 se inicializa de acuerdo a los parmetros (mostrados a
continuacin) configurados en D00200 hasta D00208. Una vez se haya
inicializado el rea de trabajo, se ejecuta control PID y la variable manipulada
se entrega a CIO 0020.
Cuando CIO 000000 se pone en ON, se ejecuta control PID en los intervalos
de periodo de muestreo de acuerdo a los parmetros configurados en
D00200 hasta D00208. La variable manipulada se entrega a CIO 0020.
Las constantes PID utilizadas en el clculo PID no se modificarn si la banda
proporcional (P), la constante de integral (Tik) o la constante de derivada se
modifican despus de que CIO 000000 se ponga en ON.

723
Instrucciones de control de datos Seccin 3-18

C: D00200 012C Valor seleccionado: 300


C+1: D00201 0064 Banda proporcional: 10,0%
C+2: D00202 04B0 Tiempo de integral: 120,0 s
C+3: D00203 0190 Tiempo de derivada: 40,0 s
Parmetros C+4: D00204 0032 Perodo de muestreo: 0,5 s
C+5: D00205 0008 Operacin inversa (bit 00: 0) /Tiempo de actualizacin de
C+6: D00206 constante PID = la condicin de entrada est en ON (bit 01: 0)/
0494
Valor seleccionado = salida de variable manipulada 50% (bit 03: 1)
PV: canal C+7: D00207 0000 / Parmetro 2-PID = 0,65 (bits 04 hasta 15: 000 hexadecimal)
0010 Control PID C+8: D00208 0000 Rango de salida de variable manipulada: 12 bits (bits 00 hasta
C+9: D00209 rea de Trabajo 03: 4 hexadecimal) constante de integral/derivada: designacin
hasta de tiempo (bits 04 hasta 07: 9 hexadecimal) Rango de entrada:
C+38: D00238
12 bits (bits 08 hasta 11: 4 hexadecimal) Control de lmite de
Salida de variable variable manipulada: No (bits 12: 0 hexadecimal)
manipulada: CIO 0020 Nota Cuando CIO 000000 est en OFF, la operacin puede ser la
misma que la operacin manual escribiendo en CIO 0020.

Rangos de valores de El nmero de bits de datos de entrada vlidos para el valor medido se
entrada y de variable designa mediante la configuracin del rango de entrada de C+6, bits 08 hasta
manipulada 11, y el nmero de bits de datos de salida vlidos para la salida de variable
manipulada se designa mediante la configuracin del rango de salida de C+6,
bits 0 hasta 3. Estos rangos se muestran en la siguiente tabla.
C+6, bits 08 hasta 11 Nmero de bits Rango
o bien vlidos
C+6, bits 00 hasta 03
0 8 0000 hasta 00FF hexadecimal
1 9 0000 hasta 01FF hexadecimal
2 10 0000 hasta 03FF hexadecimal
3 11 0000 hasta 07FF hexadecimal
4 12 0000 hasta 0FFF hexadecimal
5 13 0000 hasta 1FFF hexadecimal
6 14 0000 hasta 3FFF hexadecimal
7 15 0000 hasta 7FFF hexadecimal
8 16 0000 hasta FFFF hexadecimal

Si el rango de los datos manejados por una Unidad de entrada analgica o


una Unidad de salida analgica no puede configurarse con precisin
seleccionando el nmero de bits vlidos, puede utilizarse APR(069)
(ARITHMETIC PROCESS) para realizar la conversin a los rangos
adecuados antes y despus de PID(190).
La siguiente seccin de programa muestra un ejemplo para una Unidad de
entrada analgica DRT1-AD04 y una Unidad de salida analgica DRT1-DA02
operando como esclavas DeviceNet. Los rangos de datos para estas dos
Unidades son desde 0000 hasta 1770 hexadecimal, lo que no puede
especificarse simplemente seleccionando el nmero vlido de dgitos. Por
ello se utiliza APR(069) para convertir el rango desde 0000 hasta 1770
hexadecimal de la Unidad de entrada analgica a 0000 hasta FFFF
hexadecimal para entrada a PID(190) y posteriormente la salida de variable
manipulada desde PID(190) se convierte de vuelta al rango desde 0000
hasta 1770 hexadecimal, utilizando de nuevoAPR(069), para la salida desde
la Unidad de salida analgica.

724
Instrucciones de control de datos Seccin 3-18

Desde Unidad de entrada analgica


Condicin
de ejecucin
ARP Datos de control
C (D01000): 0000 Hexadecimal (binario con una tabla)
D01000 C+1 (D01001): 1770 Hexadecimal (Xm)
Valor de entrada analgica C+2 (D01002): 0000 Hexadecimal (Yo)
C+3 (D01003): 1770 Hexadecimal (X1)
D02000 C+4 (D01004): FFFF Hexadecimal (Y1)

PID
Datos de control
D02000 C+6 (D02506):
D02500 @8@8
Nmero de bits vlidos:
D03000 16 (0000 hasta FFFF Hexadecimal)
Nmero de bits vlidos:
16 (0000 hasta FFFF Hexadecimal)
ARP Datos de control
C (D01500): 0000 Hexadecimal (binario con una tabla)
D01500 C+1 (D01501): FFFF Hexadecimal (Xm)
D03000 C+2 (D01502): 0000 Hexadecimal (Yo)
C+3 (D01503): FFFF Hexadecimal (X1)
Valor de salida analgica
C+4 (D01504): 1770 Hexadecimal (Y1)
A Unidad de salida analgica

Especificaciones de prestaciones
Elemento Especificaciones
Mtodo de control PID --- Mtodo PID con filtrado de valor de objetivo, tipo dos grados de libertad
(directo/inverso)
Nmero de lazos de control PID --- Ilimitados (1 lazo por instruccin)
Perodo de muestreo 0,01 hasta 99,99 s
Constante PID Banda proporcional P 0,1 hasta 999,9%
Constante de integral Tik 1 hasta 8191, 9999 (sin accin de integral para periodo de muestreo
mltiple, 9999).
Constante de Tdk 0 hasta 8191 (sin accin de derivada para periodo de muestreo
derivada mltiple, 0).
Valor seleccionado SV 0 hasta 65535 (Vlido hasta el valor mximo del rango de entrada).
Valor medido PV 0 hasta 65535 (Vlido hasta el valor mximo del rango de entrada).
Variable manipulada MV 0 hasta 65535 (Vlido hasta el valor mximo del rango de salida).

Mtodo de clculo Los clculos en control PID se realizan mediante el control con filtrado del
valor objetivo con dos grados de libertad.
Diagrama de bloques para control con filtrado del valor objetivo con dos grados de libertad
Cuando se previenen los sobreimpulsos con control PID simple se ralentiza la
estabilizacin de las perturbaciones (1). Por otro lado, si se acelera
estabilizacin de las perturbaciones se producirn sobreimpulsos y la
respuesta respecto al valor objetivo se ralentiza (2).
En cambio, cuando se utiliza control PID con filtrado del valor objetivo con
dos grados de libertad no se producen sobreimpulsos y pueden acelerarse la
respuesta respecto al valor objetivo y la estabilizacin de perturbaciones (3).
Filtro de valor objetivo Elementos proporcionales + integral
Valor
seleccionado 1 + (1 - ) Ti/ + Kp +
(valor Kp + Variable manipulada
1 + Ti/ Ti/
objetivo) - -

Elementos de tipo de Kp: Constante proporcional


derivada precedentes Ti: Tiempo de integral
Td: Tiempo de derivada
Valor Kp Td/
: Perodo de muestreo
medido 1+ . Td/ : Parmetro 2-PID
(PV) : Coeficiente de derivada

incompleto

725
Instrucciones de control de datos Seccin 3-18

Control PID sencillo Control PID con realimentacin positiva

(1) (3)

Respuesta al Respuesta a
Al ralentizarse la respuesta al objetivo, la objetivo la perturbacin
respuesta a la perturbacin empeora.

(2)

Sobreimpulsos Al ralentizarse la respuesta a la perturbacin, la


respuesta al objetivo empeora.

Configuracin de parmetros PID


Datos de Elemento Contenido Rango de configuracin Cambio con
control condicin de
entrada en ON
C Valor seleccionado El valor objetivo del proceso Datos binarios (con el mismo Permitido
(SV) controlado. nmero de bits especificado
para el rango de entrada)
C+1 Banda proporcional El parmetro para accin P que 0001 hasta 270F hexadecimal Puede
expresa el rango de control (1 hasta 9999); cambiarse con
proporcional/rango de control (0,1% hasta 999m9%, en condicin de
total. unidades de 0,1%) entrada en ON
C+2 Tik Una constante que expresa la 0001 hasta 1FFF hexadecimal si el bit 1 de
Constante de intensidad de la accin de (1 hasta 8191); C+5 es 1.
integral integral. Al aumentar este valor (9999 = Operacin de integral no
la intensidad de la integral ejecutada) (Ver nota 1).
disminuye.
C+3 Tdk Una constante que expresa la 0001 hasta 1FFF hexadecimal
Constante de intensidad de la accin de (1 hasta 8191);
derivada derivada. Al aumentar este valor (0000 = Operacin de derivada
la intensidad de la derivada no ejecutada) (Ver nota 1).
disminuye.
C+4 Periodo de Configura el periodo para la 0001 hasta 270F hexadecimal No se admite
muestreo () ejecucin de la accin PID. (1 hasta 9999);
(0,01 hasta 99,99 s, en unidades
de 10 ms)
Bits 04 hasta Parmetro 2-PID () El coeficiente de filtro de 000 hexadecimal: = 0,65
15 de C+5 entrada. Normalmente use 0,65 La configuracin desde 100
(es decir, una configuracin de hasta 163 hexadecimal significa
000). La eficiencia del filtro que el valor de los dos dgitos de
disminuye al acercarse el la derecha se configura desde
coeficiente a 0. = 0,00 hasta = 0,99.
(Ver nota 2).
Bit 03 de Designacin de Designa la salida de variable 0: Salida 0%
C+5 salida de variable manipulada para cuando el PV 1: Salida 50%
manipulada: es igual que el SV.
Bit 01 de Configuracin de La temporizacin para habilitar 0: Al inicio de la ejecucin de la Permitido
C+5 habilitacin de cambios hechos a la banda instruccin PID
cambio de proporcional (P), la constante de 1: Al inicio de la ejecucin de la
constante PID integral (Tik) y la constante de instruccin PID y en cada
derivada (Tdk) para su periodo de muestreo
utilizacin en clculos PID.

726
Instrucciones de control de datos Seccin 3-18

Datos de Elemento Contenido Rango de configuracin Cambio con


control condicin de
entrada en ON
Bit 00 de Designacin directa/ Determina la direccin de la 0: Accin inversa No se admite
C+5 inversa de PID accin proporcional. 1: Accin directa
Bit 12 de Control de lmite de Determina si el control de lmite 0: Inhabilitado (sin control de
C+6 salida de variable se aplicar o no a la salida de lmite)
manipulada variable manipulada. 1: Habilitado (con control de
lmite)
Bits 08 hasta Rango de entrada El nmero de bits de datos de 0: 8 bits 5: 13 bits
11 de C+6 entrada. 1: 9 bits 6: 14 bits
2: 10 bits 7: 15 bits
3: 11 bits 8: 16 bits
4: 12 bits
Bits 04 hasta Unidad de integral y Determina la unidad para 1: Periodo de muestreo mltiple
07 de C+6 derivada expresar las constantes de 9: Tiempo (unidad: 100 ms)
integral y derivada.
Bits 00 hasta Rango de salida El nmero de bits de datos de 0: 8 bits 5: 13 bits
03 de C+6 salida. (El nmero de bits de 1: 9 bits 6: 14 bits
salida es automticamente el 2: 10 bits 7: 15 bits
mismo que el nmero de bits de 3: 11 bits 8: 16 bits
entrada). 4: 12 bits
C +7 Lmite inferior de El lmite inferior para cuando se 0000 hasta FFFF (binario)
salida de variable habilita el lmite de salida de (Ver nota 3).
manipulada variable manipulada.
C +8 Lmite superior de El lmite superior para cuando se 0000 hasta FFFF (binario)
salida de variable habilita el lmite de salida de (Ver nota 3).
manipulada variable manipulada.
Nota 1. Cuando la unidad se designa como 1, el rango es de 1 hasta 8.191 veces
el periodo. Cuando la unidad se designa como 9, el rango es de 0,1 hasta
819,1 s. Cuando se designa 9, configure los tiempos de integral y derivada
dentro de un rango de 1 hasta 8.191 veces el periodo de muestreo.
2. La configuracin de parmetro 2-PID () como 000 supone 0,65, el valor
normal.
3. Cuando el control de lmite de salida de variable manipulada est
habilitado (es decir, configurado como 1), ajuste los valores como sigue:
0000 Lmite inferior de salida de MV Lmite superior de salida de MV Valor
mx. del rango de salida

Periodo de muestreo y El periodo de muestreo puede designarse en unidades de 10 ms (0,01 hasta


tiempo de ciclo 99,99 s), pero la accin PID real es determinada por una combinacin del
periodo de muestreo y el tiempo de ejecucin de la instruccin PID (con cada
ciclo). La relacin entre el periodo de muestreo y el tiempo de ciclo es la
siguiente:
Si el periodo de muestreo es menor que el tiempo de ciclo, se ejecuta
control PID con cada ciclo y no con cada periodo de muestreo
Si el periodo de muestreo es mayor o igual que el tiempo de ciclo, el
control PID no se ejecuta con cada ciclo, pero se ejecuta PID(190)
cuando el valor acumulativo del tiempo de ciclo (el tiempo entre
instrucciones PID) es mayor o igual que el periodo de muestreo. La parte
sobrante del valor acumulativo (es decir, el valor acumulativo del tiempo
de ciclo menos el periodo de muestreo) se aade al siguiente valor
acumulativo.
Por ejemplo, suponiendo que el periodo de muestreo es de 100 ms y que
el tiempo de ciclo es consistentemente 60 ms, para el primer ciclo despus
de la ejecucin inicial no se ejecutar PID(190) porque 60 ms es menor de
100 ms. Para el segundo ciclo, 60 ms + 60 ms es mayor que 100 ms, as
que se ejecutar PID(190). El valor restante de 20 ms (es decir, 120 ms
100 ms = 20 ms) se arrastrar.
Para el tercer ciclo, el resto de 20 ms se aade a 60 ms. Ya que la suma
de 80 ms es menor de 100 ms no se ejecutar PID(190). Para el cuarto
727
Instrucciones de control de datos Seccin 3-18

ciclo, los 80 ms se aaden a los 60 ms. Ya que esta suma de 140 ms es


mayor que 100 ms, se ejecutar PID(190) y el resto de 40 ms (es decir,
120 ms 100 ms = 20 ms) se arrastrar. Este procedimiento se repite para
los ciclos subsecuentes.

1 ciclo 1 ciclo 1 ciclo 1 ciclo 1 ciclo

Procesa-
miento (80 ms + 60 ms = 140 ms)
Procesamiento inicial (60 ms) (60 ms + 60 ms = 120 ms) (20 ms + 60 ms = 80 ms)
(procesamiento No se ejecuta. Ejecutado No se ejecuta. Ejecutado
PID con valores
iniciales)
Lectura del Menor de100 ms, as Mayor de 100 ms, as Menor de100 ms, as Mayor de 100 ms, as
tiempo de que no se ejecuta PID. que se ejecuta PID y que no se ejecuta PID. que se ejecuta PID y se
medida se arrastran 20 ms. arrastran 40 ms.

Acciones de control Accin proporcional (P)


La accin proporcional es una operacin en la que se establece una banda
proporcional con respecto al valor seleccionado (SV), y dentro de esta banda
la variable manipulada (MV) se hace proporcional a la desviacin. En la
siguiente ilustracin se muestra un ejemplo de operacin inversa.
Si se utiliza la accin proporcional y el valor actual (PV) se hace ms
pequeo que la banda proporcional, la variable manipulada (MV) ser 100%
(es decir, el valor mximo). Dentro de la banda proporcional, la MV se hace
proporcional a la desviacin (la diferencia entre SV y PV) y disminuye
gradualmente hasta que SV y PV coinciden (es decir, hasta que la desviacin
sea 0), en cuyo momento MV se encontrar en el valor mnimo de 0% (o bien
50%, dependiendo de la configuracin del parmetro de designacin de
salida de variable manipulada). La MV tambin ser 0% cuando el PV sea
mayor que el SV.
La banda proporcional se expresa como un porcentaje del rango de entrada
total. Cuanto ms pequea sea la banda proporcional, ms grande ser la
constante proporcional y ms intensa la accin correctiva. Con accin
proporcional se produce generalmente un desplazamiento (desviacin
residual), pero este desplazamiento puede reducirse haciendo la banda
proporcional ms pequea. No obstante, si se hace demasiado pequea se
producir hunting.
Accin proporcional (accin inversa) Ajuste de la banda proporcional

Salida: 0%
Banda proporcional demasiado estrecha (se produce hunting)
Salida: 50%
Variable
manipulada Despl

SV

SV Banda proporcional correcta


Banda proporcional Banda proporcional demasiado ancha (mucho desplazamiento)

Accin de integral (I)


Combinando la accin de integral con la accin proporcional se reduce el
desplazamiento segn el tiempo que ha transcurrido, de tal manera que el PV
coincida con el SV. La intensidad de la accin de integral es indicada por el
tiempo de integral, que es el tiempo requerido para que la variable
manipulada de la accin de integral alcance el mismo nivel que la variable
manipulada de la accin proporcional con respecto a la desviacin de paso,

728
Instrucciones de control de datos Seccin 3-18

tal y como se muestra en la siguiente ilustracin. Cuanto ms corto sea el


tiempo de integral, ms intensa ser la correccin llevada a cabo por la
accin de integral. Si el tiempo de integral es demasiado corto, la correccin
ser demasiado intensa y se producir hunting.
Accin de integral
Respuesta de paso
Desviaci 0

Variable
manipulada 0

Accin Pi y tiempo de integral


Respuesta de paso
Desviacin

Accin Pi
Accin I
Variable Accin P
manipulada
Ti: Tiempo de integral

Accin de derivada (D)


Tanto la accin proporcional como la accin de integral hacen correcciones
con respecto a los resultados del control, as que hay inevitablemente un
retardo de la respuesta. La accin de derivada compensa esta desventaja.
En respuesta a una perturbacin repentina entrega una variable manipulada
grande y restaura rpidamente el estado original. Se ejecuta una correccin
con la variable manipulada hecha proporcionalmente a la inclinacin
(coeficiente de derivada) causada por la desviacin.
La intensidad de la accin de derivada es indicada por el tiempo de derivada,
que es el tiempo requerido para que la variable manipulada de la accin de
derivada alcance el mismo nivel que la variable manipulada de la accin
proporcional con respecto a la desviacin de paso, tal y como se muestra en
la siguiente ilustracin. Cuanto ms largo sea el tiempo de derivada, ms
intensa ser la correccin llevada a cabo por la accin de derivada.
Accin de derivada
Respuesta de paso
Desviacin 0

Variable
manipulada 0

Accin PD y tiempo de derivada


Respuesta de rampa
Desviaci 0

Accin PD
Accin P
Variable Accin D
manipulada 0
Td: Tiempo de derivada

Accin PID
La accin PID combina accin proporcional (P), accin de integral (I) y accin
de derivada (D). Facilita resultados de control superiores incluso para objetos

729
Instrucciones de control de datos Seccin 3-18

de control con tiempo muerto. Emplea accin proporcional para facilitar un


control suave sin hunting, accin de integral para corregir automticamente
cualquier desplazamiento y accin de derivada para acelerar la respuesta a
las perturbaciones.
Respuesta de paso de la salida de accin de control PID
Respuesta de paso
Desviacin 0

Accin PID
Accin I
Variable Accin P
manipulada 0 Accin D

Respuesta de rampa de la salida de accin de control PID

Respuesta de rampa
Desviacin 0

Accin PID

Accin I
Accin P
Variable 0 Accin D
manipulada

Direccin de la accin Cuando utilice control PID seleccione una de las dos siguientes direcciones
de control. En cualquiera de las direcciones. la MV aumenta al aumentar la
diferencia entre el SV y el PV.
Accin directa: La MV aumenta cuando el PV es mayor que el SV.
Accin inversa: La MV aumenta cuando el PV es menor que el SV.
Accin inversa Accin directa

Salida Salida

Baja SV Alta Baja SV Alta


temperatura temperatura temperatura temperatura

Ajuste de los parmetros A continuacin se muestra la relacin general entre los parmetros PID y el
PID estado de control.
Cuando no supone un problema si se requiere un cierto periodo de
tiempo para la estabilizacin (tiempo de reposo), pero si es importante no
causar sobreimpulsos, entonces ensanche la banda proporcional.

Control por PID medido


SV

Cuando se ensancha P

Cuando la aparicin de sobreimpulsos no es un problema pero es


deseable estabilizar el control rpidamente, estreche la banda
proporcional No obstante, si la banda proporcional se estrecha
demasiado puede producirse hunting.

730
Instrucciones de control de datos Seccin 3-18

Cuando se estrecha P
SV
Control por PID medido

Cuando se produce hunting amplio, o cuando la operacin se ve afectada


por sobreimpulsos o subimpulsos, es probable que ello sea debido a que
la accin de integral es demasiado intensa. El hunting se reducir si el
tiempo de integral aumenta o se ensancha la banda proporcional.
Control por PID medido
(cuando se produce hunting dbil)

SV

Aumente I o P

Si el periodo es corto y se produce hunting, es posible que la respuesta


del sistema de control sea rpida y la accin de derivada demasiado
intensa. En este caso, ajuste la accin de derivada ms baja.
Control por PID medido
(cuando se produce hunting en
un corto periodo de tiempo)
SV

Disminuya D.

3-18-2 PID CONTROL WITH AUTOTUNING: PIDAT(191)


Empleo Ejecuta el control PID de acuerdo con los parmetros especificados. las
constantes PID pueden ajustarse automticamente (autotuning).
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de
rels PIDAT(191)
S S: Canal de entrada
C: Primer canal de parmetro
C
D: Canal de salida
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PIDAT(191)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

731
Instrucciones de control de datos Seccin 3-18

Parmetros Los siguientes diagramas muestran las ubicaciones de los datos de


parmetro. Encontrar ms detalles sobre los parmetros en el apartado
Configuracin de parmetros PID en esta seccin.

Valor seleccionado (SV)


Banda proporcional (P)
Constante de integral (Tik)
Constante de derivada (Tdk)
Periodo de muestreo ( )

15 8 7 4 32 1 0

C+5 0

Designacin directa/inversa
Designacin de temporizacin de
actualizacin de constante PID
Configuracin de salida de variable manipulada
Parmetro 2-PID ()

Rango de salida
Unidad de integral y derivada
Rango de entrada

Control de lmite de salida de variable manipulada


15 0
C+7 Lmite inferior de salida de variable manipulada
C+8 Lmite superior de salida de variable manipulada

15 14 13 12 0
C+9 0 0 0

Ganancia de clculo AT

Bit de comando de AT

15 0
C+10 Histresis de ciclo lmite

C+11
rea de trabajo
(30 canales: El usuario no
C+40
puede utilizarla).

Especificaciones del
operando rea S C D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6105 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta W511
W511 W473
rea de bit en Espera H000 hasta H511 H000 hasta H473 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A000 hasta A921 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4057 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4057 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32729 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32729 E32767

732
Instrucciones de control de datos Seccin 3-18

rea S C D
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32729 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes DR0 hasta DR15 --- DR0 hasta DR15
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15

Descripcin Cuando la condicin de ejecucin est en ON, PIDAT(191) realiza un control


PID con dos grados de libertad segn los parmetros designados por C (valor
seleccionado, constante PID, etc.). Toma el rango de entrada de datos
binarios especificado de los contenidos del canal de entrada S y realiza la
accin PID de acuerdo a los parmetros configurados. El resultado se
almacena como la variable manipulada en el canal de salida D.
Las configuraciones de parmetros se leen cuando la condicin de ejecucin
cambia de OFF a ON, y el indicador de error se pondr en ON si las
configuraciones estn fuera del rango permitido.
Si las configuraciones estn dentro del rango permitido, el procesamiento PID
se ejecutar utilizando los valores iniciales. En este momento no se realiza
operacin sin sacudidas. Se utilizar para variables manipuladas en
ejecuciones de procesamiento PID subsecuentes. (La operacin sin
sacudidas consiste en un procesamiento que modifica de manera gradual y
continua la variable manipulada con el fin de evitar los efectos adversos de
cambios repentinos).
Cuando la condicin de ejecucin se pone en ON, se introduce el PV para el
periodo de muestreo especificado y se realiza el procesamiento.

Parmetros (C a C+8)

Entrada
Control PID
de PV (S)

Variable manipulada (D)

Autotuning
El estado del bit de comando AT (bit 15 de C+9) se comprueba cada ciclo. Si
este bit de control se pone en ON en un ciclo dado, PIDAT(191) comenzar a
ajustar automticamente las constantes PID. (Los cambios en el SV no se
reflejarn mientras se est realizando el autotuning).
Para el autotuning se utiliza el mtodo de ciclo lmite. PIDAT(191) cambia de
forma forzada la variable manipulada (variable manipulada mxima
variable manipulada mnima) y monitoriza las caractersticas del sistema
controlado. Las constantes PID se calculan basndose en las caractersticas
que han sido observadas, y las nuevas constantes P, I y D se almacenan

733
Instrucciones de control de datos Seccin 3-18

automticamente en C+1, C+2 y C+3. En es momento, el bit de comando AT


(bit 15 de C+9) se pone en OFF y el control PID vuelve a empezar con las
nuevas constantes PID de C+1, C+2 y C+3.
Si el bit de comando AT est en ON cuando comienza la ejecucin de
PIDAT(191), se realizar en primer lugar el autotuning y posteriormente
empezar el control PID con las constantes PID calculadas.
Si el bit de comando AT se pone en ON durante la ejecucin de
PIDAT(191), PIDAT(191) interrumpe el control PID que se est llevando a
cabo con las constantes PID configuradas por el usuario, realiza el
autotuning, y posteriormente vuelve a comenzar el control PID con las
constantes PID calculadas.
El siguiente organigrama muestra el procedimiento de autotuning:
El bit de comando AT (bit 15 de C+9) est en
ON al comienzo de la ejecucin de PIDAT
(191) o se pone en ON durante la ejecucin.

El control PID se interrumpe, el PV de


modifica de forma forzada y las constantes
PID vuelven a calcularse automticamente.

Las constantes calculadas P, I y D se confi-


guran en C+1, C+2 y C+3 respectivamente.
El bit de comando AT se pone en OFF.

Se inicia el control PID (o reinicia) con las


nuevas constantes PID.

Nota 1. Si se interrumpe el autotuning poniendo en OFF el bit de comando AT


durante el autotuning, el control PID se iniciar con las constantes PID que
estaban siendo utilizadas antes de que comenzara el autotuning.
2. Adems, si se produce un error de ejecucin de AT, el control PID se
iniciar con las constantes PID que estaban siendo utilizadas antes de
que comenzara el autotuning.
En ambos casos descritos en las notas 1 y 2, las constantes PID se
habilitarn si ya haban sido calculadas cuando el autotuning fue
interrumpido.
Control PID
El nmero de los bits de datos de entrada vlidos dentro de los 16 bits de la
entrada PV (S) se designa mediante la configuracin del rango de entrada de
C+6, bits 08 hasta 11. Por ejemplo, si se designan 12 bits (4 hexadecimal)
para el rango de entrada ,se habilitar el rango desde 0000 hexadecimal
hasta 0FFF hexadecimal como el PV. (Los valores mayores que 0FFF
hexadecimal se considerarn como 0FFF hexadecimal).
El rango de valores seleccionados depende tambin del rango de entrada.
Los valores medidos (PV) y los valores seleccionados(SV) son binarios sin
signo, desde 0000 hexadecimal hasta el valor mximo del rango de entrada.
El nmero de los bits de datos de salida vlidos dentro de los 16 bits de la
salida de la variable manipulada se designa mediante la configuracin del
rango de salida de C+6, bits 00 hasta 03. Por ejemplo, si se designan 12 bits
(4 hexadecimal) para el rango de salida, se entregar el rango desde 0000
hexadecimal hasta 0FFF hexadecimal como la variable manipulada.
Para operacin proporcional solamente, la salida de variable manipulada
cuando el PV es igual que el SV puede designarse como sigue:
0: Salida 0%
1: Salida 50%

734
Instrucciones de control de datos Seccin 3-18

La direccin de la operacin proporcional puede designarse como directa o


inversa.
Pueden designarse los lmites superior e inferior de la salida de variable
manipulada.
El periodo de muestreo puede designarse en unidades de 10 ms (0,01 hasta
99,99 s), pero la accin PID real es determinada por una combinacin del
periodo de muestreo y el tiempo de ejecucin de la instruccin PIDAT(191)
(con cada ciclo).
La temporizacin de habilitacin de cambios realizados en las constantes PID
puede configurarse bien como 1) al comienzo de la ejecucin de la instruccin
PIDAT(191), o bien como 2) al comienzo de la ejecucin de la instruccin PID y
en cada uno de los periodos de muestreo. Slo pueden modificarse la banda
proporcional (P), la constante de integral (Tik) y la constante de derivada (Tdk)
cada ciclo de muestreo (es decir, durante la ejecucin de la instruccin PID).
La temporizacin se configura en el bit 1 de C+5.
Cuando modifique las constantes PID manualmente, ajuste la configuracin
de habilitacin de cambio de constante PID (bit 1 de C+5) como 1 de tal
manera que los valores de C+1, C+2 y C+3 se actualicen cada periodo de
muestreo en el clculo PID. Esta configuracin permite tambin ajustar las
constantes PID manualmente despus del autotuning.
En el caso de los parmetros PID (C hasta C+38), slo pueden modificarse
los siguientes parmetros cuando la condicin de ejecucin est en ON.
Cuando cambie otros valores, asegrese de cambiar la condicin de
ejecucin de OFF a ON para habilitar las nuevas configuraciones.
Valor seleccionado (SV) de C
(Puede cambiarse slo durante el control PID. Un cambio del SV durante
el autotuning no se reflejar).
Configuracin de habilitacin de cambio de la constante PID (bit 1 de
C+5)
Las constantes P, I y D de C+1, C+2 y C+3
(Los cambios de estas constantes se reflejarn cada periodo de
muestreo slo si la configuracin de habilitacin de cambio de la
constante PID (bit 1 de C+5) est configurada como 1).
Bit de comando AT (bit 15 de C+9)
Ganancia de clculo AT (bits 0 hasta 14 de C+9) e Histresis de ciclo
lmite (C+10) (Estos valores se leen cuando se inicia el autotuning).
Nota La instruccin PIDAT(191) es la misma que la instruccin PID(190) con la
funcin de autotuning (AT) aadida, as que la operacin del control PID es
idntica. En 3-18-1 PID CONTROL: PID(190) encontrar ms detalles y
ejemplos sobre la operacin del control PID.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de C estn fuera del rango.
error ON si el periodo de muestreo actual es ms del doble
del periodo de muestreo designado.
ON si se produce un error durante el autotuning.
OFF en el resto de los casos.
Indicador de > ON si la variable manipulada despus de la accin PID
mayor que excede el lmite superior.
OFF en el resto de los casos.
Indicador de < ON si la variable manipulada despus de la accin PID
menor que est por debajo del lmite inferior.
OFF en el resto de los casos.
Indicador de CY ON mientras se est ejecutando control PID.
acarreo OFF en el resto de los casos.

735
Instrucciones de control de datos Seccin 3-18

Precauciones PIDAT(191) se ejecuta como si la condicin de ejecucin fuera una seal


STOP-RUN. Los clculos PID se ejecutan cuando la condicin de ejecucin
se mantiene en ON para el siguiente ciclo despus de que C+11 hasta C+40
se hayan inicializado. Por lo tanto, cuando utilice el indicador de siempre ON
(ON) como condicin de ejecucin para PIDAT(191) disponga un proceso
separado en el que C+11 hasta C+40 se inicialicen cuando comience la
operacin.
Si los datos de C estn fuera del rango, se producir un error y el indicador de
error se pondr en ON.
Si se produce un error durante el autotuning el indicador de error se pondr
en ON.
Si el periodo de muestreo actual es ms del doble del periodo de muestreo
designado, se producir un error y el indicador de error se pondr en ON. No
obstante, el control PID se ejecutar.
El indicador de acarreo se pone en ON mientras se ejecuta el control PID.
El indicador de mayor que se pondr en ON si la variable manipulada
despus de la accin PID excede el lmite superior. En este momento, los
resultados se entregan en el lmite superior.
El indicador de menor que se pondr en ON si la variable manipulada
despus de la accin PID est por debajo del lmite inferior. En este
momento, los resultados se entregan en el lmite inferior.
Configuracin de parmetros PID
Datos de Elemento Contenido Rango de configuracin Cambio con
control condicin de
entrada en ON
C Valor seleccionado El valor objetivo del proceso Datos binarios (con el mismo Permitido
(SV) controlado. nmero de bits especificado
para el rango de entrada)
C+1 Banda proporcional El parmetro para accin P que 0001 hasta 270F hexadecimal Puede
expresa el rango de control (1 hasta 9999); cambiarse con
proporcional/rango de control (0,1% hasta 999m9%, en condicin de
total. unidades de 0,1%) entrada en ON
C+2 Tik Una constante que expresa la 0001 hasta 1FFF hexadecimal si el bit 1 de
Constante de intensidad de la accin de inte- (1 hasta 8191); C+5 es 1.
integral gral. Al aumentar este valor la (9999 = Operacin de integral no
intensidad de la integral ejecutada) (Ver nota 1).
disminuye.
C+3 Tdk Una constante que expresa la 0001 hasta 1FFF hexadecimal
Constante de intensidad de la accin de (1 hasta 8191);
derivada derivada. Al aumentar este valor (0000 = Operacin de derivada
la intensidad de la derivada no ejecutada) (Ver nota 1).
disminuye.
C+4 Periodo de Configura el periodo para la 0001 hasta 270F hexadecimal No se admite
muestreo () ejecucin de la accin PID. (1 hasta 9999);
(0,01 hasta 99,99 s, en unidades
de 10 ms)
Bits 04 hasta Parmetro 2-PID () El coeficiente de filtro de 000 hexadecimal: = 0,65
15 de C+5 entrada. Normalmente use 0,65 La configuracin desde 100
(es decir, una configuracin de hasta 163 hexadecimal significa
000). La eficiencia del filtro que el valor de los dos dgitos de
disminuye al acercarse el la derecha se configura desde
coeficiente a 0. = 0,00 hasta = 0,99. (Ver
nota 2).
Bit 03 de Designacin de Designa la salida de variable 0: Salida 0%
C+5 salida de variable manipulada para cuando el PV 1: Salida 50%
manipulada: es igual que el SV.

736
Instrucciones de control de datos Seccin 3-18

Datos de Elemento Contenido Rango de configuracin Cambio con


control condicin de
entrada en ON
Bit 01 de Configuracin de La temporizacin para habilitar 0: Al inicio de la ejecucin de la Permitido
C+5 habilitacin de cambios hechos a la banda instruccin PID
cambio de proporcional (P), la constante de 1: Al inicio de la ejecucin de la
constante PID integral (Tik) y la constante de instruccin PID y en cada
derivada (Tdk) para su periodo de muestreo
utilizacin en clculos PID.
Bit 00 de Designacin directa/ Determina la direccin de la 0: Accin inversa No se admite
C+5 inversa de PID accin proporcional. 1: Accin directa
Bit 12 de Control de lmite de Determina si el control de lmite 0: Inhabilitado (sin control de
C+6 salida de variable se aplicar o no a la salida de lmite)
manipulada variable manipulada. 1: Habilitado (con control de
lmite)
Bits 08 hasta Rango de entrada El nmero de bits de datos de 0: 8 bits 5: 13 bits
11 de C+6 entrada. 1: 9 bits 6: 14 bits
2: 10 bits 7: 15 bits
3: 11 bits 8: 16 bits
4: 12 bits
Bits 04 hasta Unidad de integral y Determina la unidad para 1: Periodo de muestreo mltiple
07 de C+6 derivada expresar las constantes de 9: Tiempo (unidad: 100 ms)
integral y derivada.
Bits 00 hasta Rango de salida El nmero de bits de datos de 0: 8 bits 5: 13 bits
03 de C+6 salida. (El nmero de bits de 1: 9 bits 6: 14 bits
salida es automticamente el 2: 10 bits 7: 15 bits
mismo que el nmero de bits de 3: 11 bits 8: 16 bits
entrada). 4: 12 bits
C +7 Lmite inferior de El lmite inferior para cuando se 0000 hasta FFFF (binario)
salida de variable habilita el lmite de salida de (Ver nota 3).
manipulada variable manipulada.
C +8 Lmite superior de El lmite superior para cuando se 0000 hasta FFFF (binario)
salida de variable habilita el lmite de salida de (Ver nota 3).
manipulada variable manipulada.
Bit 15 de Bit de comando de Este bit de control inicia el Como un bit de control: Permitido
C+9 AT autotuning. 0 1:
Configure el bit de comando Ejecuta autotuning.
AT como 1 para llevar a cabo 1 0:
el autotuning. (El autotuning Interrumpe autotuning.
puede iniciarse mientras se (PID(191) pone en bit en OFF
est ejecutando PIDAT(191)). automticamente cuando se
Este bit se pondr en OFF completa el autotuning.
automticamente una vez
Como un indicador.
concluido el autotuning.
0: No se est ejecutando
El autotuning se interrumpir si
autotuning.
el bit de comando AT se pone en
OFF manualmente. En este 1: Se est ejecutando
caso, se habilitarn las autotuning.
constantes PID si ya estaban
calculadas cuando se
interrumpi el autotuning.

737
Instrucciones de control de datos Seccin 3-18

Datos de Elemento Contenido Rango de configuracin Cambio con


control condicin de
entrada en ON
Bits 00 hasta Ganancia de clculo Configure este parmetro para 0000 hexadecimal: 1,00 Permitido
11 de C+9 AT ajustar la contribucin de los (predeterminada) (Estos
resultados del clculo PID a los 0001 hasta 03E8 hexadecimal parmetros se
valores almacenados. (1 hasta 1000); leen al iniciar el
Normalmente deje este (0,01 hasta 10,00, en unidades autotuning).
parmetro con su configuracin de 0,01)
predeterminada (0000).
Aumente el valor cuando
desee enfatizar la estabilidad.
Disminuya el valor cuando
desee enfatizar la respuesta.
C+10 Histresis de ciclo Ajuste la histresis cuando se 0000 hexadecimal: 0,20%
lmite genere ciclo lmite. La (predeterminada)
configuracin predeterminada 0001 hasta 03E8 hexadecimal:
para operacin inversa pone en 0,01 hasta 10,00% en unidades
ON la MV con una histresis de de 0,01%
SV20%.
FFFF hexadecimal: 0.00%
Aumente esta configuracin si
no puede generarse un ciclo Nota El porcentaje est
lmite apropiado debido a que el relacionado con el rango
PV es inestable. No obstante, la de entrada.
precisin del AT disminuir si la
histresis de ciclo lmite es ms
alta de lo necesario.

Nota 1. Cuando la unidad se designa como 1, el rango es de 1 hasta 8.191 veces


el periodo. Cuando la unidad se designa como 9, el rango es de 0,1 hasta
819,1 s. Cuando se designa 9, configure los tiempos de integral y derivada
dentro de un rango de 1 hasta 8.191 veces el periodo de muestreo.
2. La configuracin de parmetro 2-PID () como 000 supone 0,65, el valor
normal.
Cuando el control de lmite de salida de variable manipulada est
habilitado (es decir, configurado como 1), ajuste los valores como sigue:
0000 Lmite inferior de salida de MV Lmite superior de salida de MV Valor
mx. del rango de salida

Ejemplo 1: En el flanco ascendente de CIO 000000 (OFF a ON), el rea de trabajo de


Interrupcin del control D00211 hasta D00240 se inicializa de acuerdo a los parmetros (mostrados a
PID para realizar continuacin) configurados en D00200 hasta D00208. Una vez se haya
autotuning inicializado el rea de trabajo, se ejecuta control PID y la variable manipulada
se entrega a CIO 0020.
Mientras CIO 000000 est en ON, se ejecuta control PID en los intervalos de
periodo de muestreo de acuerdo a los parmetros configurados en D00200
hasta D00210. La variable manipulada se entrega a CIO 0020.
Las constantes PID utilizadas en el clculo PID no se modificarn si la banda
proporcional (P), la constante de integral (Tik) o la constante de derivada se
modifican despus de que CIO 000000 se ponga en ON.
En el flanco ascendente de W 000000 (OFF a ON), SETB(532) pone en ON
el bit 15 de D00209 (C+9) e inicia el autotuning. Cuando se completa el
autotuning, las constantes P, I y D calculadas se escriben en C+1, C+2 y C+3.
El control PID se reinicializa con las nuevas constantes PID.

738
Instrucciones de control de datos Seccin 3-18

000000
PIDAT
S 0010
C D00200
D 0020

W00000
SETB
D00209
#000F
C: D00200 0 1 2 C Valor seleccionado: 300
C+1: D00201 0 0 6 4 Banda proporcional: 10,0%
C+2: D00202 0 4 B 0 Tiempo de integral: 120,0 s
C+3: D00203 0 1 9 0 Tiempo de derivada: 40,0 s
Perodo de Operacin inversa (bit 00: 0), Configuracin de habilitacin de cambio de
C+4: D00204 0 0 3 2 muestreo: 0,5 s constante PID = OFF (bit 01: 0), Valor seleccionado = salida de variable
manipulada 50% (bit 03: 1), Parmetro 2-PID = 0,65 (bits 04 hasta 15: 000
C+5: D00205 0 0 0 8 hexadecimal)
Parmetros C+6: D00206 0 4 9 4 Rango de salida de variable manipulada: 12 bits (bits 00 hasta 03: 4 hexadecimal),
Constante de integral/derivada: designacin de tiempo (bits 04 hasta 07: 9 hexadecimal)
C+7: D00207 0 0 0 0 Rango de entrada: 12 bits (bits 08 hasta 11: 4 hexadecimal), Control de lmite de salida de
variable manipulada inhabilitado (bit 12: 0)
C+8: D00208 0 0 0 0 Bit de comando AT OFF (bit 15: 0),
C+9: D00209 Ganancia de clculo AT = 1,00 (bits 00 hasta 11: 000 hexadecimal)
PV: 0 0 0 0
Clculo PID Histresis de ciclo lmite = 0,20%
CIO 0010 C+10: D00210 0 0 0 0
C+11: D00211
rea de
hasta trabajo
Salida de MV: CIO 0020
C+40: D00240

Se configuran las constantes


Se inicia el control PID. PID calculadas.

CIO 000000

Control PID AT en ejecucin Control PID

W000000

Bit 15 de
D00209

PV

SV

Tiempo

MV

Tiempo

739
Instrucciones de control de datos Seccin 3-18

Ejemplo 2: En el flanco ascendente de CIO 000000 (OFF a ON), se realizar en primer


Inicio de PIDAT(191) con lugar autotuning si el bit 15 de D00209 (C+9) est en ON. Cuando se
autotuning completa el autotuning, las constantes P, I y D calculadas se escriben en
C+1, C+2 y C+3. El control PID se inicializa con las constantes PID
calculadas.
000000
PID
S 0010
C D00200
D 0020

Inicio de Control Se configuran las constantes


PID y autotuning. PID calculadas.

CIO 000000

AT en Control PID
Bit 15 de
D00209

PV

SV

Tiempo

MV

Tiempo

Ejemplo 3: El autotuning puede interrumpirse poniendo el bit 15 de D00209 (C+9) de ON


Interrupcin del a OFF. El control PID puede reiniciarse con las constantes P, I y D que
autotuning antes de la estaban activas antes de que se iniciara el autotuning.
finalizacin Se inicia el control PID.

CIO 000000

Control PID AT en ejecucin Control PID

Se inicia AT Se interrumpe AT.

Bit 15 de
D00209

PV

SV

Se reinicia el control PID


con las constantes PID
Tiempo

740
Instrucciones de control de datos Seccin 3-18

3-18-3 LIMIT CONTROL: LMT(680)


Empleo Controla los datos de salida en funcin de si los datos de entrada estn o no
dentro de los lmites superior e inferior.

Smbolo de diagrama de
rels LMT(680)

S S: Canal de entrada

C C: Primer canal de lmite

D D: Canal de salida

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON LMT(680)
Se ejecuta una vez en el diferencial ascendente @LMT(680)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S C D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6142 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta
W511 W510 W511
rea de bit en Espera H000 hasta H511 H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta 959 A000 hasta A958 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4094 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4094 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32766 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32766 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32766 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta ---
#FFFF
(Binario)

741
Instrucciones de control de datos Seccin 3-18

rea S C D
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Cuando la condicin de ejecucin est en ON, LMT(680) controla los datos
de salida de acuerdo a si los datos de entrada especificados (binarios con
signo de 16 bits) estn o no entre los lmites superior e inferior especificados.
El contenido de los canales C y C+1 es como sigue:
C Datos de lmite inferior (datos de salida mnimos)
C+1 Datos de lmite superior (datos de salida mximos)

C y C+1 deben tener la misma clasificacin de rea.


Si los datos de entrada (S) son menores que el lmite inferior (C), los datos de
lmite inferior se entregarn a D y el indicador de menor que se pondr en
ON.
Si los datos de entrada (S) son mayores que el lmite superior (C), los datos
de lmite superior se entregarn a D y el indicador de mayor que se pondr en
ON.
Si los datos de entrada (S) son mayores que o iguales que el lmite inferior
(C) y menores que o iguales que el lmite superior (C+1), los datos de entrada
(S) se entregarn a D.

Lmite C+1
superior

Lmite
inferior C

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el lmite superior es menor que el lmite inferior.
error OFF en el resto de los casos.
Indicador de > ON si los datos de entrada (S) son mayores que el
mayor que lmite superior.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de < ON si los datos de entrada (S) son menores que el
menor que lmite inferior.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es "1".
negativo OFF en el resto de los casos.

742
Instrucciones de control de datos Seccin 3-18

Precauciones Si el lmite superior es inferior al lmite inferior, se producir un error y el


indicador de error se pondr en ON.
Si los datos de entrada (S) son mayores que el lmite superior, el indicador de
mayor que se pondr en ON.
Si el canal de salida D es 0000 hexadecimal, el indicador de igual que se
pondr en ON.
Si los datos de entrada (S) son menores que el lmite inferior, el indicador de
menor que se pondr en ON.
Si el estado del bit de la izquierda del canal de salida D es "1", el indicador de
negativo se pondr en ON.

Ejemplo Si D00100 es 0050 hexadecimal (80), entonces 0064 hexadecimal (100) se


entregar a D00300 porque 80 es menos que el lmite inferior de 100.
Si D00100 es 00C8 hexadecimal (200), entonces 0064 hexadecimal (100) se
entregar a D00300 porque 200 est entre los lmites superior e inferior.
Si D00100 es 012C hexadecimal (300), entonces 015E hexadecimal (350) se
entregar a D00300 porque 350 es mayor que el lmite superior de 300.

C: Lmite inferior: 100


Lmite superior: 300

3-18-4 DEAD BAND CONTROL: BAND(681)


Empleo Controla los datos de salida de acuerdo a si los datos entrada estn o no
entre los lmites inferior y superior del rango (rango de banda muerta).

Smbolo de diagrama de
rels BAND(681)

S S: Canal de entrada

C C: Primer canal de lmite

D D: Canal de salida

743
Instrucciones de control de datos Seccin 3-18

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BAND(681)
Se ejecuta una vez en el diferencial ascendente @BAND(681)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK
Especificaciones del
operando rea S C D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6142 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta
W511 W510 W511
rea de bit en Espera H000 hasta H511 H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A000 hasta A958 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4094 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4094 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32766 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32766 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32766 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta ---
#FFFF
(Binario)
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Cuando la condicin de ejecucin est en ON, BAND(681) controla los datos
de salida de acuerdo a si los datos de entrada especificados (binarios con
signo de 16 bits) estn o no entre los lmites superior e inferior especificados.
(banda muerta). El contenido de los canales C y C+1 es como sigue:
C Datos de lmite inferior (lmite inferior de banda muerta)
C+1 Datos de lmite superior (lmite superior de banda muerta)

C y C+1 deben tener la misma clasificacin de rea.

744
Instrucciones de control de datos Seccin 3-18

Si los datos de entrada (S) son mayores que o iguales que el lmite inferior
(C) y menores que o iguales que el lmite superior (C+1), 0000 (hexadecimal)
se entregar a D y el indicador de igual se pondr en ON.
Si los datos de entrada (S) son menores que el lmite inferior (C), la diferencia
entre los datos de entrada menos los datos de lmite inferior se entregar a D
y el indicador de menor que se pondr en ON.
Si los datos de entrada (S) son mayores que el lmite superior (C), la
diferencia entre los datos de entrada menos los datos de lmite superior se
entregar a D y el indicador de mayor que se pondr en ON.
Salida

Lmite inferior (C)


Entrada

Lmite superior (C+1)

Si los datos de salida son menores que 8000 (hexadecimal) o si son mayores
que 7FFF, el signo se invertir. Por ejemplo, para un lmite inferior de 0100
(hexadecimal) y unos datos de entrada de 8000 (hexadecimal), los datos de
salida sern como sigue:
8000 (hexadecimal) [32768] 0100 (hexadecimal) [256] = 7F00 (hexa-
decimal) [32512]
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el lmite superior es menor que el lmite inferior.
error OFF en el resto de los casos.
Indicador de > ON si los datos de entrada (S) estn por encima del lmite
mayor que superior.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de < ON si los datos de entrada (S) estn por debajo del lmite
menor que inferior.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es "1".
negativo OFF en el resto de los casos.
Precauciones Si el lmite superior es inferior al lmite inferior, se producir un error y el
indicador de error se pondr en ON.
Si los datos de entrada (S) son mayores que el lmite superior, el indicador de
mayor que se pondr en ON.
Si el canal de salida D es 0000 hexadecimal, el indicador de igual que se
pondr en ON.
Si los datos de entrada (S) son menores que el lmite inferior, el indicador de
menor que se pondr en ON.
Si el estado del bit de la izquierda del canal de salida D es "1", el indicador de
negativo se pondr en ON.
Ejemplo Si D00100 es 00B4 hexadecimal (180), entonces 180200=FFEC hexadeci-
mal (20) se entregar a D00300 porque 180 es menor que el lmite inferior
de 200.
Si D00100 es 00E6 hexadecimal (230), entonces 0 se entregar a D00300
porque 230 est entre los lmites superior e inferior.
Si D00100 es 015E hexadecimal (350), entonces 350300=0032 hexadeci-
mal (50) se entregar a D00300 porque 350 es mayor que el lmite superior
de 300.

745
Instrucciones de control de datos Seccin 3-18

Lmite inferior: 200


Lmite superior: 300

Lmite

Lmite Lmite
inferior: superior:
200 300
Lmite superior

3-18-5 DEAD ZONE CONTROL: ZONE(682)


Empleo Suma la desviacin especificada a los datos de entrada y entrega el
resultado.
Smbolo de diagrama de
rels ZONE(682)

S S: Canal de entrada

C C: Primer canal de lmite

D D: Canal de salida

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ZONE(682)
Se ejecuta una vez en el diferencial ascendente @ZONE(682)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Especificaciones del
operando rea S C D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6142 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta
W511 W510 W511
rea de bit en Espera H000 hasta H511 H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A000 hasta A958 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4094 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4094 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32766 D32767

746
Instrucciones de control de datos Seccin 3-18

rea S C D
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32766 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32766 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta ---
#FFFF
(Binario)
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Cuando la condicin de ejecucin est en ON, ZONE(682) aade el bias


especificado a los datos de entrada especificados (binarios con signo de 16
bits) y coloca el resultado en un canal especificado. El contenido de los
canales C y C+1 es como sigue:
C Bias negativo
C+1 Bias positivo

C y C+1 deben tener la misma clasificacin de rea.


Si los datos de entrada (S) son menores que cero, los datos de entrada ms
el bias negativo se entregarn a D y el indicador de menor que se pondr en
ON.
Si los datos de entrada (S) son mayores que cero, los datos de entrada ms el
bias positivo se entregarn a D y el indicador de mayor que se pondr en ON.
Si los datos de entrada (S) son igual a cero, 0000 se entregar a D y el
indicador de igual se pondr en ON.
Salida

Desviacin
positiva (C+1)
Entrada

Desviacin
negativa (C)

Si los datos de salida son menores que 8000 (hexadecimal) o si son mayores
que 7FFF, el signo se invertir. Por ejemplo, para un valor de bias negativo de
FF00 (hexadecimal) y unos datos de entrada de 8000 (hexadecimal), los
datos de salida sern como sigue:
8000 (hexadecimal) [32768] FF00 (hexadecimal) [256] = 7F00 (hexadeci-
mal) [32512]

747
Instrucciones de control de datos Seccin 3-18

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el lmite superior es menor que el lmite inferior.
error OFF en el resto de los casos.
Indicador de > ON si los datos de entrada (S) estn por encima del
mayor que lmite superior.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de < ON si los datos de entrada (S) estn por debajo del
menor que lmite inferior.
OFF en el resto de los casos.
Indicador de N ON cuando el bit de la izquierda del resultado es "1".
negativo OFF en el resto de los casos.

Precauciones Si el lmite superior es inferior al lmite inferior, se producir un error y el


indicador de error se pondr en ON.
Si los datos de entrada (S) son mayores que el lmite superior, el indicador de
mayor que se pondr en ON.
Si el canal de salida D es 0000 hexadecimal, el indicador de igual que se
pondr en ON.
Si los datos de entrada (S) son menores que el lmite inferior, el indicador de
menor que se pondr en ON.
Si el estado del bit de la izquierda del canal de salida D es "1", el indicador de
negativo se pondr en ON.
Ejemplo Cuando CIO 000000 est en ON, se aplicar un bias de 100 al valor de
D00100 si ese valor es menor que 0, y el valor resultante se almacenar en
D00300.
Si el valor de D00100 es 0, entonces 0000 hexadecimal se almacenar en
D00300.
Si el valor de D00100 es mayor que 0, entonces se aplicar un bias de +100 y
el valor resultante se almacenar en D00300.

Valores decimales
C: 100

Bias negativo

Bias positivo
Contenidos de D00300

Contenidos de D00200

748
Instrucciones de control de datos Seccin 3-18

3-18-6 TIME-PROPORTIONAL OUTPUT: TPO(685)


Empleo Introduce la relacin de ON/OFF o la variable manipulada del canal
especificado, convierte la relacin de ON/OFF en una salida proporcional de
tiempo en funcin de los parmetros especificados y genera la salida del
resultado de la salida especificada.
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0
posterior.

Smbolo de diagrama de
rels TPO
S S: Canal de entrada
C C: Primer canal de parmetro
R R: Bit de salida de impulsos

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TPO(685)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK OK

Operandos S: Canal de entrada


Especifica el canal de entrada que contiene la relacin de ON/OFF o la
variable manipulada de entrada. Los bits 04 hasta 07 de C especifican el tipo
de entrada, es decir, si el canal de entrada contiene una relacin de ON/OFF
o una variable manipulada de entrada. (Ajuste estos bits como 0 hexadecimal
para especificar una relacin de ON/OFF de entrada o como 1 hexadecimal
para especificar una variable manipulada de entrada).
Relacin de ON/OFF de entrada: 0000 hasta 2710 hexadecimal (0,00%
hasta 100,00%)
Cariable manipulada de entrada (Ver nota): 0000 hasta FFFF
hexadecimal (0 hasta 65.535 mx.) (Los bits 00 hasta 03 de C
especifican el rango de variable manipulada, es decir, el nmero de bits
vlidos de la variable manipulada). Especifique el mismo nmero de bits
especificados en la configuracin de rango de salida de PID(190).)
Nota Si S es una variable manipulada, especifique el canal que contiene
la salida de variable manipulada desde una instruccin PID(190) o
PIDAT(191).
C hasta C+6: Parmetros
El siguiente diagrama muestra las ubicaciones de los datos de parmetro.
Encontrar ms detalles sobre los parmetros en el apartado Configuracin
de parmetros en esta seccin.

749
Instrucciones de control de datos Seccin 3-18

15 12 11 8 7 4 3 0
C

Rango de variable manipulada


Entrada
Temporizacin de lectura de entrada
Funcin de lmite de salida

15 0
C+1 Perodo de control
C+2 Lmite inferior de salida
C+3 Lmite superior de salida
C+4
rea de trabajo
C+5 (3 canales, el usuario no puede
utilizarla)
C+6

Nota: Para ms detalles, consulte la descripcin de cada parmetro.

R: Bit de salida de impulsos


Especifica el bit de salida de destino para la salida de impulsos.
Normalmente, especifique un bit de salida asignado a una Unidad de salida
de transistor y conecte un rel de estado slido a la Unidad de salida de
transistor.
Especificaciones del
operando rea S C R
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 000000 hasta
CIO 6143 CIO 6137 CIO 614315
rea de Trabajo W000 hasta W000 hasta W00000 hasta
W511 W505 W51115
rea de bit en Espera H000 hasta H511 H000 hasta H505 H00000 hasta
H51115
rea Bit Auxiliar A000 hasta 959 A000 hasta A953 A44800 hasta
A95915
rea Temporizador T0000 hasta T0000 hasta ---
T4095 T4089
rea Contador C0000 hasta C0000 hasta ---
C4095 C4089
rea DM D00000 hasta D00000 hasta ---
D32767 D32761
rea EM sin banco E00000 hasta E00000 hasta ---
E32767 E32761
rea EM con Banco En_00000 hasta En_00000 hasta ---
En_32767 En_32761
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767 ---
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767 ---
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta --- ---
#FFFF
(Binario)
Registros de datos DR0 hasta DR15 --- ---

750
Instrucciones de control de datos Seccin 3-18

rea S C R
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Recibe una entrada de relacin de ON/OFF o de variable manipulada desde


la direccin de canal especificada por S, convierte la relacin de ON/OFF a
una salida proporcional de tiempo (ver nota) basndose en los parmetros
especificados en los canales C hasta C+3, y entrega una salida de impulsos
al bit especificado por R.
Nota Una salida proporcional de tiempo cambia proporcionalmente basndose en
la relacin de ON/OFF del canal de entrada S. El periodo en el que cambia el
estado ON y OFF se conoce como el periodo de control y se configura en el
canal de parmetros C+1.
Ejemplo: Cuando el periodo de control es de 1 s y el valor de entrada es del
50%, el bit est en ON durante 0,5 s y en OFF durante 0,5 s. Cuando el
periodo de control es de 1 s y el valor de entrada es del 80%, el bit est en
ON durante 0,8 s y en OFF durante 0,2 s.
Generalmente, TPO(685) se utiliza junto con PID(190) o PIDAT(191) y el
canal de resultado de la variable manipulada de la instruccin PID (D) se
especifica como el canal de entrada (S) para la instruccin TPO(685). As
que un bit de salida asignado a una Unidad de salida de transistor se
especifica generalmente como R y se conecta un rel de estado slido a la
Unidad de salida de transistor para llevar a cabo control proporcional de
tiempo de un calentador (control proporcional de la relacin de ON/OFF).
Combinacin de TPO(685) con una instruccin de control PID
Cuando se combina TPO(685) con una instruccin de control PID, la entrada
de variable manipulada se divide por el rango de variable manipulada para
calcular la relacin de ON/OFF, esa relacin de ON/OFF se convierte a una
salida proporcional de tiempo, y se entregan impulsos.
000000
PID
S Entrada
de PV
C Parmetros PID Clculo PID
Variable manipulada (MV)
D00000 Variable
manipulada D00000 MV Rango de salida

= Rango de MV
TPO
D00000 MV
C Parmetros MV Rango de MV
R Salida de
impulsos Relacin de ON/OFF ( 0,00% a 100,00%)
Conversin a salida
proporcional de tiempo

Es este caso, configure el mismo valor para el rango de salida de la


instruccin de control PID y el rango de variable manipulada de la instruccin
TPO(685). Por ejemplo, cuando tanto el rango de salida de la instruccin de
control PID como el rango de variable manipulada de la instruccin TPO(685)
se configuran como 12 bits (0000 hasta 0FFF hexadecimal), la relacin de
ON/OFF se calcula dividiendo la variable manipuladade la instruccin de
control PID por 0FFF hexadecimal y TPO(685) convierte esa relacin de ON/
OFF en una salida proporcional de tiempo.

751
Instrucciones de control de datos Seccin 3-18

Ejemplo de cableado externo


Conecte una unidad de salida de transistor a un rel de estado slido (SSR)
como se muestra en el diagrama siguiente.
Calentador
Unidad de salida de transistor
SSR
12 a 24 Vc.c.
COM +

c.a.

Configuraciones de parmetros
Datos de Elemento Contenido Rango de configuracin Cambio con
control condicin
Ca- Bits de entrada
nal en ON
C 00 a 03 Rango de Especifica el nmero de bits 0 hexadecimal: 8 bits5 hexadecimal: 13 bits Permitido
variable de datos de entrada. 1 hexadecimal: 9 bits6 hexadecimal: 14 bits
manipulada 2 hexadecimal: 10 bits7 hexadecimal: 15 bits
3 hexadecimal: 11 bits8 hexadecimal: 16 bits
4 hexadecimal: 12 bits
04 a 07 Entrada Especifica si S contiene una 0 hexadecimal: Relacin de ON/OFF Permitido
relacin de ON/OFF o una Rango de configuracin para
variable manipulada. S: 0000 hasta 2710
hexadecimal (0,00 hasta
100,00%)
1 hexadecimal: Variable manipulada
Rango de configuracin para
S: 0000 hasta FFFF hexade-
cimal (0 hasta 65.535)
(La configuracin mxima
depende del rango de MV
configurado con los bits 00
hasta 03 de C).
08 a 11 Temporiza- Especifica la temporizacin 0 hexadecimal: Use el valor inicial del periodo Permitido
cin de de entrada. de control
lectura de 1 hexadecimal: Use el valor ms bajo
entrada 2 hexadecimal: Use el valor ms alto
3 hexadecimal: Ajuste continuo
12 a 15 Control de Especifica si la funcin de 0 hexadecimal: Habilitada Permitido
lmite de lmite de salida est habilitada 1 hexadecimal: Desabilitada (Ver nota).
salida o inhabilitada.
C+1 00 a 15 Perodo de Perodo de control 0064 hasta 270F hexadecimal Permitido
control (Periodo de tiempo en que se (1,00 hasta 99,99 s)
hacen los cambios ON/OFF). Nota: Por ejemplo, 1,00 s se configura como
0064 hexadecimal, y no como 0001
hexadecimal.
C +2 00 a 15 Lmite Especifica el lmite inferior 0000 hasta 2710 hexadecimal Permitido
inferior de cuando el lmite de salida (0 hasta 100,00%)
salida est habilitado.
C +3 00 a 15 Lmite Especifica el lmite superior 0000 hasta 2710 hexadecimal Permitido
superior de cuando el lmite de salida (0 hasta 100,00%)
salida est habilitado.
C+4 00 a 15 rea de Este rea de trabajo es No se puede utilizar. ---
C+5 00 a 15 trabajo utilizada por el sistema. No
puede ser utilizada por el
C+6 00 a 15 usuario.

Nota Cuando la funcin de control de lmite de salida est habilitada, ajuste los
lmites inferior y superior como sigue: 0000 hexadecimal lmite inferior
lmite superior 2710 hexadecimal.

Ejecucin La instruccin se ejecuta mientras la condicin de entrada est en ON.

752
Instrucciones de control de datos Seccin 3-18

Cuando se inicia la ejecucin de la instruccin, el bit de salida (R) se


pone en ON/OFF segn la relacin de ON/OFF.
Los parmetros (de C hasta C+3) se leen en tiempo real cada vez que se
ejecuta la instruccin. Cuando cambie los parmetros, cmbielos todos al
mismo tiempo de tal manera que los diferentes juegos de parmetros no
se mezclen.
La salida (R) se pone en ON/OFF cuando se ejecuta la instruccin y la
precisin de la tenporizacin ON/OFF de la salida es de 10 ms como
mximo.
La ejecucin de la instruccin se detiene cuando la condicin de entrada
se pone en OFF. En ese momento, el valor de tiempo transcurrido se
resetear y el periodo de control se inicializar.
La configuracin del tipo de entrada (bits 04 hasta 07 de C) determina si
el canal de entrada (S) contiene una relacin de ON/OFF o una variable
manipulada. Cuando S contiene la variable manipulada, la relacin de
ON/OFF se calcula dividiendo la entrada de variable manipulada por el
rango de variable manipulada (bits 00 hasta 03 de C).
Configuracin de tempo- La configuracin de temporizacin de lectura de entrada (bits 08 hasta 11 de
rizacin de lectura de en- C) especifica si el canal de entrada (S) se lee, como se muestra en la
trada (C bits 08 hasta 11) siguiente tabla:
Temporizacin de Descripcin
lectura de entrada
0: Use el valor inicial del La entrada de relacin de ON/OFF se lee al comienzo del
periodo de control periodo de control y la relacin no puede modificarse
durante el periodo de control.
1: Use el valor ms bajo Si la entrada de relacin de ON/OFF cae por debajo de la
relacin de ON/OFF al comienzo del periodo de control,
el valor inferior tomar preferencia y el tiempo de salida
en ON se reducir correspondientemente.
2: Use el valor ms alto Si la entrada de relacin de ON/OFF sube por encima de
la relacin de ON/OFF al comienzo del periodo de
control, el valor superior tomar preferencia y el tiempo
de salida en ON se aumentar correspondientemente.
3: Ajuste continuo Se lee la relacin de ON/OFF en tiempo real cada vez
que la instruccin se ejecuta y la operacin ON/OFF se
repetir dentro del periodo de control.

Los siguientes diagramas muestran la operacin de cada configuracin de


temporizacin de lectura de entrada.
Configuracin de tiempo de entrada = 0 (Use el valor inicial del periodo
de control).

Lectura slo al comienzo del periodo de control.


Periodo de control (a) Periodo de control (a)

100%

Relacin de 70%
ON/OFF 55%
(Rango MV/MV)

0%

a 0,55 s a 0,45 s a 0,70 s a 0,30 s

Salida

Tiempo

Cada salida de periodo de control es determinada por la relacin de ON/OFF al comienzo


de ese periodo. Use esta configuracin para aplicaciones generales.

753
Instrucciones de control de datos Seccin 3-18

Configuracin de tiempo de entrada = 1 (Use el valor ms bajo).


Periodo de control (a) Periodo de control (a)
100%

70%
Relacin de 55%
ON/OFF
(Rango MV/MV) 35%
55% del objetivo Se mantiene el
reducido al 35%. 70% del objetivo.
0%
a 0,35 s a 0,65 s a 0,70 s a 0,30 s

Salida

Tiempo
Si la relacin de ON/OFF cae por debajo del valor inicial lo suficientemente pronto, la relacin de
ON/OFF se ajustar y la salida se pondr en OFF antes.
Utilice esta configuracin para aplicaciones como evitar sobreimpulsos al usar control proporcional
de tiempo para controlar el calentamiento y utilizando un periodo de control relativamente largo.

Configuracin de tiempo de entrada = 2 (Use el valor ms alto).

Periodo de control (a) Periodo de control (a)

100%
Se mantiene el 70% del objetivo.
80%
Relacin de ON/OFF 70%
(Rango MV/MV) 55%
70% del objetivo
aumentado al 80%.
0%
a
a 0,45 s a 0,55 s 0,20 s a 0,80 s

Salida

Tiempo
Si la relacin de ON/OFF aumenta por encima del valor inicial lo suficientemente pronto, la
relacin de ON/OFF se ajustar y la salida se pondr en ON antes. (Con esta configuracin el
orden ON/OFF de la salida se invierte y la salida se pone de OFF a ON).
Utilice esta configuracin para aplicaciones como evitar subimpulsos al usar control proporcional
de tiempo para controlar la refrigeracin utilizando un periodo de control relativamente largo.

754
Instrucciones de control de datos Seccin 3-18

Configuracin de tiempo de entrada = 3 (Ajuste continuo)

100%
Periodo de control (a) Periodo de control (a)
100%
Relacin de ON/OFF : Salida ON
(Rango MV/MV) : Salida OFF

0%
a a a
a 0,35 s 0,20 s 0,20 s 0,20 s

Salida

Tiempo
Los cambios en la relacin de ON/OFF se monitorizan en tiempo real. Si la relacin de ON/OFF
cae por debajo del valor inicial lo suficientemente pronto, la relacin de ON/OFF se ajustar y la
salida se pondr en OFF antes. Si la relacin de ON/OFF vuelve a aumentar despus de ello,
la relacin se ajustar de nuevo y la salida se pondr en ON. Este proceso se repite
continuamente.
Utilice esta configuracin para mejorar la respuesta cuando el periodo de control es
relativamente largo y la relacin de ON/OFF cambia rpidamente. Esta configuracin tambin
es apropiada para aplicaciones de iluminacin o alimentacin que requieran un control preciso.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de entrada de S estn fuera del rango.
error (El rango de configuracin de datos de entrada depende
de la configuracin del tipo de entrada).
ON si los datos de C estn fuera del rango. (El rango de
variable manipulada causar un error solamente cuando
el tipo de entrada se configure como variable
manipulada).
ON si el periodo de control de C+1 est fuera del rango.
ON si la funcin de lmite de salida est habilitada pero el
lmite inferior de salida (C+2) o el lmite superior de salida
(C+3) est fuera del rango.
ON si la funcin de lmite de salida est habilitada pero el
lmite inferior de salida (C+2) es menor o igual que el
lmite superior de salida (C+3).
OFF en el resto de los casos.

Ejemplo Ejemplo 1: Combinacin de TPO(685) con PID(190)


Cuando CIO 000000 est en ON, TPO(685) toma la salida de variable
manipulada de PID(190) (contenida en D00000), calcula la relacin de ON/
OFF a partir del valor de esa variable manipulada (Relacin de ON/OFF = MV
Rango de MV), convierte la relacin de ON/OFF a una salida proporcional
de tiempo, y entrega los impulsos a CIO 002001.
En este caso, CIO 0020 se asigna a una Unidad de salida de transistor y el bit
CIO 002001 se conecta a un rel de estado slido para control de calentador.

755
Instrucciones de control de datos Seccin 3-18

000000
PID
Cuando CIO 000000 cambia de OFF a ON,
S 0010 Entrada de PV PID(190) lee los parmetros, realiza el clculo PID
C D00200 Parmetros PID con la entrada de PV de CIO 0010, y entrega la
variable manipulada (MV) a D00000.
D D00000 Variable manipulada

TPO TPO(685) calcula la relacin de ON/OFF dividiendo


S D00000 Variable manipulada la MV de D00000 por el rango de MV (0FFF
Hexadecimal ya que el rango est configurado
C D05000 Parmetros como 12 bits), convierte esa relacin de ON/OFF a
R 002001 Salida de impulsos salida proporcional de tiempo, y entrega la salida de
impulsos al bit 01 de CIO 0020.

D00200 Valor seleccionado (SV)


D00201 Banda proporcional (P)
:
D00206 4
:
Rango de salida: 4 hexadecimal
: (12 bits: 0000 hasta 0FFF hexadecimal)
D05000 1 4
Rango de MV: 4 hexadecimal
(12 bits: 0000 hasta 0FFF hexadecimal)

Tipo de entrada: 1 hexadecimal (MV)

Nota Cuando utilice TPO(685) en combinacin con PID(190) en una tarea cclica
usando adems una tarea de interrupcin, inhabilite temporalmente las
ejecuciones ejecutando DI(693) (DISABLE INTERRUPTS) antes de PID(190)
y TPO(685). Si no se inhabilitan las interrupciones y se produce una inter-
rupcin entre PID(190) y TPO(685) es posible que se desplace el periodo de
control.

Tarea cclica

DI

PID
S Entrada de PV
C Parmetros PID Recepcin prohibida
Variable
D manipulada Tarea de interrupcin

TPO
Variable
S manipulada
C Parmetros
R Salida de impulsos

EI
Recepcin permitida
Tarea de interrupcin

Ejemplo 2: Utilizacin de TPO(685) solamente


Cuando CIO 000000 est en ON, TPO(685) toma la relacin de ON/OFF de
D00010, convierte la relacin de ON/OFF a salida proporcional de tiempo, y
entrega los impulsos a CIO 000100.
En este caso el periodo de control es de 1 s y la funcin de lmite de salida se
habilita con un lmite inferior de 20,00% y un lmite superior de 80,00%.

756
Instrucciones de control de datos Seccin 3-18

000000
TPO TPO(685) toma la relacin de ON/OFF de D00010,
convierte esa la relacin de ON/OFF a salida
S D00010 Relacin de ON/OFF
proporcional de tiempo, y entrega la salida de
C D00000 Parmetros impulsos al bit 00 de CIO 0001.
R 000100 Salida de
impulsos

Entrada de relacin de ON/OFF, lectura de valor inicial y habilitacin


D00000 1 1 0 0 de funcin de lmite de salida.
D00001 0 0 6 4 Periodo de control = 1,00 s
D00002 0 7 D 0 Lmite inferior de salida = 20,00%
D00003 1 A 4 0 Lmite superior de salida = 80,00%
D00004 No configurar.
D00005 No configurar.
D00006 No configurar.
:
:
D00010 0 a 2710 hexadecimal. 0 hasta 100,00%

3-18-7 SCALING: SCL(194)


Empleo Convierte datos binarios sin signo en datos BCD sin signo, de acuerdo con la
funcin lineal especificada.

Smbolo de diagrama de
SCL(194)
rels
S S: Canal fuente

P1 P1: Primer canal de parmetro

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SCL(194)
Se ejecuta una vez en el diferencial @SCL(194)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de reas de Subrutinas Tareas de
programa de programa de interrupcin
bloques pasos
OK OK OK OK

Operandos Los contenidos de los cuatro canales que comienzan con el primer canal de
parmetro (P1) se muestran en el siguiente diagrama.

757
Instrucciones de control de datos Seccin 3-18

15 0
P1

Valor con escala para el punto A (Ar)


0000 hasta 9999 (BCD 4 dgitos)
15 0
P1+1

Valor sin escala para el punto A


(As) 0000 hasta FFFF (binario)
15 0
P1+2

Valor con escala para el punto B (Br)


0000 hasta 9999 (BCD 4 dgitos)
15 0
P1+3

Valor sin escala para el punto B


(Bs) 0000 hasta FFFF (binario)

Nota P1 hasta P1+3 deben estar en el mismo rea.

Especificaciones del
operando rea S P1 R
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6140 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta
W511 W508 W511
rea de bit en Espera H000 hasta H511 H000 hasta H508 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A000 hasta A956 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4092 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4092 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32764 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32764 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32764 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15

758
Instrucciones de control de datos Seccin 3-18

rea S P1 R
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SCL(194) se utiliza para convertir datos binarios sin signo contenidos en el
canal fuente S en datos BCD sin signo y coloca el resultado en el canal de
resultado R segn la funcin lineal definida por los puntos (As, Ad) y (Bs, Bd).
La direccin del primer canal que contiene las coordenadas de puntos (As,
Ar) y (Bs, Br) se especifica para el primer canal de parmatero P1. Estos
puntos definen 2 valores (As y Bs) antes de la escala y 2 valores (Ar y Br)
despus de la escala.
Las siguientes ecuaciones se usan para la conversin.
(Bd Ad)
R = Bd Conversin a BCD de (Bs S)
Conversin a BCD de (Bs As)

La pendiente de la lnea es como sigue:

(Bd Ad)
R = Bd
-
Conversin a BCD de (Bs As)

Los puntos A y B pueden definir una lnea con una pendiente positiva o
negativa. La utilizacin de una pendiente negativa habilita la inversin de
escala.
El resultado se redondea al entero ms prximo. Si el resultado es inferior a
0000, se entregar 0000 como resultado. Si el resultado es mayor de 9999,
se entregar 9999.
R (BCD sin signo) La conversin a escala se ejecuta
de acuerdo con la funcin lineal
definida por los puntos A y B.

Punto B P (BCD) Valor convertido


P1+1 (BIN)
Punto A
P1+2 (BCD)
Valor convertido
P1+3 (BIN)
S (binario sin signo)

SCL(194) puede utilizarse para aplicar escala a los resultados de los valores
de conversin de seales analgicas desde Unidades de entrada analgica
de acuerdo a parmetros de escala definidos por el usuario. Por ejemplo, si
una entrada de 1 hasta 5 V a una Unidad de entrada analgica se introduce
en la memoria como 0000 hasta 0FA0 hexadecimal, al valor de la memoria
puede aplicrsele una escala de 50 hasta 200C mediante SCL(194).
SCL(194) convierte datos binarios sin signo a datos BCD sin signo. Para
convertir un valor negativo ser necesario aadir en primer lugar el valor
negativo mximo del programa antes de utilizar SCL(194) (ver ejemplo).
SCL(194) no puede entregar un valor negativo al canal de resultado R. Si el
resultado es un valor negativo, se entregar 0000 a R.

759
Instrucciones de control de datos Seccin 3-18

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los contenidos de C (Ar) o C+1 (Br) no son BCD.
error ON si los contenidos de C+1 (As) y C+3 (Bs) son iguales.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.

Precauciones Se producir un error y el indicador de error se pondr en ON si los valores


de Ar (C) y Br (C+2) no son BCD, o si los valores de As (C+1) y Bs (C+3) son
iguales.
El indicador de igual se pondr en ON cuando los contenidos del canal de
resultado D sean 0000.

Ejemplos En el siguiente ejemplo se asume que una seal analgica de 1 hasta 5 V se


convierte y se introduce en D00000 como 0000 hasta 0FA0 hexadecimal.
SCL(194) se utiliza para convertir (escala) el valor de CIO 0200 a un valor
entre 0000 y 0300 BCD.
When CIO 000000 est en ON, a los contenidos de D00000 se les aplica
escala utilizando la funcin lineal definida por el punto A (0000, 0000) y el
punto B (0FA0, 0300). Las coordenadas de estos puntos estn contenidas en
D00100 hasta D00103, y el resultado se entrega a D00200.

D00000
P1
R

Contenidos de D00200 (R)

P1: D00100 (BCD)


Punto B P1+1: D00101 (BIN)
P1+2: D00102 (BCD)
P1+3: D00103 (BIN)
Punto A

Contenidos de D00000 (S)

Valores negativos
Una unidad de entrada analgica introduce en realidad valores desde FF38
hasta 1068 hexadecimal para 0,8 hasta 5,2 V. SCL(194). No obstante, slo
puede gestionar datos binarios sin signo entre 0000 y FFFF hexadecimal, lo
que hace que sea imposible utilizar SCL(194) directamente para gestionar
datos binarios con signo por debajo de 1 V (0000 hexadecimal), es decir,
FF38 hasta FFFF hexadecimal. En una aplicacin real es por lo tanto
necesario aadir 00C8 hexadecimal a todos los valores de tal manera que
FF38 hexadecimal sea representado como 0000 hexadecimal antes de
utilizar SCL(194), como se muestra en el diguiente ejemplo.

760
Instrucciones de control de datos Seccin 3-18

x+00C8 He

El valor de CIO
0200 ms 00C8
hexadecimal

Contenidos de D 00200 (R) Punto A (00C8 Hexadecimal 0000 (BCD))


Punto B (1068 Hexadecimal 0300 (BCD))
P1: D00100 (BCD)
P1+1: D00101 (BIN)
Punto
P1+2: D00102 (BCD)
P1+3: D00103 (BIN)

Punto A
Contenidos de D 00000 (S)

En este ejemplo se convierten valores desde 0000 hasta 00C8 hexadecimal a


valores negativos. No obstante, SCL(194) puede entregar slo valores BCD
sin signo desde 0000 hasta 9999, as que se entregar 0000 BCD siempre
que los contenidos de D00000 estn entre 0000 y 00C8 hexadecimal.
Escala inversa
Tambin puede utilizarse escala inversa configurando As < Bs y Ar > Br.
Resultar la siguiente relacin.
R (BCD sin signo)

Punto A
Punto B

S (binario sin signo)

La escala inversa puede utilizarse, por ejemplo, para convertir (escala


inversa) 1 hasta 5 V (0000 hasta 0FA0 hexadecimal) a 0300 hasta 0000
respectivamente, como se muestra en el siguiente diagrama.
R

Punto A

Punto B

761
Instrucciones de control de datos Seccin 3-18

3-18-8 SCALING 2: SCL2(486)


Empleo Convierte datos binarios con signo en datos BCD con signo, de acuerdo con
la funcin lineal especificada. Se puede introducir un desplazamiento cuando
se define la funcin lineal.

Smbolo de diagrama de
SCL2(486)
rels
S S: Canal fuente

P1 P1: Primer canal de parmetro

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SCL2(486)
Se ejecuta una vez en el diferencial ascendente @SCL2(486)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos Los contenidos de los tres canales que comienzan con el primer canal de
parmetros (P1) se muestran en el siguiente diagrama.
15 0

P1

Desplazamiento de funcin lineal


8000 hasta 7FFF (binario con signo)
15 0
P1+1

X
8000 hasta 7FFF (binario con signo)
15 0
P1+2

Y
0000 hasta 9999 (BCD)

Nota P1 hasta P1+2 deben estar en el mismo rea.


Especificaciones del
operando rea S P1 R
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6141 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta
W511 W509 W511
rea de bit en Espera H000 hasta H511 H000 hasta H509 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A000 hasta A957 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4093 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4093 C4095

762
Instrucciones de control de datos Seccin 3-18

rea S P1 R
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32765 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32765 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32765 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SCL2(486) se utiliza para convertir los datos binarios con signo contenidos en
el canal fuente S a datos BCD (los datos BCD contienen el valor absoluto y el
indicador de acarreo indica el signo) y colocar el resultado en el canal de
resultado R segn la funcin lineal definida por la pendiente (X, Y) y un
desplazamiento. Se especifican la direccin del primer canal que contiene
X, Y, y el desplazamiento para el primer canal de parmetro P1. El signo
del resultado se indica mediante el estado del indicador de acarreo (ON:
negativo, OFF: positivo).
Las siguientes ecuaciones se usan para la conversin.
Y
R= x ((conversin a BCD de S) (conversin a BCD del desplazamiento)
Conversin a BCD de X

La pendiente de la lnea es Y/X.

El desplazamiento y la pendiente pueden ser un valor positivo, 0, o bien un


valor negativo. La utilizacin de una pendiente negativa habilita la inversin
de escala.
El resultado se redondea al entero ms prximo.
El resultado de R ser el valor de conversin absoluto BCD y le signo ser
indicado mediante el indicador de acarreo. Por lo tanto el resultado puede
estar entre 9999 y 9999.
Si el resultado es inferior a 9999, se entregar 9999 como resultado. Si el
resultado es mayor de 9999, se entregar 9999.

763
Instrucciones de control de datos Seccin 3-18

Desplazamiento positivo Desplazamiento negativo


R (BCD con signo) R (BCD con signo)

Y
Desplaza- Y
miento X
X
S (binario con signo) S (binario con signo)
Desplaza-
miento

Desplazamiento de 0000
P1 Desplazamiento (Binario con signo) R (BCD con signo)
P1+1 Y (Binario con signo)
P1+2 X (BCD con signo)

Desplazamiento = Y
0000 hexadecimal.
X
S (binario con signo)

SCL2(486) puede utilizarse para aplicar escala a los resultados de los valores
de conversin de seales analgicas desde Unidades de entrada analgica
de acuerdo a parmetros de escala definidos por el usuario. Por ejemplo, si
una entrada de 1 hasta 5 V a una Unidad de entrada analgica se introduce
en la memoria como 0000 hasta 0FA0 hexadecimal, al valor de la memoria
puede aplicrsele una escala de 100 hasta 200C mediante SCL2(486).
SCL2(486) convierte datos binarios con signo a BCD con signo As, pueden
gestionarse valores negativos directamente para S. El resultado de la
aplicacin de escala a R y el indicador de acarreo tambin pueden usarse
para entregar valores negativos para el resultado de escala.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los contenidos de C+1 (X) son 0000.
error ON si los contenidos de C+2 (Y) no son BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de CY ON si el resultado es negativo.
acarreo OFF si el resultado es cero o positivo.

Precauciones Se producir un error y el indicador de error se pondr en ON si el valor para


X (C+1) es 0000 o si el valor para Y (C+2) no es BCD.
El indicador de igual se pondr en ON cuando los contenidos del canal de
resultado D sean 0000.
El indicador de acarreo se pondr en ON si el valor colocado en el canal de
resultado es negativo.
Ejemplos Aplicacin de escala a entrada analgica de 1 hasta 5 V para convertir a
0 hasta 300
En el siguiente ejemplo se asume que una seal analgica de 1 hasta 5 V se
convierte y se introduce en CIO 0205 como 0000 hasta 0FA0 hexadecimal.
SCL2(486) se utiliza para convertir (escala) el valor de CIO 0205 a un valor
entre 0000 y 0300 BCD.
Cuando CIO 000000 est en ON, a los contenidos de CIO 0205 se les aplica
escala utilizando la funcin lineal definida por X (0FA0), Y (0300) y el
desplazamiento (0). Estos valores estn contenidos en D00100 hasta
D00102, y el resultado se entrega a D00200.
764
Instrucciones de control de datos Seccin 3-18

P1
Contenidos de R (D00200)
R
Desplaza-
P1: miento
P1+1: X
P1+2: Y

Contenidos de S (CIO 0205)

1068Hex
(X)

Aplicacin de escala a entrada analgica de 1 hasta 5 V para convertir a


200 hasta 200
En el siguiente ejemplo se asume que una seal analgica de 1 hasta 5 V se
convierte y se introduce en CIO 2005 como 0000 hasta 0FA0 hexadecimal.
SCL2(486) se utiliza para convertir (escala) el valor de CIO 0205 a un valor
entre 0200 y 0200 BCD.
Cuando CIO 000000 est en ON, a los contenidos de CIO 2005 se les aplica
escala utilizando la funcin lineal definida por X (0FA0), Y (0400) y el
desplazamiento (07D0). Estos valores estn contenidos en D00100 hasta
D00102, y el resultado se entrega a D00200.

P1
Contenidos de R (D00200)
R
Desplaza-
P1: D00100 miento
P1+1: D00101 0 F A 0 X
P1+2: D00102 Y
Desplaza-
miento
07D0
Hexadecimal
0400 (Y)
Contenidos de S (CIO 0200)

0FA0 Hexadecimal (X)

765
Instrucciones de control de datos Seccin 3-18

3-18-9 SCALING 3: SCL3(487)


Empleo Convierte datos BCD con signo en datos binarios con signo, de acuerdo con
la funcin lineal especificada. Se puede introducir un desplazamiento cuando
se define la funcin lineal.

Smbolo de diagrama de
SCL3(487)
rels
S S: Canal fuente

P1 P1: Primer canal de parmetro

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SCL3(487)
Se ejecuta una vez en el diferencial ascendente @SCL3(487)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos Los contenidos de los cinco canales que comienzan con el primer canal de
parmetro (P1) se muestran en el siguiente diagrama.
15 0
P1

Desplazamiento de funcin lineal


8000 hasta 7FFF (binario con signo)
15 0
P1+1

X
0001 hasta 9999 (BCD)
15 0
P1+2

Y
8000 hasta 7FFF (binario con signo)
15 0

P1+3

Conversin mxima
8000 hasta 7FFF (binario con signo)
15 0

P1+4

Conversin mnima
8000 hasta 7FFF (binario con signo)

Nota P1 hasta P1+4 deben estar en el mismo rea.

766
Instrucciones de control de datos Seccin 3-18

Especificaciones del
operando rea S P1 R
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6139 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta
W511 W507 W511
rea de bit en Espera H000 hasta H511 H000 hasta H507 H000 hasta H511
rea Bit Auxiliar A000 a A447 A000 hasta A443 A448 hasta A959
A448 hasta A959 A448 hasta A955
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4091 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4091 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32763 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32763 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32763 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SCL3(487) se utiliza para convertir los datos BCD con signo (los datos BCD
contienen el valor absoluto y el indicador de acarreo indica el signo)
contenidos en el canal fuente S a datos binarios con signo y colocar el
resultado en el canal de resultado R segn la funcin lineal definida por la
pendiente (X, Y) y un desplazamiento. Los valores de conversin mximo y
mnimo tambin se especifican. Se especifican la direccin del primer canal
que contiene X, Y, el desplazamiento, la conversin mxima y la
conversin mnima para el primer canal de parmetro P1.
El signo del resultado se indica mediante el estado del indicador de acarreo
(ON: negativo, OFF: positivo). Use STC(040) y CLC(041) para poner el
indicador de acarreo en ON y OFF.
Las siguientes ecuaciones se usan para la conversin.
Y
R = Conversin a x ((Conversin a binario de S)+(Desplazamiento))
binario de
La pendiente de la lnea es Y/X.

El desplazamiento y la pendiente pueden ser un valor positivo, 0, o bien un


valor negativo. La utilizacin de una pendiente negativa habilita la inversin
de escala.
El resultado se redondea al entero ms prximo.
767
Instrucciones de control de datos Seccin 3-18

El valor de origen de S se trata como un valor BCD absoluto y el signo se


indica mediante el indicador de acarreo. Por lo tanto el valor de origen puede
estar entre 9999 y 9999.
Si el resultado es menor que el valor de conversin mnimo se entregar el
valor de conversin mnimo como resultado. Si el resultado es mayor que el
valor de conversin mximo se entregar el valor de conversin mximo.
Desplazamiento positivo Desplazamiento negativo

R (binario con signo) R (binario con signo)


Conversin Conversin
mx. mx.

Y Y

X X
Desplaza- S (BCD con signo)
Conversin miento Desplaza-
mn. miento
S (BCD con signo)
Conversin mn.

Desplazamiento de 0000
R (binario con signo)
Conversin
mx.

X
S (BCD con signo)
Conversin mn.

SCL3(487) se utiliza para convertir datos mediante una escala definida por el
usuario a datos binarios con signo para Unidades de salida analgicas. Por
ejemplo SCL3(487) puede convertir de 0 hasta 200 C en de 0000 hasta
0FA0 (hexadecimal) y entregar una seal de salida analgica de 1 hasta 5 V
desde la Unidad de salida analgica.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los contenidos de S no son BCD.
error ON si los contenidos de C+1 (X) no estn entre 0001 y
9999 BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0.
igual OFF en el resto de los casos.
Indicador de N ON cuando el MSB de R (el resultado) es 1.
negativo OFF en el resto de los casos.

Precauciones Se producir un error y el indicador de error se pondr en ON si los


contenidos de S no son BCD o si el valor para X (C+1) no est entre 0001 y
9999 BCD.
El indicador de igual se pondr en ON cuando los contenidos del canal de
resultado D sean 0000.
El indicador de negativo se pondr en ON si el MSB del resultado de R es 1,
es decir, si el resultado es negativo.

Ejemplos Cuando a un valor de 0 hasta 200 se le aplica escala para convertirlo en una
seal analgica (1 hasta 5 V, por ejemplo), un valor BCD con signo de 0000
768
Instrucciones de control de datos Seccin 3-18

hasta 0200 se convierte (escala) a valor binario con signo de 0000 hasta
0FA0 para una Unidad de salida analgica. Cuando CIO 000000 se pone en
ON en el siguiente ejemplo, a los contenidos de D00000 se les aplica escala
utilizando la funcin lineal definida por X (0200), Y (0FA0) y el
desplazamiento (0). Estos valores estn contenidos en de D00100 hasta
D00102. El signo del valor BCD de D00000 es indicado por el indicador de
acarreo. El resultado se entrega a CIO 2011.

P1
R
Contenidos de R (2011, binarios con signo) P1: Desplazamiento
P1+1: X
P1+2: Y
P1+3: Conversin
P1+4: Conversin mn.

Contenidos de S (D00000, BCD con signo)

X (0200)

3-18-10 AVERAGE: AVG(195)


Empleo Calcula el valor medio de un canal de entrada para el nmero especificado de
ciclos.

Smbolo de diagrama de AVG(195)


rels
S S: Canal fuente

N N: Nmero de ciclos

R R: Canal de resultado

R+1: Primer canal de rea de trabajo


Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON AVG(195)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
No se admite OK OK OK

Operandos N: Nmero de ciclos


El nmero de ciclos debe estar entre 0001 y 0040 hexadecimal (0 hasta 64
ciclos).
R: Canal de resultado y R+1: Primer canal de rea de trabajo
R contendr el valor medio despus del nmero de ciclos especificado. R+1
proporciona informacin sobre el proceso de clculo de la media y R+2 hasta
R+N+1 contienen los valores previos de S como se muestra en el siguiente
diagrama.

769
Instrucciones de control de datos Seccin 3-18

R: Media
R+1: Informacin de procesamiento
15 14 0

R+1

Usado por el sistema.


Indicador vlido de media
OFF: No vlido (AVG(195) an no ha sido ejecutado el nmero de ciclos especificado).
ON: Vlido.

R+2: Valor previo #1

R+N+1: Valor previo #N

Nota R hasta R+N+1 deben estar en el mismo rea.

Especificaciones del
operando rea S N R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #0001 hasta ---
#FFFF #0040
(Binario) (Binario)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15

Descripcin Para los primeros N1 ciclos cuando la condicin de ejecucin est en ON,
AVG(195) escribe los valores de S por orden en los canales empezando por
R+2. El puntero de valor previo (bits 00 hasta 07 de R+1) aumenta cada vez
que se escribe un valor. Hasta que se escribe el valor N, los contenidos de S
se entregarn sin cambios a R y el indicador de valor medio (bit 15 de R+1)
se mantendr en OFF.
Cuando el valor N se escribe en R+N+1, se calcular la media de todos los
valores que han sido almacenados, la media se entregar a R como valor
binario sin signo, y el indicador de valor medio (bit 15 de R+1) se pondr en
ON. Para todos los siguientes ciclos, el valor de R se actualizar para los
valores N ms actuales de S.

770
Instrucciones de control de datos Seccin 3-18

El valor mximo de N es 64.


El puntero de valor previo se resetear a 0 despus de que hayan sido
escritos N1 valores.
El valor medio entregado a R se redondear al entero ms prximo.
S: Canal fuente

N: Nmero de ciclos

R+1 Puntero
Indicador vlido de media Media
R+2
S Ciclo 1
R+3
S Ciclo 2
N valores

S Ciclo N
R+N+1

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el contenido de N es 0.
error OFF en el resto de los casos.

Precauciones Los contenidos del primer canal de rea de trabajo (D+1) se resetean a 0000
cada vez que la condicin de ejecucin canbia de OFF a ON.
Los contenidos del primer canal de rea de trabajo (D+1) no se resetearn a
0000 la primera vez que el programa se ejecute al inicio de la operacin. Si
AVG(195) debe ejecutarse en el primer scan del programa, borre el primer
canal de rea de trabajo del programa.
Si N (nmero de ciclos) contiene 0000, se producir un error y el indicador de
error se pondr en ON.
Cuando CIO 000000 est en ON en el siguiente ejemplo, los contenidos de
D00100 se almacenarn una vez por scan para el nmero de scans
especificado en D00200. Los contenidos se almacenarn en orden en los
diez canales desde CIO 0302 hasta CIO 0311. La media de los contenidos de
estos diez canales se colocar en CIO 0300 y posteriormente el bit 15 de CIO
0301 se pondr en ON.

771
Instrucciones de control de datos Seccin 3-18

S: D00100

S
N N: D00200 (10 veces)
R

R: CIO 0300

Puntero
R+1: CIO 0301
Indicador vlido de media Media

R+2: CIO 0302 S, scan 1

R+3: CIO 0303 S, scan 2

R+11: CIO 0311 S, scan n

Ejemplos En el siguiente ejemplo el contenido de CIO 0040 se configura como #0000 y


posteriormente aumenta en 1 cada ciclo. En los dos primeros ciclos,
AVG(195) desplaza el contenido de CIO 0040 a D01002 y D01003. Los
contenidos de D01001 tambin cambiarn (lo que puede utilizarse para
confirmar que los resultados de AVG(195) han cambiado). El el tercer y
posteriores ciclos AVG(195) calcula el valor medio de los contenidos de
D01002 hasta D01004 y escribe ese valor medio en D01000.

@ MOV

1er ciclo 2o ciclo 3er ciclo 4o ciclo


CIO 0040 0000 0001 0002 0003

D01000 0000 0001 0001 0002 Media


D01001 0001 0002 8000 8001 Puntero
D01002 0000 0000 0000 0003 3 valores previos de IR 40
D01003 --- 0001 0001 0001
D01004 --- --- 0002 0002

772
Subrutinas Seccin 3-19

3-19 Subrutinas
3-19-1 SUBROUTINE CALL: SBS(091)
Empleo Llama a la subrutina con el nmero de subrutina especificado y ejecuta dicho
programa.

Smbolo de diagrama de
rels SBS(091)

N N: Nmero de subrutina

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SBS(091)
Se ejecuta una vez en el diferencial ascendente @SBS(091)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de subrutina


Especifica el nmero de subrutina entre 0 y 1023 decimal.
Nota Para las CPUs CJ1M-CPU11 y CJ1M-CPU21, el nmero de subrutina debe
estar en el rango entre &0 y &255 decimal.

Especificaciones del
operando rea N
rea CIO ---
rea de Trabajo ---
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes 0 hasta 1023 (decimal) (ver nota).
Registros de datos ---
Registros de ndice ---
Direccionamiento ---
indirecto utilizando
registros de ndice

Nota Para CPUs CJ1M-CPU11 y CJ1M-CPU21, el rango es desde &0 hasta &255
decimal.

Descripcin SBS(091) llama la subrutina con el nmero de subrutina especificado. La


subrutina es la seccin de programa comprendida entre SBN(092) y

773
Subrutinas Seccin 3-19

RET(093). Una vez terminada la subrutina, la ejecucin del programa


contina con la siguiente instruccin despus de SBS(091).
Condicin de ejecucin ON

Programa
principal

Programa de
subrutina
(SBN(092) a
RET(093))

Fin del programa

Las subrutinas pueden anidarse hasta 16 niveles. Se llama anidamiento a


cuando se llama a otra subrutina desde un programa de subrutina, tal y como
se muestra en el siguiente ejemplo, en el que se anida en 3 niveles.
SBN 10 SBN 11 SBN 12

SBN 11 SBS 12

RET RET RET

774
Subrutinas Seccin 3-19

Condicin de ejecucin ON

Programa

Programa Condicin de
de ejecucin ON
subrutina
n

Anidamiento
de
dos niveles

Programa
de
subrutina
m

Fin del programa

Nota Puede llamarse a una subrutina ms de una vez en un programa.

Subrutinas y Tenga en cuenta las siguientes precauciones cuando utilice instrucciones de


diferenciacin diferencial (DIFU(013), DIFU(014), o instrucciones de diferencial ascendente
/ descendente) en subrutinas.
La operacin de instrucciones de diferencial en una subrutina es impredecible
si se ejecuta una subrutina ms de una vez en el mismo ciclo. En el siguiente
ejemplo, se ejecuta la subrutina 0001 cuando CIO 000000 est en ON y
CIO 000100 se pone en ON mediante DIFU(013) cuando CIO 000001 ha
cambiado de OFF a ON. Si CIO 000001 est en ON en el mismo ciclo, se
ejecutar la subrutina 0001 de nuevo, pero esta vez DIFU(013) pondr
CIO 000100 en OFF sin comprobar el estado de CIO 000001.

1 1

3
1
5

1
Subrutina
0001 4 La subrutina se
ejecuta de nuevo.

775
Subrutinas Seccin 3-19

Por otro lado, la salida de una instruccin de diferencial (DIFU(013) o


DIFD(014)) se mantendr en ON si la instruccin ha sido ejecutada y la salida
ha sido puesta en ON pero no se ha llamado a la misma subrutina una
segunda vez.

1
1
3

1
La subrutina no se ejecuta
en los siguientes ciclos.

000100
2

En el siguiente ejemplo, se ejecuta la subrutina 0001 si CIO 000000 est en


ON. La salida CIO 000100 se pone en ON mediante DIFU(013) cuando
CIO 000001 ha cambiado de OFF a ON. Si CIO 000000 est en OFF en el
siguiente ciclo, la subrutina 0001 no se ejecutar de nuevo y la salida
CIO 000100 permanecer en ON.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el anidamiento excede de 16 niveles.
error ON si el nmero de subrutina especificado no existe.
ON si una subrutina se llama a s misma.
ON si se llama a una subrutina que est siendo
ejecutada.
ON si la subrutina especificada no est definida en la
tarea actual.
OFF en el resto de los casos.

Precauciones SBS(091) y la correspondiente SBN(092) deben programarse en la misma


tarea. Se producir un error si la correspondiente SBN(092) no est en la
tarea.
SBS(091) se tratar como NOP(000) cuando est dentro de una seccin de
programa bloqueada por IL(002) y ILC(003).
Cuando se ejecuta SBS(091) en los siguientes casos, no se llamar
realmente a la subrutina y el indicador de error se pondr en ON:
1,2,3... 1. La subrutina especificada no est definida en la tarea actual.
2. La subrutina se llama a s misma.
3. El anidamiento de la subrutina excede de 16 niveles.
4. La subrutina especificada est siendo ejecutada.

Ejemplos Ejemplo 1: Subrutinas secuenciales (sin anidamiento)


Cuando CIO 000000 est en ON en el siguiente ejemplo, se ejecuta la
subrutina 1 y la ejecucin del programa vuelve a la siguiente instruccin
despus de SBS(091). El resto del programa principal (hasta la instruccin
justo antes de SBN(092) 1) se ejecuta.

776
Subrutinas Seccin 3-19

1
CIO 000000 ON
Programa principal

Subrutina 1 Orden de ejecucin


Programa de 2 ASB
subrutina: S
AB

Ejemplo 2: Subrutinas secuenciales (sin anidamiento)


Cuando CIO 000000 est en ON en el siguiente ejemplo, se ejecuta la
subrutina 1 y la ejecucin del programa vuelve a la siguiente instruccin
despus de SBS(091) 1. Cuando CIO 000001 est en ON, se ejecuta la
subrutina 2 y la ejecucin del programa vuelve a la siguiente instruccin
despus de SBS(091) 2.

777
Subrutinas Seccin 3-19

1
CIO 000000 ON

Programa principal
3

CIO 000001 ON

Orden de ejecucin
2 AS1BS2C
AS1BC

ABS2C

ABC
Subrutinas

Fin del programa

Ejemplo 3: Subrutinas anidadas


Cuando CIO 000000 est en ON en el siguiente ejemplo, se ejecuta la
subrutina 1. Si CIO 000001 est en ON, se ejecuta la subrutina 2 desde la
subrutina 1 y la ejecucin del programa vuelve a la siguiente instruccin
despus de SBS(091) 2 cuando se completa la subrutina 2. La ejecucin de
la subrutina 1 contina y la ejecucin del programa vuelve a la siguiente
instruccin despus de SBS(091) 1 cuando se completa la subrutina 1.

778
Subrutinas Seccin 3-19

1
CIO 000000 ON

1
Orden de ejecucin
AS1-1S2S1-2B
2 Subrutina 1
AS1-1S1-2B
CIO 000001 ON AB

AB
2

3
Subrutina 2

3-19-2 MACRO: MCRO(099)


Empleo Llama a la subrutina con el nmero de subrutina especificado y ejecuta dicho
programa utilizando los parmetros de entrada de S a S+3 y los parmetros
de salida de D a D+3.

Smbolo de diagrama de
rels MCRO(099)

N N: Nmero de subrutina

S S: Primer canal de parmetro de entrada

D D: Primer canal de parmetro de salida

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MCRO(099)
Se ejecuta una vez en el diferencial ascendente @MCRO(099)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

779
Subrutinas Seccin 3-19

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de subrutina


Especifica el nmero de subrutina entre 0 y 1023 decimal.
Nota Para las CPUs CJ1M-CPU11 y CJ1M-CPU21, el nmero de subrutina debe
estar en el rango entre 0 y 255 decimal.

Especificaciones del
operando rea N S D
rea CIO --- CIO 0000 hasta CIO 6140
rea de Trabajo --- W000 hasta W508
rea de bit en Espera --- H000 hasta H508
rea Bit Auxiliar --- A000 hasta A444 A448 hasta A956
A448 hasta A956
rea Temporizador --- T0000 hasta T4092
rea Contador --- C0000 hasta C4092
rea DM --- D00000 hasta D32764
rea EM sin banco --- E00000 hasta E32764
rea EM con Banco --- En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes 0 hasta 1023 ---
(decimal) (ver
nota).
Registros de datos ---
Registros de ndice ---
Direccionamiento --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048
registros de ndice hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta IR15,
IR0+(++) hasta IR015+(++)
,( )IR0 hasta, ( )IR15

Nota Para CPUs CJ1M-CPU11 y CJ1M-CPU21, el rango es desde 0 hasta 255


decimal.

Descripcin MCRO(099) llama la subrutina con el nmero de subrutina especificado al


igual que SBS(091). Al contrario que en caso de SBS(091), los operandos S y
D de MCRO(099) pueden usarse para cambiar las direcciones de bit y canal
de la subrutina, aunque la estructura de la subrutina sea constante.
Cuando se ejecuta MCRO(099), se copian los contenidos de S hasta S+3 en
A600 hasta A603 (entradas del rea de macro) y la subrutina especificada se
ejecuta. Cuando se completa la subrutina, los contenidos de A604 hasta
A607 (salidas del rea de macro) se copian en D hasta D+3 y la ejecucin del
programa contina hasta la siguiente instruccin despus de MCRO(099).

780
Subrutinas Seccin 3-19

MCRO(099)

Ejecucin de
subrutina entre
SBN(092) y
RET(093).

MCRO(099)

La subrutina utiliza A600 hasta


A603 como entradas y A604
hasta A607 como salidas.

MCRO(099) puede utilizarse para consolidar dos o ms subrutinas con la


misma estructura pero distintas direcciones de entrada y salida en un nico
programa de subrutina. Cuando se ejecuta MCRO(099), los datos de entrada
y salida especificados se transfieren a la subrutina especificada.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el anidamiento excede de 16 niveles.
error ON si el nmero de subrutina especificado no existe.
ON si una subrutina se llama a s misma.
ON si se llama a una subrutina que est siendo
ejecutada.
ON si la subrutina especificada no est definida en la
tarea actual.
OFF en el resto de los casos.

La siguiente tabla muestra los canales relevantes del rea auxiliar.


Nombre Direccin Operacin
Canales de entrada A600 Cuando se ejecuta MCRO(099) los cuatro
del rea de macro hasta canales desde S hasta S+3 se copian en A600
A603 hasta A603. Estos canales de entrada se pasan a
la subrutina.
Canales de entrada A604 Despus de que la subrutina especificada en
del rea de macro hasta MCRO(099) haya sido ejecutada, los datos de
A607 salida de estos canales de salida se copian en de
D hasta D+3.

Precauciones Los cuatro canales de datos de entrada (canales o bits) de A600 hasta A603
y los cuatro canales de datos de salida (canales o bits) de A604 hasta A607
deben utilizarse en la subrutina llamada por MCRO(099). No es posible pasar
ms de cuatro canales de datos.
Es posible anidar instrucciones MCRO(099), pero los datos de los canales de
entrada y salida del rea de macro (A600 hasta A607) deben memorizarse
antes de llamar a otra subrutina porque todas las instrucciones MCRO(099)
usan los mismos 8 canales.
Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, dos instrucciones
MCRO(099) pasan diferentes datos de entrada y salida a la subrutina 1.
1,2,3... 1. La primera instruccin MCRO(099) pasa los datos de entrada de
CIO 0100 hasta CIO 0103 y ejecuta la subrutina. Cuando se completa la
subrutina, los datos de salida se almacenan en CIO 0300 hasta
CIO 0303.

781
Subrutinas Seccin 3-19

2. La segunda instruccin MCRO(099) pasa los datos de entrada de


CIO 0200 hasta CIO 0203 y ejecuta la subrutina. Cuando se completa la
subrutina, los datos de salida se almacenan en CIO 0400 hasta
CIO 0403.

Los datos de entrada


se pasan cuando se Canales de entrada
llama a la subrutina. del rea de macro

Entrada
1
Ejecucin de
la subrutina 1

Salida
Los datos de salida se
pasan cuando se vuelve Canales de salida
Subrutina 1
de la subrutina. del rea de macro

D: 0300 A604
D+1: 0301 A605
D+2: 0302 A606
D+3: 0303 A607

La segunda instruccin MCRO(099) opera de la misma manera, pero los


datos de entrada de CIO 0200 hasta CIO 0203 se pasan a de A600 hasta
A603 y los datos de salida de A604 hasta A607 se pasan a CIO 0400 hasta
CIO 0403.

Slo las
direcciones
son distintas.

782
Subrutinas Seccin 3-19

3-19-3 SUBROUTINE ENTRY: SBN(092)


Empleo Indica el principio del programa de subrutina con el nmero de subrutina
especificado. Se usa en combinacin con RET(093) para definir una regin
de subrutina.

Smbolo de diagrama de
rels SBN(092)
N N: Nmero de subrutina

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SBN(092)
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite No se admite OK OK

Operandos N: Nmero de subrutina


Especifica el nmero de subrutina entre 0 y 1023 decimal.
Nota Para las CPUs CJ1M-CPU11 y CJ1M-CPU21, el nmero de subrutina debe
estar en el rango entre 0 y 255 decimal.

Especificaciones del
operando rea N
rea CIO ---
rea de Trabajo ---
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes 0 hasta 1023 (decimal)
Registros de datos ---
Registros de ndice ---
Direccionamiento ---
indirecto utilizando
registros de ndice

Descripcin SBN(092) indica el principio de la subrutina con el nmero de subrutina


especificado. El final de la subrutina es indicado por RET(093).
La regin del programa que comienza con la primera instruccin SBN(092) es
la regin de subrutina. Una subrutina se ejecuta solamente cuando ha sido
llamada por SBS(091) o MCRO(099).

783
Subrutinas Seccin 3-19

SBS MCRO
n n

SBN
n Regin de
subrutina
RET

Precauciones Cuando la subrutina no est siendo ejecutada, las instrucciones se tratan


como NOP(000).
Coloque las subrutinas despus del programa principal y justo antes de la
instruccin END(001) del programa para cada tarea. Si parte del programa
principal se coloca despus de la regin de subrutina, esa seccin del
programa ser ignorada.

OR

Regin de subrutina

Esta parte del


programa no se
ejecutar.

Nota El mtodo de introduccin del nmero de subrutina, N, es distinto en el caso


de CX-Programmer y una consola de programacin. Introduzca #0 hasta
#1023 en CX-Programmer y 0000 hasta 1023 en una consola de
programacin.
Asegrese de colocar cada subrutina en el mismo programa (tarea) que su
correspondiente instruccin SBS(091) o MCRO(099). Una subrutina de una
tarea no puede ser llamada desde otra tarea. Es posible programar una
subrutina dentro de una tarea de interrupcin.

784
Subrutinas Seccin 3-19

No se admite OK
Tarea 1 Tarea

Tarea 2

Las instrucciones de paso, STEP(008) y SNXT(009) no pueden utilizarse en


subrutinas.

No se
admite

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, se ejecuta la


subrutina 10 y la ejecucin del programa vuelve a la siguiente instruccin
despus de SBS(091) o MCRO(099) que ha llamado a la subrutina.

OR
#10 #10

#10
Subrutina 10

785
Subrutinas Seccin 3-19

3-19-4 SUBROUTINE RETURN: RET(093)


Empleo Indica el final del programa de subrutina. Se usa en combinacin con
SBN(092) para definir una regin de subrutina.

Smbolo de diagrama de
rels RET(093)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RET(093)
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite No se admite OK OK

Descripcin RET(093) indica el final de una subrutina y SBN(092) indica el comienzo de


una subrutina. Consulte en 3-19-3 SUBROUTINE ENTRY: SBN(092) informa-
cin ms detallada acerca de la operacin de las subrutinas.
Cuando la ejecucin del programa alcanza RET(093), vuelve automtica-
mente a la siguiente instruccin despus de la instruccin SBS(091) o
MCRO(099) que ha llamado a la subrutina. Cuando la subrutina ha sido
llamada por MCRO(099), los datos de salida de A604 hasta A607 se escriben
en D hasta D+3 antes de volver a la ejecucin del programa.

Precauciones Cuando la subrutina no est siendo ejecutada, las instrucciones se tratan


como NOP(000).

Ejemplo En 3-19-3 SUBROUTINE ENTRY: SBN(092) encontrar ejemplos sobre la


operacin de RET(093).

3-19-5 GLOBAL SUBROUTINE CALL: GSBS(750)


Empleo Llama a la subrutina global con el nmero de subrutina especificado y ejecuta
dicho programa. Puede llamarse a la misma subrutina global desde dos o
ms tareas.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
GSBS(750) se utiliza en combinacin con GSBN(751) y GRET(752), las
instrucciones GLOBAL SUBROUTINE ENTRY y GLOBAL SUBROUTINE
RETURN.

Smbolo de diagrama de
GSBS(750)
rels N: Nmero de subrutina global
N

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON GSBS(750)
Se ejecuta una vez en el diferencial ascendente @GSBS(750)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

786
Subrutinas Seccin 3-19

Operandos N: Nmero de subrutina global


Especifica el nmero de subrutina global entre 0 y 1023 decimal.
Nota Para las CPUs CJ1M-CPU11 y CJ1M-CPU21, el nmero de subrutina debe
estar en el rango entre 0 y 255 decimal.

Especificaciones del
operando rea N
rea CIO ---
rea de Trabajo ---
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes 0 hasta 1023 (decimal) (ver nota).
Registros de datos ---
Registros de ndice ---
Direccionamiento ---
indirecto utilizando
registros de ndice

Nota Para CPUs CJ1M-CPU11 y CJ1M-CPU21, el rango es desde 0 hasta 255


decimal.

Descripcin GSBS(750) llama a la subrutina global con el nmero de subrutina global


especificado. La subrutina global es la seccin de programa comprendida
entre GSBN(751) y GRET(752). Una vez terminada la subrutina global, la
ejecucin del programa contina con la siguiente instruccin despus de
GSBS(750).
La instruccin puede escribirse en varias tareas con el mismo nmero de
subrutina global para llamar a ese programa desde tareas diferentes. El
programa puede modularizarse convirtiendo subrutinas globales en
subrutinas estndar comunes a varias tareas.
La regin de subrutina global (entre GSBN(751) y GRET(752)) debe definirse
en la tarea de interrupcin 0. Si se define en otra tarea se producir un error y
el indicador de error se pondr en ON cuando se ejecute la instruccin
GSBS(750).
La instruccin GSBS(750) puede escribirse en tareas cclicas (incluyendo
tareas cclicas adicionales) y en tareas de interrupcin.

787
Subrutinas Seccin 3-19

Tarea cclica o de Tarea cclica o de Condicin de Condicin de


interrupcin interrupcin ejecucin ON ejecucin ON
000000 000001
GSBS GSBS
n n
Programa
principal B C
B C

Tarea de interrupcin 0

GSBN
n Programa de
subrutina global
(GSBN(751) hasta
GRET(752))
A A A

GRET

END

Pueden definirse varias regiones de subrutina global (GSBN(751) hasta


GRET(752)) en una tarea de interrupcin 0.

788
Subrutinas Seccin 3-19

Tarea cclica o de interrupcin Condicin de


ejecucin ON
000000
GSBS
n

B
B

Condicin de
000001 ejecucin ON
GSBS
m

D D

END

Tarea de interrupcin 0

GSBN
n
A

GRET
Funciones de
subrutina divididas GSBN
por tarea. m

C C

GRET

END

Una instruccin SBS(091) o GSBS(750) puede escribirse en una regin de


subrutina (SBN(092) hasta RET(093)) o en una regin de subrutina global
(GSBN(751) hasta GRET(752)) para anidar subrutinas. Las subrutinas
pueden anidarse hasta 16 niveles.
Tarea de interrupcin 0
GSBN 10 GSBN 11 GSBN 12
hasta hasta hasta
GSBS 11 GSBS 12 GRET
hasta hasta
GRET GRET

Subrutinas globales y Tenga en cuenta las siguientes precauciones cuando utilice instrucciones de
diferenciacin diferencial (DIFU(013), DIFU(014), o instrucciones de diferencial ascendente
/ descendente) en subrutinas.
La operacin de instrucciones de diferencial en una subrutina global es
impredecible si se ejecuta una subrutina ms de una vez en el mismo ciclo.
En el siguiente ejemplo, se ejecuta la subrutina global 0001 cuando
CIO 000000 est en ON y CIO 000100 se pone en ON mediante DIFU(013)

789
Subrutinas Seccin 3-19

cuando CIO 000001 ha cambiado de OFF a ON. Si CIO 000001 est en ON


en el mismo ciclo, se ejecutar la subrutina global 0001 de nuevo, pero esta
vez DIFU(013) no detectar el flanco ascendente de CIO 000001 y
CIO 000100 se pondr en OFF.
Tarea cclica 1

000000
GSBS
1

Tarea cclica 2

000001
GSBS
1

Tarea de interrupcin 0

GSBN
1
000001 Ejecutada
de nuevo
DIFU
000100

GRET

Por otro lado, la salida de una instruccin de diferencial (DIFU(013) o


DIFD(014)) se mantendr en ON si la instruccin ha sido ejecutada y la salida
ha sido puesta en ON pero no se ha llamado a la misma subrutina global una
segunda vez.
En el siguiente ejemplo, se ejecuta la subrutina global 0001 si CIO 000000
est en ON. La salida CIO 000100 se pone en ON mediante DIFU(013)
cuando CIO 000001 ha cambiado de OFF a ON. Si CIO 000000 est en
OFF en el siguiente ciclo, la subrutina 0001 no se ejecutar de nuevo y la
salida CIO 000100 permanecer en ON.

790
Subrutinas Seccin 3-19

Tarea cclica 1

000000
GSBS
1

Tarea de La subrutina no se
ejecuta en los
siguientes ciclos.
GSBN
1
000001
DIFU
000100

GRET

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el anidamiento excede de 16 niveles (contando
error subrutinas normales y globales).
ON si la subrutina global especificada no existe.
ON si una subrutina global se llama a s misma.
ON si se llama a una subrutina global que est siendo
ejecutada.
ON si la subrutina especificada no est definida en la
tarea de interrupcin 0.
OFF en el resto de los casos.

Precauciones La instruccin GLOBAL SUBROUTINE ENTRY, GSBN(751), y la instruccin


correspondiente GLOBAL SUBROUTINE RETURN, GRET(752) deben
programarse en la tarea de interrupcin 0. Si la regin de subrutina global no
est programada en la tarea de interrupcin 0, se producir un error y el
indicador de error se pondr en ON cuando se ejecute la instruccin
GSBS(750).
La instruccin normal SUBROUTINE CALL, SBS(091), no puede llamar a
una regin de subrutina global (GSBN(751) hasta GRET(752)).
GSBS(750) no se ejecutar cuando est en una seccin de programa
bloqueada por IL(002) y ILC(003), as que los bloqueos no estn permitidos
en las regiones de subrutina global.
Puede llamarse a la misma regin de subrutina global (GSBN(751) hasta
GRET(752)) ms de una vez.
Cuando se ejecuta GSBS(750) en los siguientes casos, no se llamar
realmente a la subrutina global y el indicador de error se pondr en ON:
1,2,3... 1. La subrutina global especificada no est definida.
2. El anidamiento de subrutinas (contando subrutinas normales y globales)
excede de 16 niveles.
3. La subrutina global se llama a s misma.
4. La subrutina global especificada est siendo ejecutada.
5. La subrutina global especificada no est definida en la tarea de
interrupcin 0.
791
Subrutinas Seccin 3-19

Ejemplos Ejemplo 1
Cuando CIO 000000 est en ON en el siguiente ejemplo, se ejecuta la
subrutina global 1 y la ejecucin del programa vuelve a la siguiente
instruccin despus de GSBS(750).
Estado de CIO 000000 Orden de ejecucin del programa
ON ASB
OFF AB

Cuando CIO 000001 est en ON en el siguiente ejemplo, se ejecuta la


subrutina global 1 y la ejecucin del programa vuelve a la siguiente
instruccin despus de GSBS(750).
Estado de CIO 000000 Orden de ejecucin del programa
ON CSD
OFF CD

Tarea cclica o de interrupcin Tarea cclica o de interrupcin

A C

000000 000001
GSBS CIO 000000 ON GSBS
CIO 000000 ON
n n

B D

END END

Tarea de interrupcin 0

GSBN
1

Programa de
subrutina
global S

GRET

END

Ejemplo 2
Pueden programarse dos o ms programas de subrutina global en la tarea de
interrupcin 0. En este caso, la tarea de interrupcin 0 puede dividirse y
utilizarse como la tarea de funcin de subrutina.

792
Subrutinas Seccin 3-19

Cuando CIO 000000 est en ON, se ejecuta el programa de subrutina


global 1.
Cuando CIO 000001 est en ON, se ejecuta el programa de subrutina global 2.
Tarea cclica o de interrupcin

000000
GSBS
CIO 000000 ON
1

000001
GSBS CIO 000001 CIO 000001 ON
OFF
2

Programa de
subrutina S

END

Es posible depurar problemas en


tareas particulares utilizando
Tarea de interrupcin 0 subrutinas normales de la tarea
local solamente, as como
subrutinas globales que se
comparten con otras tareas.
GSBN
1

Programa de
subrutina global S1

GRET

GSBN
2

Programa de
subrutina global S2

GRET

793
Subrutinas Seccin 3-19

3-19-6 GLOBAL SUBROUTINE ENTRY: GSBN(751)


Empleo Indica el principio del programa de subrutina global con el nmero de
subrutina especificado. Se usa en combinacin con GRET(752) para definir
una regin de subrutina global.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
GSBN(751) se utiliza en combinacin con GSBS(750) y GRET(752), las
instrucciones GLOBAL SUBROUTINE CALL y GLOBAL SUBROUTINE
RETURN.

Smbolo de diagrama de
rels GSBN(751)
N: Nmero de subrutina global
N

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON GSBN(751)
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite No se admite --- OK

Operandos N: Nmero de subrutina global


Especifica el nmero de subrutina global entre 0 y 1023 decimal.
Nota Para las CPUs CJ1M-CPU11 y CJ1M-CPU21, el nmero de subrutina debe
estar en el rango entre 0 y 255 decimal.

Especificaciones del
operando rea N
rea CIO ---
rea de Trabajo ---
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes 0 hasta 1023 (decimal) (ver nota).
Registros de datos ---
Registros de ndice ---
Direccionamiento ---
indirecto utilizando
registros de ndice

Nota Para CPUs CJ1M-CPU11 y CJ1M-CPU21, el rango es desde 0 hasta 255


decimal.

Descripcin GSBN(751) indica el principio de la subrutina global con el nmero de


subrutina especificado. El final de la subrutina es indicado por GRET(752).

794
Subrutinas Seccin 3-19

La regin del programa que comienza con la primera instruccin GSBN(751)


es la regin de subrutina. Una subrutina se ejecuta solamente cuando ha sido
llamada por GSBS(750).
La regin de subrutina global (entre GSBN(751) y GRET(752)) debe definirse
en la tarea de interrupcin 0. Si se define en otra tarea se producir un error y
el indicador de error se pondr en ON cuando se ejecute la instruccin
GSBS(750).
La instruccin GSBS(750) puede escribirse en tareas cclicas (incluyendo
tareas cclicas adicionales) y en tareas de interrupcin.
Tarea cclica o de interrupcin

GSBS
n

Tarea de

GSBN
n

Regin de
subrutina
global

GRET

END

Precauciones Cuando la subrutina no est siendo ejecutada, las instrucciones se tratan


como NOP(000).
Coloque la regin de subrutina global (GSBN(751) hasta GRET(752)) en
la tarea de interrupcin 0 justo antes de la instruccin END(001). Cuando
se utilizan dos o ms subrutinas globales, agrpelas en la tarea de
interrupcin 0 despus del final del programa principal. Si parte del
programa principal se coloca despus de la regin de subrutina global,
esa seccin del programa ser ignorada.
Tarea de interrupcin 1

GSBN
n Regin de
subrutina global

GRET
Esta parte del
programa no se
ejecutar.
END

795
Subrutinas Seccin 3-19

El mtodo de introduccin del nmero de subrutina global, N, es distinto


en el caso de CX-Programmer y una consola de programacin.
Introduzca #0 hasta #1023 en CX-Programmer y 0000 hasta 1023 en una
consola de programacin.
Coloque siempre las subrutinas globales en la tarea de interrupcin 0. Se
producir un error si se llama a una subrutina global y la subrutina no
est en la tarea de interrupcin 0.
No se admite OK

Tarea cclica 1 Tarea cclica 1

GSBS GSBS
n n

END END

Tarea cclica 2 Tarea de interrupcin 0

GSBN GSBN
n n

GRET GRET

END END

Las instrucciones de paso, STEP(008) y SNXT(009) no pueden utilizarse


en subrutinas globales.

GSBN

SNXT

No se admite
STEP

GRET

796
Subrutinas Seccin 3-19

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, se ejecuta la


subrutina global 10 y la ejecucin del programa vuelve a la siguiente
instruccin despus de GSBS(750) que ha llamado a la subrutina.
Tarea cclica o de interrupcin

000000
GSBS
#10

Tarea de

GSBN
#10 Regin de
subrutina global

GRET

END

3-19-7 GLOBAL SUBROUTINE RETURN: GRET(752)


Empleo Indica el final del programa de subrutina. Se usa en combinacin con
GSBN(751) para definir una regin de subrutina.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.
GRET(752) se utiliza en combinacin con GSBS(750) y GSBN(751), las
instrucciones GLOBAL SUBROUTINE CALL y GLOBAL SUBROUTINE
ENTRY.

Smbolo de diagrama de
GRET(752)
rels

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON GRET(752)
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite No se admite No se admite OK

Descripcin GRET(752) indica el final de una subrutina global y GSBN(751) indica el


principio de una subrutina global. Consulte en 3-19-6 GLOBAL
SUBROUTINE ENTRY: GSBN(751) informacin ms detallada acerca de la
operacin de las subrutinas globales.
Cuando la ejecucin del programa alcanza GRET(752), vuelve autom-
ticamente a la siguiente instruccin despus de la instruccin GSBS(750) que
ha llamado a la subrutina global.

Precauciones Cuando la subrutina no est siendo ejecutada, las instrucciones se tratan


como NOP(000).

Ejemplo En 3-19-6 GLOBAL SUBROUTINE ENTRY: GSBN(751) encontrar ejemplos


sobre la operacin de GRET(752).

797
Instrucciones de control de interrupcin Seccin 3-20

3-20 Instrucciones de control de interrupcin


3-20-1 SET INTERRUPT MASK: MSKS(690)
Empleo Tanto las tareas de interrupcin de E/S como las programadas se
enmascaran (inhabilitan) cuando el PLC entra en modo RUN. MSKS(690) se
puede utilizar para desenmascarar o enmascarar las interrupciones de E/S y
seleccionar los intervalos de tiempo para interrupciones programadas.
Las CPUs CS1D no admiten la instruccin MSKS(690).

Smbolo de diagrama de
rels MSKS(690)

N N: Identificador
de interrupcin
S S: Datos de interrupcin

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MSKS(690)
Se ejecuta una vez en el diferencial ascendente @MSKS(690)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos CS1W-INT01/CJ1W-INT01
Especificacin del procesamiento de interrupcin de E/S y del
procesamiento de enmascaramiento
Operando Contenido
N Especifique el nmero de unidad de la Unidad de entrada de
interrupcin
0: Unidad nmero 0
1: Unidad nmero 1
S Mscara de interrupcin.
Configrela como de 0000 hasta FFFF hexadecimal (16 bits por
Unidad)
Los bits individuales significan lo siguiente.
0: Habilita la interrupcin
1: Enmascara la interrupcin

Nota 1. Las Unidades CS1W-INT01 y C200HS-INT01 no pueden utilizarse al


mismo tiempo.
2. Todas las entradas de interrupcin que hayan sido detectadas se
eliminarn cuando se elimine la mscara de interrupcin.
3. La Unidad de entrada de interrupcin CJ1W-INT01 no puede usarse con
una CPU CJ1. Adems, las tareas de interrupcin de E/S no pueden
ejecutarse.
La relacin entre los nmeros de Unidad de entrada de interrupcin y los
nmeros de la tarea de interrupcin se muestra en la siguiente tabla.
Nmero Nmeros de la tarea de interrupcin
de unidad
0 100 hasta 115 Los bits 00 hasta 15 de S se corresponden con las
1 116 hasta 131 entradas de tareas de interrupcin.

798
Instrucciones de control de interrupcin Seccin 3-20

Especificacin de la designacin de flanco ascendente/descendente


para procesamiento de interrupcin de E/S
Operando Contenido
N Especifique el nmero de unidad de la Unidad de entrada de
interrupcin
2: Unidad nmero 0
3: Unidad nmero 1
S Especifique el flanco ascendente o descendente de la seal de
entrada de interrupcin.
Configrela como de 0000 hasta FFFF hexadecimal (16 bits por
Unidad)
Los bits individuales significan lo siguiente.
0: Flanco ascendente
1: Flanco descendente

La relacin entre los nmeros de Unidad de entrada de interrupcin y los


nmeros de tarea de interrupcin se muestra en la siguiente tabla.
Nmero Nmeros de la tarea de interrupcin
de unidad
2 100 hasta 115 Los bits 00 hasta 15 de S se corresponden con las
3 116 hasta 131 entradas de tareas de interrupcin.

Nota Todas las entradas de interrupcin que hayan sido detectadas se eliminarn
cuando se modifique la designacin de flanco ascendente/descendente.
C200HS-INT01
Especificacin del procesamiento de interrupcin de E/S y del
procesamiento de enmascaramiento
Operando Contenido
N Especifique el nmero de unidad de la Unidad de entrada de
interrupcin
0: Unidad nmero 0
1: Unidad nmero 1
2: Unidad nmero 2
3: Unidad nmero 3
S Mscara de interrupcin.
Configrela como de 0000 hasta 00FF hexadecimal (8 bits por Unidad)
Los bits individuales significan lo siguiente.
0: Habilita la interrupcin
1: Enmascara la interrupcin

Nota 1. Las Unidades CS1W-INT01 y C200HS-INT01 no pueden utilizarse al


mismo tiempo.
2. Todas las entradas de interrupcin que hayan sido detectadas se
eliminarn cuando se elimine la mscara de interrupcin.
La relacin entre los nmeros de Unidad de entrada de interrupcin y los
nmeros de tarea de interrupcin se muestra en la siguiente tabla.
Nmero Nmeros de la tarea de interrupcin
de unidad
0 100 hasta 107 Los bits 00 hasta 07 de S se corresponden con las
1 108 hasta 115 entradas de tareas de interrupcin.
2 116 hasta 123
3 124 hasta 131

Nota Todas las entradas de interrupcin que hayan sido detectadas se eliminarn
cuando se modifique la designacin de flanco ascendente/descendente.

799
Instrucciones de control de interrupcin Seccin 3-20

Entradas de interrupcin incorporadas en las CPUs CJ1M


Especificacin del procesamiento de interrupcin de E/S y del
procesamiento de enmascaramiento
Operando Contenido
N Especifique el nmero de entrada de interrupcin.
6: Entrada de interrupcin 0
7: Entrada de interrupcin 1
8: Entrada de interrupcin 2
9: Entrada de interrupcin 3
S Mscara de interrupcin.
0000 hexadecimal: Interrupcin habilitada (modo directo)
0001 hexadecimal: Interrupcin enmascarada (modo directo)
0002 hexadecimal: Contador de disminucin iniciado e interrupciones
habilitadas (modo contador)
0003 hexadecimal: Contador de aumento iniciado e interrupciones
habilitadas (modo contador)

Nota Todas las entradas de interrupcin que hayan sido detectadas se eliminarn
cuando se elimine la mscara de interrupcin.
La relacin entre los nmeros de entrada de interrupcin y los nmeros de
tarea de interrupcin se muestra en la siguiente tabla.
Nmero de entrada de Nmeros de la tarea de interrupcin
interrupcin:
Entrada de interrupcin 0 140 CIO 296000
Entrada de interrupcin 1 141 CIO 296001
Entrada de interrupcin 2 142 CIO 296002
Entrada de interrupcin 3 143 CIO 296003

Especificacin de la designacin de flanco ascendente/descendente


para procesamiento de interrupcin de E/S
Operando Contenido
N Especifique el nmero de entrada de interrupcin.
10: Entrada de interrupcin 0
11: Entrada de interrupcin 1
12: Entrada de interrupcin 2
13: Entrada de interrupcin 3
S Especifique el flanco ascendente o descendente de la seal de
entrada de interrupcin.
0000 hexadecimal: Flanco ascendente
0001 hexadecimal: Flanco descendente

La relacin entre los nmeros de entrada de interrupcin y los nmeros de


tarea de interrupcin se muestra en la siguiente tabla.
Nmero de entrada de Nmeros de la tarea de interrupcin
interrupcin:
Entrada de interrupcin 0 140 CIO 296000
Entrada de interrupcin 1 141 CIO 296001
Entrada de interrupcin 2 142 CIO 296002
Entrada de interrupcin 3 143 CIO 296003

Nota Todas las entradas de interrupcin que hayan sido detectadas se eliminarn
cuando se modifique la designacin de flanco ascendente/descendente.

800
Instrucciones de control de interrupcin Seccin 3-20

Especificacin de interrupciones programadas


Operando Contenido
N Especifique el nmero de interrupcin programada.
4: Tarea de interrupcin 2
5: Tarea de interrupcin 3
S 0000: Inhabilitar interrupcin programada.
0001 hasta 270F hexadecimal:
Intervalo de interrupcin programada (1 hasta 9999)
Nota La unidad para el intervalo de interrupcin programada
puede ajustarse como 10 ms o 1,0 ms en las
configuraciones de interrupcin del PLC. Para las CPUs
CJ1M tambin es posible una unidad de 0,1 ms, y el
rango de configuracin para ella ser desde 0005 hasta
270F hexadecimal (5 hasta 9999).

Reseteado e inicio de interrupciones programadas (Slo CJ1M)


Operando Contenido
N Especifique el nmero de interrupcin programada.
14: Interrupcin programada 0 (tarea de interrupcin 2)
15: Interrupcin programada 1 (tarea de interrupcin 3)
S Inhabilitar interrupcin programada 0000 hexadecimal
Ajuste el Para 10 a 99.990 ms o 0001 hasta 270F
tiempo de bien 1 a 9.999 ms (es hexadecimal
interrupcin decir, cuando la unidad
programada es 10 ms 1 ms)
y el inicio de Para 0,5 a 999,9 ms (es 0005 hasta 270F
interrupcin decir, cuando la unidad hexadecimal
programada es 0,1 ms)
(Las configuraciones 0001
hasta 0004 hexadecimal no
pueden usarse; se producir-
a un error de instruccin).

Especificaciones del
operando rea N S
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 a A447
A448 hasta A959
rea Temporizador --- T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ 32767
indirectas en binario @ E00000 hasta @ 32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores especificados
Registros de datos --- DR0 hasta DR15

801
Instrucciones de control de interrupcin Seccin 3-20

rea N S
Registros de ndice ---
Direccionamiento --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047, IR0 hasta
registros de ndice 2048 hasta +2047, IR15
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15
Descripcin MSKS(690) controla las interrupciones de E/S y las interrupciones programa-
das. El valor de N identifica la interrupcin.
Unidad N Significado
CS1W-INT01 o 01 N se corresponde con la tarea de entrada de inter-
CJ1W-IN01 rupcin. Los bits 0 hasta 7 de S se corresponden con
C200HS-INT01 0a3 los nmeros de entrada de interrupcin de la
correspondiente Unidad de interrupcin. MSKS(690)
Entradas de 6a9
enmascara (inhabilita) la entrada de interrupcin
interrupcin
cuando el correspondiente bit est en ON y
incorporadas en las
desenmascara (habilita) la entrada de interrupcin
CPUs CJ1M
cuando el correspondiente bit est en OFF.

Unidad N Significado
CS1W-INT01 o 23 N se corresponde con la tarea de entrada de
CJ1W-IN01 interrupcin. S especifica el flanco ascendente
Entradas de interrupcin 10 a 13 o descendente como disparo. (La configuracin
incorporadas en las predeterminada es flanco ascendente).
CPUs CJ1M

Nota 1. MSKS(690) puede utilizarse para habilitar una tarea de interrupcin de E/


S en particular solamente en un ciclo y inhabilitar la tarea en los otros
ciclos.
2. Los nmeros de unidad se asignan a Unidades de entrada de interrupcin
en el orden en que estn montadas, de izquierda a derecha.
N=45
Los valores 4 y 5 se corresponden con las tareas de interrupcin 2 y 3.
Cuando N es 4 5, el contenido de S bien inhabilita la tarea de interrupcin
(S=0000) o configura la tarea de interrupcin con el intervalo de tiempo
especificado. Las unidades para el intervalo de interrupcin programada
pueden ajustarse como 10 ms, 1,0 ms 0,1 ms en la configuracin del PLC.
N = 14 15 (slo CPUs CJ1M)
Cuando N es 14 15, el tiempo de interrupcin programada especificado en
S se configura para la tarea de interrupcin programada especificada por N, y
el temporizador interno para la interrupcin programada se resetea. El tiempo
para la primera interrupcin para inicio de reset se mantiene.
Nota 1. La unidad de tiempo para la interrupcin programada se ajusta en la
configuracin del PLC.
2. Asegrese de que el intervalo de tiempo es ms largo que el tiempo
requerido para ejecutar la tarea de interrupcin programada.
3. En el caso de interrupciones programadas, MSKS(690) se utiliza
solamente para ajustar el intervalo de interrupcin programada y no
configura el tiempo para la primera interrupcin programada. Para
controlar con precisin el tiempo para la primera interrupcin y el intervalo
de interrupcin, programe CLI(691) para ajustar el tiempo para la primera
interrupcin programada justo antes de programar MSKS(690). No
obstante, si MSKS(690) se utiliza para reiniciar una interrupcin
programada para una CPU CJ1M, el tiempo para la primera interrupcin
programada ser preciso incluso si no se utiliza CLI(691).
A440 contiene el tiempo de procesamiento mximo para tareas de interrup-
cin y el byte de la derecha de A441 contiene el nmero de la tarea de
interrupcin de la tarea con el tiempo de procesamiento ms largo.

802
Instrucciones de control de interrupcin Seccin 3-20

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si N no est dentro del rango especificado de 0 hasta 5 (0
de error hasta 15 para Entradas de interrupcin incorporadas de CJ1M).
ON si S no est dentro del rango especificado de 0000 hasta
00FF hexadecimal cuando N es 0 hasta 3 (cuando se utiliza una
C200HS-INT01 y se especifica procesamiento de interrupcin
de E/S).
ON si S no est dentro del rango especificado de 0000 hasta
0003 hexadecimal (cuando se utiliza una CJ1M con entrada de
interrupcin incorporada y se especifica procesamiento de
interrupcin de E/S).
ON si S no est dentro del rango especificado de 0000 hasta
270F hexadecimal cuando N es 4 5 (0005 hasta 270F
hexadecimal para una CJ1M con entrada de interrupcin
incorporada con una unidad de 0,1 ms).
ON si la instruccin fue ejecutada en una tarea de interrupcin.
OFF en el resto de los casos.
Indicador = OFF
de igual
Indicador N OFF
de negativo

La siguiente tabla muestra los indicadores relevantes del rea auxiliar.


Nombre Direccin Operacin
Indicador de error de A40213 Se pondr en ON en los siguientes casos:
tarea de interrupcin 1) Se ha ejecutado una tarea de interrupcin ms
larga de 10 ms durante el refresco de E/S con una
Unidad de E/S especial C200H o un bastidor esclavo
de E/S remoto. (Slo serie CS)
2) IORF(097) se ha ejecutado en una tarea de
interrupcin sin inhabilitar el refresco cclico de
E/S especial.
Indicador de causa A42615 Indica si se ha producido un error de tarea de
de error de tarea de interrupcin 1 2.
interrupcin
Nmero de tarea de A42600 Para error 1:
error de tarea de hasta Indica el nmero de tarea de interrupcin.
interrupcin A42611 Para error 2:
Indica el nmero de unidad de la Unidad de E/S
especial en la que se ha producido el refresco de E/S
mltiple.
Precauciones Slo se soportan las entradas de interrupcin desde Unidades de entrada de
interrupcin normales de la serie CS/CJ y Unidades de entrada de
interrupcin C200H para tareas de interrupcin. Las entradas de interrupcin
desde tarjetas internas y Unidades de E/S especiales no se soportan.
Monte la Unidad de entrada de interrupcin en el bastidor de la CPU. Si se
utiliza una PCU CJ1-H, monte la Unidad en las ranuras 0 a 4, y si se utiliza
una PCU CJ1M, en las ranuras 0 a 2. No ser posible iniciar la tarea de
interrupcin de E/S a no ser que la Unidad de entrada de interrupcin est
montada en una de estas ranuras.
Los canales se asignan a Unidades de entrada de interrupcin en el orden en
que estn montadas, de izquierda a derecha.
Las interrupciones tienen diferentes niveles de prioridad. A una interrupcin
de alimentacin en OFF se le da la mxima prioridad, seguida por
interrupciones de E/S, interrupciones externas, y finalmente interrupciones
programadas. A las interrupciones de E/S con nmero bajo se les da
prioridad sobre las interrupciones de E/S con nmero alto.
Asegrese de que la tarea de interrupcin no requiere ms de 10 ms si se
conecta una Unidad de E/S especial C200H o un bastidor esclavo de E/S
remoto SYSMAC BUS. Si se ejecuta una tarea de interrupcin durante ms
de 10 ms durante el refresco de E/S con una Unidad de E/S especial o un
bastidor esclavo se producir un error no fatal y el indicador de error de tarea
de interrupcin (A40213) se pondr en ON.
Cuando IORF(097) se est ejecutamdo en una tarea de interrupcin para
refrescar E/S en una Unidad de E/S especial, debe inhabilitarse el refresco
803
Instrucciones de control de interrupcin Seccin 3-20

cclico con esa Unidad de E/S especial en la configuracin del PLC. Si no se


inhabilita el refresco cclico con la Unidad de E/S especial, es posible que se
ejecute IORF(097) durante el refresco cclico, lo que resultara en un error no
fatal de refresco duplicado que causara que el indicador de error de tarea de
interrupcin (A40213) se ponga en ON.
Ejemplos Ejemplos para CS1W-INT01/CJ1W-INT01
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MSKS(690)
desenmascara (habilita) las entradas de interrupcin de la Unidad de entrada
de interrupcin 0.
000000
MSKS 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D00100 0 0 1 1 1 1 1 1 0 0 1 0 0 1 1 1
N 0

S D00100
3 F 2 7

0: Habilitada
1: Enmascarada

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MSKS(690)


ajusta las designaciones de flanco ascendente/descendente para la Unidad
de entrada de interrupcin 0.
000001
MSKS 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D00101 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0
N 2

S D00101
0 5 0 2
0: Flanco ascendente
1: Flanco descendente

Ejemplo para C200HS-INT01


Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MSKS(690)
desenmascara (habilita) las entradas de interrupcin 1, 3 y 5 de la Unidad de
entrada de interrupcin 2.

Ejemplo de interrupciones programadas


Cuando CIO 000001 est en ON en el siguiente ejemplo, MSKS(690)
configura un intervalo de tiempo de 10 segundos para la interrupcin
programada 2. (En este caso las unidades de intervalo de tiempo
programado se configuran como 10 ms en la configuracin del PLC).

3-20-2 READ INTERRUPT MASK: MSKR(692)


Empleo Lee las selecciones de procesamiento de interrupcin actual que se
realizaron con MSKS(690).
Las CPUs CS1D no admiten la instruccin MSKR(692).
Smbolo de diagrama de
rels MSKR(692)

N N: Identificador de interrupcin

D D: Canal de destino

804
Instrucciones de control de interrupcin Seccin 3-20

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MSKR(692)
Se ejecuta una vez en el diferencial ascendente @MSKR(692)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos CS1W-INT01/CJ1W-INT01
Lectura de mscaras
Operando Contenido
N Especifique el nmero de unidad de la Unidad de entrada de
interrupcin
0:Unidad nmero 0
1:Unidad nmero 1
D Estado de mscara de interrupcin.
0000 hasta FFFF hexadecimal (16 bits por Unidad)
Los bits individuales significan lo siguiente.
0: Interrupcin habilitada
1: Interrupcin enmascarada

La relacin entre los nmeros de Unidad de entrada de interrupcin y los


nmeros de tarea de interrupcin se muestra en la siguiente tabla.
Nmero Nmeros de la tarea de interrupcin
de unidad
0 100 hasta 115 Los bits 00 hasta 15 de S se corresponden con las
1 116 hasta 131 entradas de tareas de interrupcin.

Lectura de designaciones de flanco ascendente/descendente


Operando Contenido
N Especifique el nmero de unidad de la Unidad de entrada de
interrupcin.
2: Unidad nmero 0
3: Unidad nmero 1
D El flanco ascendente o descendente de la seal de entrada de
interrupcin.
0000 hasta FFFF hexadecimal (16 bits por Unidad)
Los bits individuales significan lo siguiente.
0: Flanco ascendente
1: Flanco descendente

Nota 1. Las Unidades CS1W-INT01 y C200HS-INT01 no pueden utilizarse al


mismo tiempo.
2. La Unidad de entrada de interrupcin CJ1W-INT01 no puede usarse con
una CPU CJ1. Adems, las tareas de interrupcin de E/S no pueden
ejecutarse.
La relacin entre los nmeros de Unidad de entrada de interrupcin y los
nmeros de tarea de interrupcin se muestra en la siguiente tabla.
Nmero Nmeros de la tarea de interrupcin
de unidad
2 100 hasta 115 Los bits 00 hasta 15 de S se corresponden con las
3 116 hasta 131 entradas de tareas de interrupcin.

805
Instrucciones de control de interrupcin Seccin 3-20

C200HS-INT01
Lectura de mscaras
Operando Contenido
N Especifique el nmero de unidad de la Unidad de entrada de
interrupcin
0: Unidad nmero 0
1: Unidad nmero 1
2: Unidad nmero 2
3: Unidad nmero 3
D Estado de mscara de interrupcin.
0000 hasta 00FF hexadecimal (8 bits por Unidad)
Los bits individuales significan lo siguiente.
0: Interrupcin habilitada
1: Interrupcin enmascarada

Nota Las Unidades CS1W-INT01 y C200HS-INT01 no pueden utilizarse al mismo


tiempo.
La relacin entre los nmeros de Unidad de entrada de interrupcin y los
nmeros de tarea de interrupcin se muestra en la siguiente tabla.
Nmero Nmeros de la tarea de interrupcin
de unidad
0 100 hasta 107 Los bits 00 hasta 07 de S se corresponden con las
1 108 hasta 115 entradas de tareas de interrupcin.
2 116 hasta 123
3 124 hasta 131

Entradas de interrupcin incorporadas en las CPUs CJ1M


Lectura de mscaras
Operando Contenido
N Especifique el nmero de entrada de interrupcin.
6: Entrada de interrupcin 0
7: Entrada de interrupcin 1
8: Entrada de interrupcin 2
9: Entrada de interrupcin 3
D Mscara de interrupcin.
0000 hexadecimal: Interrupcin habilitada (modo directo)
0001 hexadecimal: Interrupcin enmascarada (modo directo)
0002 hexadecimal: Contador de disminucin iniciado e interrupciones
habilitadas (modo contador)
0003 hexadecimal: Contador de aumento iniciado e interrupciones
habilitadas (modo contador)

La relacin entre los nmeros de entrada de interrupcin y los nmeros de


tarea de interrupcin se muestra en la siguiente tabla.
Nmero de entrada de Nmeros de la tarea de interrupcin
interrupcin:
Entrada de interrupcin 0 140 CIO 296000
Entrada de interrupcin 1 141 CIO 296001
Entrada de interrupcin 2 142 CIO 296002
Entrada de interrupcin 3 143 CIO 296003

806
Instrucciones de control de interrupcin Seccin 3-20

Lectura de la designacin de flanco ascendente/descendente para


procesamiento de interrupcin de E/S
Operando Contenido
N Especifique el nmero de entrada de interrupcin.
10: Entrada de interrupcin 0
11: Entrada de interrupcin 1
12: Entrada de interrupcin 2
13: Entrada de interrupcin 3
D Especifique el flanco ascendente o descendente de la seal de
entrada de interrupcin.
0000 hexadecimal: Flanco ascendente
0001 hexadecimal: Flanco descendente

La relacin entre los nmeros de entrada de interrupcin y los nmeros de


tarea de interrupcin se muestra en la siguiente tabla.
Nmero de entrada de Nmeros de la tarea de interrupcin
interrupcin:
Entrada de interrupcin 0 140 CIO 296000
Entrada de interrupcin 1 141 CIO 296001
Entrada de interrupcin 2 142 CIO 296002
Entrada de interrupcin 3 143 CIO 296003

Lectura de intervalo de interrupcin programado


Operando Contenido
N Especifique el nmero de interrupcin programada.
4: Interrupcin programada 0 (tarea de interrupcin 2)
5: Interrupcin programada 1 (tarea de interrupcin 3)
D 0000: Interrupcin programada inhabilitada.
0001 hasta 270F hexadecimal:
Intervalo de interrupcin programada (1 hasta 9999)
Nota La unidad para el intervalo de interrupcin programada
puede ajustarse como 10 ms o 1,0 ms en las configuracio-
nes de interrupcin del PLC. Para la CJ1M tambin puede
seleccionarse 0,1 ms, en cuyo caso el tiempo ser de
0005 hasta 270F hexadecimal (5 hasta 9999).

Lectura de valor presente de interrupcin programada


Operando Contenido
N Especifique el nmero de interrupcin programada.
14: Interrupcin programada 0 (tarea de interrupcin 2)
15: Interrupcin programada 1 (tarea de interrupcin 3)
D Tiempo desde el inicio del 0000 hasta 270F hexadecimal
procesamiento de la Nota: Incluso si la interrupcin
interrupcin programada o programada est detenida en
tiempo desde la interrupcin este momento, puede leerse el
programada anterior. tiempo que ha transcurrido
unidad de 10 ms: 0 a 99.990 antes de que se detuviera. Si la
unidad de 1 ms: 0 a 9.999 interrupcin programada an
unidad de 0,1 ms: 0,0 hasta no se ha iniciado, la respuesta
999,9 (slo CJ1M) ser 0000 hexadecimal.

Especificaciones del
operando rea N D
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A448 hasta A959
rea Temporizador --- T0000 hasta T4095

807
Instrucciones de control de interrupcin Seccin 3-20

rea N D
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores ---
especificados
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047, IR0 hasta
registros de ndice 2048 hasta +2047, IR15
DR0 hasta DR15, IR0 hasta
IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15
Descripcin MSKR(692) lee las configuraciones de interrupcin actuales configuradas
con MSKS(690).
N = 0 1 (0 hasta 3 para C200HS-INT01)
Los valores 0 y 1 (0 hasta 3) se corresponden con las Unidades de entrada
de interrupcin 0 y 1 (0 hasta 3).
Los bits 0 hasta 7 de D correspondern a los nmeros de entrada de interrup-
cin 0 hasta 7 de la Unidad especificada. Si un bit est en ON, la entrada de
interrupcin correspondiente se enmascara (inhabilita); si un bit est en OFF,
la entrada de interrupcin correspondiente se desenmascara (habilita).
N = 2 3 (slo CS1W-INT01/CJ1W-INT01/CJ1M con entradas de interrup-
cin incorporadas)
Los valores 2 y 3 se corresponden con las Unidades de entrada de interrup-
cin 0 y 1. Las designaciones de flanco ascendente/descendente para las
entradas de interrupcin de la Unidad de entrada de interrupcin especificada
con N se entregan a D.
N=45
Los valores 4 y 5 se corresponden con las tareas de interrupcin 2 y 3.
Cuando N es 4 5, el contenido de D muestra el intervalo de tiempo que ha
sido configurado para esa interrupcin. Una configuracin de 0000 indica que
la interrupcin ha sido inhabilitada. Las unidades para el intervalo de interrup-
cin programada pueden ajustarse en la configuracin del PLC (00: 10 ms,
01: 1,0 ms), as que el rango para el intervalo de tiempo es de 10 ms hasta
99,99 s o de 1 ms hasta 9,999 s.
N = 14 15
Cuando N es 14 15, el PV del temporizador de interrupcin programada para
la tarea de interrupcin programada especificada por N se almacena en D.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no est dentro del rango especificado de 0
error hasta 5 (0 hasta 15 para CJ1M).
OFF en el resto de los casos.

808
Instrucciones de control de interrupcin Seccin 3-20

Precauciones MSKR(692) puede ejecutarse en el programa principal o en tareas de


interrupcin.
Ejemplos Ejemplo para CS1W-INT01/CJ1W-INT01
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MSKR(692) lee
el estado de mscara actual de la Unidad de entrada de interrupcin 2 y lo
almacena en D00100.
000000
MSKR 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D00100 1 1 1 1 0 1 0 1 1 1 1 1 0 0 1 0
N 0

S D00100
F 5 A 2

0: Interrupcin habilitada
1: Interrupcin enmascarada

Cuando CIO 000001 se pone en ON en el siguiente ejemplo, MSKS(690) lee


las designaciones de flanco ascendente/descendente para la Unidad de
entrada de interrupcin 0 y lo almacena en D00101.
000001
MSKR 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D00101 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 1
N 2

S D00101
0 3 1 9
0: Flanco ascendente
1: Flanco descendente

Ejemplo para C200H-INT01


Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MSKR(692) lee
el estado de mscara actual de la Unidad de entrada de interrupcin 2. En
este caso las entradas de interrupcin 1, 3 y 5 estn habilitadas.

Ejemplo de interrupciones programadas


Cuando CIO 000100 se pone en ON en el siguiente ejemplo, MSKR(692) lee
la configuracin para la interrupcin programada 2. En este caso el intervalo
de tiempo est configurado como 1.000 (3E8 hexadecimal), lo que equivale a
10 s si las unidades de intervalo de tiempo programado estn ajustadas
como 10 ms en la configuracin del PLC.

3-20-3 CLEAR INTERRUPT: CLI(691)


Empleo Borra o retiene las entradas de interrupcin registradas para interrupciones
de E/S o selecciona el tiempo para la primera de las interrupciones
programadas.
Las CPUs CS1D no admiten la instruccin CLI(691).
Smbolo de diagrama de
rels CLI(691)

N N: Identificador de interrupcin

S S: Datos de interrupcin

809
Instrucciones de control de interrupcin Seccin 3-20

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CLI(691)
Se ejecuta una vez en el diferencial @CLI(691)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos Entradas de interrupcin para CS1W-INT01/CJ1W-INT01


Operando Contenido
N Especifique el nmero de unidad de la Unidad de entrada de
interrupcin
0: Unidad nmero 0
1: Unidad nmero 1
S Especificacin de borrar mscara de interrupcin (16 bits/
Unidad)
0000 hasta FFFF hexadecimal
Significado de cada bit
0: Interrupcin de entrada registrada retenida
1: Interrupcin de entrada registrada borrada

Nota 1. Las Unidades CS1W-INT01 y C200HS-INT01 no pueden utilizarse al


mismo tiempo.
2. La Unidad de entrada de interrupcin CJ1W-INT01 no puede usarse con
una CPU CJ1. Adems, las tareas de interrupcin de E/S no pueden
ejecutarse.
La relacin entre los nmeros de Unidad de entrada de interrupcin y los
nmeros de tarea de interrupcin se muestra en la siguiente tabla.
Nmero Nmeros de la tarea de interrupcin
de unidad
0 100 hasta 115 Los bits 00 hasta 15 de S se corresponden con las
1 116 hasta 131 entradas de tareas de interrupcin.

Entradas de E/S para C200H-INT01


Operando Contenido
N Especifique el nmero de unidad de la Unidad de entrada de
interrupcin
0: Unidad nmero 0
1: Unidad nmero 1
2: Unidad nmero 2
3: Unidad nmero 3
S Especificacin de borrar mscara de interrupcin (8 bits/Unidad)
0000 hasta 00FF hexadecimal
Significado de cada bit
0: Interrupcin de entrada registrada retenida
1: Interrupcin de entrada registrada borrada

Nota Las Unidades CS1W-INT01 y C200HS-INT01 no pueden utilizarse al mismo


tiempo.

810
Instrucciones de control de interrupcin Seccin 3-20

La relacin entre los nmeros de Unidad de entrada de interrupcin y los


nmeros de tarea de interrupcin se muestra en la siguiente tabla.
Nmero Nmeros de la tarea de interrupcin
de unidad
0 100 hasta 107 Los bits 00 hasta 07 de S se corresponden con las
1 108 hasta 115 entradas de tareas de interrupcin.
2 116 hasta 123
3 124 hasta 131

Entradas de interrupcin incorporadas en las CPUs CJ1M


Operando Contenido
N Especifique el nmero de entrada de interrupcin.
6: Entrada de interrupcin 0
7: Entrada de interrupcin 1
8: Entrada de interrupcin 2
9: Entrada de interrupcin 3
S Especificacin de borrado de mscara de interrupcin.
0000 hexadecimal: Interrupcin de entrada registrada retenida
0001 hexadecimal: Interrupcin de entrada registrada borrada

La relacin entre los nmeros de entrada de interrupcin y los nmeros de


tarea de interrupcin se muestra en la siguiente tabla.
Nmero de entrada de Nmeros de la tarea de interrupcin
interrupcin:
Entrada de interrupcin 0 140 CIO 296000
Entrada de interrupcin 1 141 CIO 296001
Entrada de interrupcin 2 142 CIO 296002
Entrada de interrupcin 3 143 CIO 296003

Borrado de interrupciones del contador de alta velocidad (slo CJ1M)


Operando Contenido
N Especifique la entrada de contador de alta velocidad.
10: Entrada de contador de alta velocidad 0
11: Entrada de contador de alta velocidad 1
S Especificacin de borrado de mscara de interrupcin.
0000 hexadecimal: Interrupcin de entrada registrada retenida
0001 hexadecimal: Interrupcin de entrada registrada borrada

Configuracin de tiempo para la primera interrupcin programada


Operando Contenido
N Especifique el nmero de interrupcin programada.
4: Interrupcin programada 0 (tarea de interrupcin 2)
5: Interrupcin programada 1 (tarea de interrupcin 3)
S 0000 hasta 270F hexadecimal:
Tiempo para primera interrupcin programada (0 hasta
9999)
Nota La unidad para el intervalo de interrupcin programada
puede ajustarse como 10 ms o 1,0 ms en las
configuraciones de interrupcin del PLC. Para CJ1M,
la unidad tanbin puede ajustarse como 0,1 ms.

Especificaciones del
operando rea N S
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511

811
Instrucciones de control de interrupcin Seccin 3-20

rea N S
rea Bit Auxiliar --- A000 hasta A959
rea Temporizador --- T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- DR0 hasta DR15
Registros de datos Slo valores especificados
Registros de ndice ---
Direccionamiento --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0
registros de ndice hasta 2048 hasta +2047
,IR15
DR0 hasta DR15, IR0 hasta
IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Dependiendo del valor de N, CLI(691) bien borra la interrupcin de E/S


registrada especificada o ajusta el tiempo anterior a la ejecucin de la
primera interrupcin programada. Con la CJ1M, tambin puede utilizarse
para borrar interrupciones para contadores de alta velocidad.
N = 0 1 (0 hasta 3 para C200HS-INT01 o bien 6 hasta 9 para CPUs CJ1M
con entradas de introduccin incorporadas).
Los valores 0 y 1 (0 hasta 3) se corresponden con las Unidades de entrada
de interrupcin 0 y 1 (0 hasta 3).
Los bits 0 hasta 7 de S corresponden a los nmeros de entrada de inter-rup-
cin 0 hasta 7 de la Unidad especificada. CLI(691) borra una entrada de inte-
rrupcin registrada cuando el correspondiente bit de S est en ON y retiene la
entrada de interrupcin registrada cuanso el correspondiente bit est en OFF.
Entrada de Entrada de
interrupcin n interrupcin n

Estado interno Estado


interno

Interrupcin registrada borrada Interrupcin registrada retenida

Si se est ejecutando una tarea de interrupcin de E/S y se recibe una


entrada de interrupcin con un nmero de interrupcin diferente, ese nmero
de interrupcin se registra internamente. Las interrupciones de E/S se
ejecutan posteriormente por orden de prioridad (del nmero ms bajo al ms
alto). CLI(691) puede usarse para borrar esas interrupciones registradas
antes de que sean ejecutadas.
Nota 1. MSKS(690) puede utilizarse para habilitar una tarea de interrupcin de
E/S en particular en un ciclo y inhabilitar la tarea en otros ciclos.

812
Instrucciones de control de interrupcin Seccin 3-20

2. Los nmeros de unidad se asignan a Unidades de entrada de interrupcin


en el orden en que estn montadas, de izquierda a derecha.
N=45
Los valores 4 y 5 se corresponden con las tareas de interrupcin 2 y 3.
Cuando N es 4 5, el contenido de S especifica el intervalo de tiempo para la
primera tarea de interrupcin programada despus de ejecutar MSKS(690).
El intervalo de tiempo puede configurarse desde 0000 hasta 270F (0 hasta
9.999). Las unidades para el intervalo de interrupcin programada se ajustan
en la configuracin del PLC (00: 10 ms, 01: 1,0 ms), as que el rango real para
el intervalo de tiempo es de 10 ms hasta 99,99 s o de 1 ms hasta 9,999 s.
Nota Configure el intervalo de tiempo para la primera interrupcin programada
como 10 ms o ms largo.

MSKS(690)
Ejecucin de tarea de
interrupcin programada.

Tiempo de la primera
interrupcin programada

N = 10 11 (slo CJ1M)
Los valores 10 y 11 corresponden a las interrupciones para los contadores de
alta velocidad y pueden utilizarse para borrar o retener interrupciones para
ellos (para comparacin con objetivos o rangos).

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no est dentro del rango especificado de 0 hasta 5
error (0, 1 4 hasta 11 para CJ1M).
ON si S no est dentro del rango especificado de 0000
hasta 00FF hexadecimal cuando N es 0 hasta 3 (slo para
interrupciones de E/S y C200HS-INT).
ON si S no es 0000 0001 hexadecimal (slo para
interrupciones de contador de alta velocidad y entradas de
introduccin incorporadas de CJ1M).
ON si S no est dentro del rango especificado de 0000
hasta 270F hexadecimal para interrupciones programadas.
OFF en el resto de los casos.

Precauciones No hay lmite para el nmero de entradas de interrupcin que pueden


registrarse. Es posible registrar todas las entradas de interrupcin de E/S,
pero una entrada de interrupcin ser ignorada su ya ha sido registrada.
Adems, la interrupcin registrada no se borra hasta que su tarea de
interrupcin haya sido completada, as que una nueva entrada de interrupcin
se ignorar si se recibe mientras su tarea de interrupcin est siendo
ejecutada.
Slo se soportan las entradas de interrupcin desde Unidades de entrada de
interrupcin normales de la serie CS/CJ y Unidades de entrada de
interrupcin C200H para tareas de interrupcin. Las entradas de interrupcin
desde tarjetas internas y Unidades de E/S especiales no se soportan.
Las interrupciones tienen diferentes niveles de prioridad. A una interrupcin
de alimentacin en OFF se le da la mxima prioridad, seguida por
interrupciones de E/S, interrupciones externas, y finalmente interrupciones
programadas. A las interrupciones de E/S con nmero bajo se les da
prioridad sobre las interrupciones de E/S con nmero alto.
Ejemplos Ejemplos para CS1W-INT01/CJ1W-INT01
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, CLI(691) borra
las interrupciones registradas para las entradas de interrupcin 1, 4 hasta 8,
10, y 12 hasta 15 de la Unidad de entrada de interrupcin 0.

813
Instrucciones de control de interrupcin Seccin 3-20

000000
CL1 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D00100 1 1 1 1 0 1 0 1 1 1 1 1 0 0 1 0
N 0

S D00100
F 5 A 2

0: Interrupcin de entrada registrada retenida


1: Interrupcin de entrada registrada borrada

Ejemplo para C200HS-INT01


Cuando CIO 000000 se pone en ON en el siguiente ejemplo, CLI(691) borra
las interrupciones registradas para las entradas de interrupcin 3 y 6 de la
Unidad de entrada de interrupcin 2.

Ejemplo de configuracin de tiempo para la primera interrupcin


programada
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, CLI(691) ajusta
el tiempo para la primera ejecucin de interrupcin programada entre 2 y 50
segundos.
(En este caso las unidades de intervalo de tiempo programado se ajustan
como 10 ms en la configuracin del PLC).

3-20-4 DISABLE INTERRUPTS: DI(693)


Empleo Inhabilita la ejecucin de todas las tareas de interrupcin excepto la
interrupcin de alimentacin en OFF.
Cuando se utiliza una CPU CS1D para sistema de CPU individual o una CPU
CS1-H, CJ1-H o CJ1M y se inhabilita la tarea de interrupcin de alimentacin
OFF es posible inhabilitar el procesamiento de la interrupcin de alimentacin
en OFF simultneamente.
Smbolo de diagrama de
rels DI(693)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DI(693)
Se ejecuta una vez en el diferencial ascendente @DI(693)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK No se admite
Descripcin DI(693) se ejecuta desde el programa principal para inhabilitar temporal-
mente todas las tareas de interrupcin excepto la de interrupcin de alimenta-
cin en OFF (interrupciones de E/S, interrupciones programadas e
interrupciones externas).
Todas las tareas de interrupcin se inhabilitarn hasta que vuelvan a ser
habilitadas ejecutando EI(694).
814
Instrucciones de control de interrupcin Seccin 3-20

CPUs CS1-H, CJ1-H y CJ1M e interrupciones de alimentacin en OFF


Cuando se utiliza una CPU CS1-H, CJ1-H o CJ1M, el procedimiento de
interrupcin de alimentacin en OFF puede inhabilitarse simultneamente
cuando A503 (la configuracin de inhabilitacin para interrupciones de
alimentacin en OFF) se ajusta como A5A5 hexadecimal. Incluso si se detecta
una interrupcin de alimentacin despus de haber ejecutado DI(693), la CPU
se resetear una vez hayan sido ejecutadas las instrucciones del programa en
orden hasta la instruccin EI(694) o END(001) de la ltima tarea.
Su se habilita la tarea de interrupcin de alimentacin en OFF, la CPU se
resetear despus de la ejecucin de la tarea de interrupcin de alimentacin
en OFF. Encontrar ms detalles en la informacin sobre la tarea de
interrupcin de alimentacin en OFF en el Manual de programacin de las
series CS y CJ.
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si DI(693) se ejecuta desde una tarea de interrupcin.
error OFF en el resto de los casos.
Indicadores y canales El siguiente canal se encuentra en el rea auxiliar.
relacionados Nombre Direccin Contenido
Inhabilitar A530 A5A5 hexadecimal:
configuracin para Habilita la configuracin de inhabilitacin para inte-
interrupciones por rrupciones de alimentacin en OFF. El procesa-
desconexin de miento de alimentacin en OFF (excluyendo la
alimentacin ejecucin de la tarea de interrupcin de alimenta-
cin en OFF) se enmascara entre las instruccio-
nes DI(694) y EI(694), de tal manera que se
ejecutan las instrucciones hasta EI(694).
Precauciones Todas las tareas de interrupcin permanecern inhabilitadas hasta que se
ejecute EI(694).
DI(693) no puede ejecutarse desde una tarea de interrupcin.
DI(693) no puede ejecutarse para ms de una tarea cclica. Para inhabilitar
ms de una tarea de ejecucin cclica, inserte DI(693) en cada tarea cclica.
Las interrupciones que se produzcan mientras se est ejecutando una tarea
de ejecucin cclica se ejecutarn despus de que la tarea de ejecucin
cclica haya sido completada a no ser que se inhabiliten mediante CLI(691)
como se muestra en el siguiente ejemplo.
Cuando se utiliza DI(693) para inhabilitar el procesamiento de interrupcin de
alimentacin en OFF en las CPUs CS1-H, CJ1-H y CJ1M, es posible
inhabilitar el procesamiento mediante las tareas cclicas. (La condicin de
inhabilitacin se libera cuando se hayan completado todas las tareas que se
haban iniciado).
Tarea N 0
DI

La instruccin DI es vlida.

END
Las tareas de interrupcin
se ejecutan bajo
Tarea N 1 condiciones registradas.
DI

La instruccin DI es vlida.

END

Cuando se utiliza una CPU CS1D para sistemas de CPU individual o una
CPU CS1-H, CJ1-H o CJ1M y se inhabilita la tarea de interrupcin de

815
Instrucciones de control de interrupcin Seccin 3-20

alimentacin en OFF y A530 se configura como A5A5 hexadecimal, la CPU


se resetear despus de la ejecucin de EI(694) en caso de que se detecte
una interrupcin de alimentacin durante la ejecucin de las interucciones
entre DI(693) y EI(694).
Tarea N 0

DI

END
Se habilita la mscara del
procesamiento de interrupcin
de alimentacin en OFF.
Tarea N 1

EI

END

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, DI(693) inhabilita


todas las tareas de interrupcin que no sean la tarea de interrupcin de
alimentacin en OFF.
000000 Con CPUs CS1D para sistemas de CPU
individual o CPUs CS1-H, CJ1-H y CJ1M:
El procesamiento de interrupcin de
alimentacin en OFF puede inhabilitarse
al mismo tiempo si la tarea de interrupcin
de alimentacin en OFF se inhabilita.
Inhabilita la ejecucin de todas las
tareas de interrupcin (excepto la
interrupcin de alimentacin en OFF).

3-20-5 ENABLE INTERRUPTS: EI(694)


Empleo Habilita la ejecucin de todas las tareas de interrupcin que se inhabilitaron
con DI(693).
Cuando se utiliza una CPU CS1D para sistema de CPU individual o una CPU
CS1-H, CJ1-H o CJ1M y se inhabilita la tarea de alimentacin en OFF,
EI(694) libera simultneamente el procesamiento de la interrupcin de
alimentacin en OFF inhabilitado.

Smbolo de diagrama de
rels EI(694)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin EI(694)
normalmente ON
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

816
Instrucciones de control de interrupcin Seccin 3-20

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK No se admite

Descripcin EI(694) se ejecuta desde el programa principal para habilitar temporalmente


todas las tareas de interrupcin que fueron inhabilitadas por DI(693). DI(693)
inhabilita todas las interrupciones excepto la interrupcin de alimentacin en
OFF (interrupciones de E/S, interrupciones programadas e interrupciones
externas).
CPUs CS1-H, CJ1-H y CJ1M e interrupciones de alimentacin en OFF
Cuando se utilizan CPUs CS1-H, CJ1-H y CJ1M CPU y se ha inhabilitado el
procesamiento de interrupcin de alimentacin en OFF con DI(693), EI(694)
tambin liberar la retencin del procesamiento de interrupcin de
alimentacin en OFF. Despus de haberse ejecutado DI(593), la CPU no se
resetear aunque se detecte una interrupcin de alimentacin. La CPU se
resetear despus de que todas las instrucciones entre DI(693) y EI(694) se
hayan ejecutado. En 3-20-4 DISABLE INTERRUPTS: DI(693) encontrar
ms detalles sobre la utilizacin de DI(693) para inhabilitar el procesamiento
de interrupcin de alimentacin en OFF.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si EI(694) se ejecuta desde una tarea de interrupcin.
error OFF en el resto de los casos.

Indicadores y canales El siguiente canal se encuentra en el rea auxiliar.


relacionados Nombre Direccin Contenido
Inhabilitar configuracin A530 A5A5 hexadecimal:
para interrupciones por Habilita la configuracin de inhabilitacin
desconexin de para interrupciones de alimentacin en
alimentacin OFF. El procesamiento de alimentacin en
OFF (excluyendo la ejecucin de la tarea
de interrupcin de alimentacin en OFF)
se enmascara entre las instrucciones
DI(694) y EI(694), de tal manera que se
ejecutan las instrucciones hasta EI(694).
Cualquier otro valor:
Inhabilita la mscara de procesamiento de
alimentacin en OFF.

Precauciones EI(694) no requiere condicin de ejecucin. Se ejecuta siempre con una


condicin de ejecucin ON. EI(694) habilita las tareas de interrupcin que
fueron inhabilitadas por DI(693).
No puede desenmascarar interrupciones de E/S que no hayan sido desen-
mascaradas mediante MSKS(690) ni configurar interrupciones programadas
que no hayan sido configuradas mediante MSKS(690).
EI(694) no puede ejecutarse en una tarea de interrupcin.

Ejemplos En el siguiente ejemplo, EI(694) habilita todas las tareas de interrupcin que
fueron inhabilitadas por DI(693).

817
Instrucciones de control de interrupcin Seccin 3-20

Inhabilita la ejecucin de todas las


tareas de interrupcin (excepto la
interrupcin de alimentacin en OFF).

000000

Habilita la ejecucin de todas las


tareas de interrupcin inhabilitadas.

Nota Cuando la tarea de interrupcin de alimentacin en OFF se inhabilita para


una CPU CS1-H, CJ1-H, CJ1M o CS1D para sistema de CPU individual, el
procesamiento de alimentacin en OFF tambin se habilitar simultnea-
mente.
Tarea N 0

DI
Todas las
tareas de
interrupcin
inhabilitadas.
END

Procesamiento
de alimentacin
Tarea N 1 en OFF
inhabilitado.

EI

END

3-20-6 Resumen de control de interrupcin


Las instrucciones de control de interrupcin controlan o leen las
configuraciones para interrupciones de E/S e interrupciones programadas.
(DI(693) y EI(694) controlan la operacin de las interrupciones externas,
interrupciones de E/S e interrupciones programadas).
Las instrucciones que actan sobre interrupciones individuales tienen un
operando, N, que identifica el origen de la interrupcin. Los nmeros 0 hasta
3 indican las Unidades de entrada de interrupcin 0 a 3 y los nmeros 4 y 5
indican las interrupciones programadas 2 y 3.
Procesamiento de interrupcin de E/S (N = 0 hasta 3)
Una interrupcin de E/S es causada por una seal de entrada desde una
Unidad de entrada de interrupcin. Pueden conectarse hasta cuatro
Unidades de entrada de interrupcin al PLC. Los nmeros de unidad 0 hasta
3 se asignan a las unidades basndose en su posicin en el PLC de
izquierda a derecha.

818
Instrucciones de control de interrupcin Seccin 3-20

El siguiente ejemplo de programa demuestra la operacin de MSKS(690) y


CLI(691) cuando se utilizan para controlar interrupciones de E/S.

Operacin de MSKS(690) Tanto las tareas de interrupcin de E/S como las programadas estn enmas-
caradas (inhabilitadas) cuando el PLC se conecta por primera vez.
MSKS(690) se puede utilizar para desenmascarar o enmascarar las interrup-
ciones de E/S y seleccionar los intervalos de tiempo para interrupciones pro-
gramadas.
En este ejemplo, MSKS(690) usa los contenidos de D00100 para desenmas-
carar las entradas de interrupcin 0 hasta 3 y enmascarar las entradas de
interrupcin 4 hasta 7 de la Unidad de entrada de interrupcin 0.
F 0
Entradas de interrupcin de la Unidad 0

Configuraciones de mscara de interrupcin

1=Enmascarar (inhabilitar) 0=Desenmascarar (habilitar)

Cuando la entrada de interrupcin 3 cambia de OFF a ON, la ejecucin del


programa principal se interrumpir y la tarea de interrupcin de E/S nmero 3
(tarea de interrupcin 103) se ejecutar. La ejecucin del programa principal
se reanuda en el momento de interrupcin despus de que la tarea de
interrupcin de E/S nmero 3 haya sido completada.
Tarea de interrupcin de Cuando se reciben simultneamente dos o ms entradas de interrupcin, las
E/S interrupciones se ejecutarn por el orden de sus nmeros de interrupcin,
Niveles de prioridad desde el ms bajo hasta el ms alto (100 hasta 131).
Unidad Tareas de interrupcin
Unidad de entrada de Las entradas 0 hasta 7 se corresponden con las tareas de
interrupcin 0 interrupcin de E/S 100 hasta 107.
Unidad de entrada de Las entradas 0 hasta 7 se corresponden con las tareas de
interrupcin 1 interrupcin de E/S 108 hasta 115.
Unidad de entrada de Las entradas 0 hasta 7 se corresponden con las tareas de
interrupcin 2 interrupcin de E/S 116 hasta 123.
Unidad de entrada de Las entradas 0 hasta 7 se corresponden con las tareas de
interrupcin 3 interrupcin de E/S 124 hasta 131.

Cuando se reciben varias entradas de interrupcin mientras se est ejecu-


tando una tarea de interrupcin, las interrupciones registradas se ejecutarn
por orden de su prioridad despus de completar la tarea de interrupcin.
Si se produce una interrupcin programada, la tarea de interrupcin progra-
mada tomar prioridad sobre las tareas de interrupcin de E/S.

Operacin de CLI(691) Si se recibe una entrada de interrupcin mientras se est ejecutando una
tarea de interrupcin de E/S diferente, el nmero de la entrada de interrup-
cin se registra internamente hasta que la tarea actual y cualquier tarea con
una prioridad ms alta haya sido completada. CLI(691) puede utilizarse para
borrar interrupciones registradas antes de ser ejecutadas, pero no puede
borrar tareas de interrupcin que estn siendo ejecutadas.

819
Instrucciones de control de interrupcin Seccin 3-20

En este ejemplo, CLI(691) usa los contenidos de D00101 para borrar todas
las entradas de interrupcin registradas de la Unidad de entrada de
interrupcin 0 excepto las entradas 0, 2 y 3.
F 2
Entradas de interrupcin de la Unidad 0

Configuraciones de borrado/retencin de interrupcin

1=Borrar entrada registrada 0=Retener entrada registrada

Despus de completar la tarea de interrupcin 3, las interrupciones registra-


das se ejecutan por orden de prioridad. Ya que se ha registrado una entrada
desde la entrada de interrupcin 0, la tarea de interrupcin de E/S nmero 0
(tarea de interrupcin 100) se ejecutar cuando la tarea 3 se haya comple-
tado. La tarea de interrupcin 1 no es retenida por CLI(691), as que esa
entrada se borra.
La entrada de interrupcin1
Entrada de es borrada por CLI(691).
interrupcin 0
Ya registrada, as que la
Entrada de ltima entrada se ignora.
interrupcin 1

Entrada de
interrupcin 2

Interrupciones
registradas

Tarea de
interrupcin de E/S Tarea 3 Tarea 0 Tarea 3

Se ejecuta CLI(691). Las entradas de interrupcin


0 y 3 se retienen y la entrada 1 se borra.
Si las entradas de interrupcin 0 hasta 3 se ponen todas en ON y CLI(691) no
se ejecuta, se registrarn todas las entradas y las tareas de interrupcin se
ejecutarn por orden despus de completarse la tarea de interrupcin 3. (Las
tareas de interrupcin se ejecutan por orden de prioridad, desde el nmero
de interrupcin ms bajo hasta el ms alto).
Tarea de
interrupcin 3
Tarea de
interrupcin 0
Tarea de
interrupcin 1
Tarea de
interrupcin 2
Tarea de
interrupcin 3

Nota 1. No siempre es necesario utilizar CLI(691).


2. Cuando no se ejecuta CLI(691), todas las entradas de interrupcin de E/
S recibidas durante la ejecucin de una tarea de interrupcin sern
registradas. Si se recibe una entrada ya registrada de nuevo, la ltima
entrada se ignorar.
3. Cuando se registran dos o ms entradas de interrupcin de E/S, estas se
ejecutan por orden de prioridad. El orden en que fueron recibidas las
entradas registradas es irrelevante.
Procesamiento de interrupcin programada (N = 4 5)
Una interrupcin programada se repite a los intervalos regulares configura-
dos con MSKS(690) e independientemente de la temporizacin de ciclo del
PLC. Los nmeros N 4 y 5 se corresponden con los nmeros de interrupcin
programada 2 y 3 respectivamente.

820
Instrucciones de control de interrupcin Seccin 3-20

Procesamiento de A continuacin se relacionan las caractersticas principales del procesa-


interrupcin programada miento de interrupcin programada.
1,2,3... 1. Las tareas de interrupcin programada estn enmascaradas (inhabilita-
das) cuando el PLC se conecta por primera vez.
2. Configure el tiempo para la primera interrupcin programada (despus de
ejecutar MSKS(690)) con CLI(691). El tiempo para la primera interrupcin
programada es impredecible si no se configura con CLI(691).
3. Configuracin de intervalo de tiempo programado y procesamiento de in-
terrupcin
Configure el intervalo de tiempo programado con MSKS(690).
Despus de haber ejecutado MSKS(690) y de que haya transcurrido
el tiempo para la primera interrupcin programada (configurado con
CLI(691), la tarea que est siendo procesada se interrumpir y la ta-
rea de interrupcin programada se ejecutar.
Cuando la ejecucin de la tarea de interrupcin programada alcanza
una instruccin END(001), la ejecucin del programa se retomar en
el punto en que se produjo la interrupcin programada.
La ejecucin del programa se interrumpir y la tarea de interrupcin
programada se ejecutar de nuevo cuando el intervalo de tiempo pro-
gramado haya transcurrido. La tarea de interrupcin programada se
ejecutar repetidamente hasta que sea inhabilitada.
4. Inhabilitacin de una interrupcin programada
Una tarea de interrupcin programada puede inhabilitarse configuran-
do el intervalo de tiempo programado como 0000 con MSKS(690).
Cuando habilite de nuevo la tarea de interrupcin programada, aseg-
rese de configurar el tiempo para la primera interrupcin programada
con CLI(691) antes de volver a configurar el intervalo de tiempo pro-
gramado de nuevo con MSKS(690).
Operacin de interrupcin En el siguiente ejemplo las unidades de intervalo de tiempo programado se
programada ajustan como 10 ms en la configuracin del PLC.
Indicador de ciclo
1 ON al inicio

1,2,3... 1. El tiempo para la primera interrupcin programada se ajusta como 20 ms


con CLI(691).
2. El intervalo de tiempo programado se ajusta como 100 ms y la ejecucin
de la interrupcin programada 2 se habilita con MSKS(690).

821
Instrucciones de control de interrupcin Seccin 3-20

3. La interrupcin programada 2 se ejecuta 20 ms despus de la ejecucin


de MSKS(690) y cada 100 ms posteriormente.
4. Despus de comenzar el procesamiento de interrupcin programada, el
tiempo para la siguiente interrupcin programada puede cambiarse con
CLI(690), pero esta configuracin es efectiva solamente una vez.
5. Una vez ha comenzado el procesamiento de interrupcin programada, el in-
tervalo de tiempo programado puede modificarse ejecutando MSKS(690).
En este caso, el intervalo de tiempo se cambia de 100 ms a 200 ms.
6. El procesamiento de interrupcin programada se inhabilita ejecutando
MSKS(690) con un intervalo de tiempo de 0000.
El siguiente diagrama de tiempos muestra la operacin del ejemplo anterior.
1, 2 4 5 6

Ejecucin del
programa
principal 3 3 3 3 3 3 3 3
Ejecucin de tarea
de interrupcin
programada
20 ms 100 ms 100 ms 50 ms 100 ms100 ms 200 ms

Precauciones Asegrese de que el intervalo de tiempo programado es ms largo que el


tiempo requerido para ejecutar la tarea de interrupcin programada. Si el
intervalo de tiempo programado es demasiado corto, la tarea de interrupcin
se ejecutar continuamente y se producir un error de tiempo de ciclo
demasiado largo. (Una tarea de interrupcin programada larga puede afectar
seriamente al tiempo de ejecucin total del programa principal).
La interrupcin programada se ejecuta despus de que el intervalo de tiempo
especificado ms el tiempo de ejecucin para una instruccin). Normalmente
el tiempo requerido para ejecutar una instruccin es insignificante, pero
puede causar errores cuando se utilizan instrucciones que necesitan un
tiempo largo y tambin en temporizadores (TIM y TIMH) y seguimiento de
datos. Sea especialmente cuidadoso cuando las unidades de intervalo de
tiempo programado se ajusten como 0,5 ms o 1 ms en la configuracin del
PLC.
Las interrupciones se aceptan incluso cuando una instruccin est siendo
ejecutada. Por lo tanto, si se acepta una interrupcin mientras se est
ejecutando una instruccin que requiere un tiempo de procesamiento largo,
es posible que no se obtengan resultados de procesamiento correctos
porque es posible que la tarea de interrupcin y la instruccin accedan a los
mismos datos. En este caso, use DI(693) y EI(694) para inhabilitar y habilitar
la interrupcin.
Tarea de interrupcin
Interrupcin
durante
la
ejecucin

Interrupciones
inhabilitadas

822
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

3-21 Instrucciones de salida de impulsos/contador de alta


velocidad
Esta seccin describe instrucciones utilizadas para controlar los contadores
de alta velocidad y salidas de impulsos.
Instruccin Nemnico Cdigo de Pgina
funcin
MODE CONTROL INI 880 823
HIGH-SPEED COUNTER PV READ PRV 881 827
COUNTER FREQUENCY CONVERT PRV2 881 833
REGISTER COMPARISON TABLE CTBL 882 837
SPEED OUTPUT SPED 885 841
SET PULSES PULS 886 846
PULSE OUTPUT PLS2 887 849
ACCELERATION CONTROL ACC 888 855
ORIGIN SEARCH ORG 889 862
PULSE WITH VARIABLE DUTY FACTOR PWM 891 865

3-21-1 MODE CONTROL: INI(880) (slo CJ1M-CPU21/22/23)


Empleo INI(880) puede utilizarse para la ejecucin de las siguientes operaciones de
la E/S incorporada de las CPUs CJ1M:
Iniciar una comparacin con la tabla de comparacin del contador de alta
velocidad.
Detener una comparacin con la tabla de comparacin del contador de
alta velocidad.
Cambiar el valor actual del contador de alta velocidad.
Cambiar el valor actual de las entradas de interrupcin en el modo
contador.
Cambiar el valor actual de la salida de impulsos (origen fijado en 0).
Detener la salida de impulsos.
Esta instruccin slo es compatible con las CPUs CJ1M-CPU21/22/23.
Smbolo de diagrama de
rels INI(880)
P P: Especificador de puerto
C C: Datos de control
NV: Primer canal con el nuevo
NV valor actual (PV)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON INI(880)
Se ejecuta una vez en el diferencial ascendente @INI(880)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos P: Especificador de puerto


P especifica el puerto al que corresponde la operacin.
P Puerto
0000 hexadecimal Salida de impulsos 0
0001 hexadecimal Salida de impulsos 1
0010 hexadecimal Contador de alta velocidad 0

823
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

P Puerto
0011 hexadecimal Contador de alta velocidad 1
0100 hexadecimal Entrada de interrupcin 0 en modo contador
0101 hexadecimal Entrada de interrupcin 1 en modo contador
0102 hexadecimal Entrada de interrupcin 2 en modo contador
0103 hexadecimal Entrada de interrupcin 3 en modo contador
1000 hexadecimal PWM(891) salida 0
1001 hexadecimal PWM(891) salida 1

C: Datos de control
La funcin de INI(880) se determina mediante los datos de control, C.
C Funcin de INI(880)
0000 hexadecimal Inicia la comparacin.
0001 hexadecimal Detiene la comparacin.
0002 hexadecimal. Cambia el valor actual.
0003 hexadecimal Detiene la salida de impulsos.

NV: primer canal con el nuevo valor actual (PV)


NV y NV+1 contienen el nuevo valor actual al cambiar el valor actual.
Si C es 0002 hexadecimal (es decir, al cambiar un valor actual), NV y NV+1
contienen el nuevo valor actual. Todos los valores contenidos en NV y NV+1
se ignorarn si C no es 0002 hexadecimal.
15 0
S Canal inferior del nuevo valor actual (PV)
S+1 Canal superior del nuevo valor actual (PV)

Para salida de impulsos o entrada de contador de alta velocidad:


0000 0000 a FFFF FFFF hexadecimal

Para entrada de interrupcin en modo de contador:


0000 0000 a 0000 FFFF hexadecimal

Especificaciones del
operando rea P C NV
rea CIO --- --- CIO 0000 hasta
CIO 6142
rea de Trabajo --- --- W000 hasta W510
rea de bit en Espera --- --- H000 hasta H510
rea Bit Auxiliar --- --- A448 hasta A958
rea Temporizador --- --- T0000 hasta T4094
rea Contador --- --- C0000 hasta C4094
rea DM --- --- D00000 hasta D32766
rea EM sin banco --- --- ---
rea EM con Banco --- --- ---
Direcciones DM/EM --- --- @ D00000 hasta @
indirectas en binario D32767
Direcciones DM/EM --- --- *D00000 hasta *D32767
indirectas en BCD
Constantes Vase la Vase la ---
descripcin del descripcin del
operando. operando.
Registros de datos --- --- ---

824
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

rea P C NV
Registros de ndice --- --- ---
Direccionamiento --- --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0
registros de ndice hasta
2048 hasta +2047 ,IR15
DR0 hasta DR15, IR0
hasta IR15
,IR0+(++) hasta
,IR15+(++)
,( )IR0 hasta,
( )IR15

Descripcin INI(880) ejecuta la operacin especificada en C para el puerto especificado


en P. La siguiente tabla presenta las posibles combinaciones de operaciones
y puertos.
P: Especificador de C: Datos de control
puerto 0000 hexa- 0001 hex- 0002 hexa- 0003 hexa-
decimal: adecimal: decimal: decimal:
Inicio de la Detencin Cambie el Detencin
com- de la com- valor actual de la salida
paracin paracin de impulsos
0000 0001 No se No se OK OK
hexadecimal: admite. admite.
Salida de impulsos
0010 0011 OK OK OK No se
hexadecimal: admite.
Entrada de contador de
alta velocidad
0100, 0101, 0102 No se No se OK No se
0103 hexadecimal: admite. admite. admite.
Entrada de interrupcin
en modo contador
1000 1001 No se No se No se OK
hexadecimal: admite. admite. admite.
Salida de PWM (891)

Inicio de la comparacin (C = 0000 hexadecimal)


Si C es 0000 hexadecimal, INI(880) iniciar la comparacin del valor actual
de un contador de alta velocidad con la tabla de comparacin registrada con
CTBL(882).
Nota Deber haberse registrado de antemano una tabla de comparacin de valor
objetivo con CTBL(882). Si INI(880) se ejecuta sin registrar una tabla, se
activar (ON) el indicador de error.

Detencin de la comparacin (C = 0001 hexadecimal)


Si C es 0001 hexadecimal, INI(880) detendr la comparacin del valor actual
de un contador de alta velocidad con la tabla de comparacin registrada con
CTBL(882).

825
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Cambio de un valor actual (C = 0002 hexadecimal)


Si C es 0002 hexadecimal, INI(880) cambiar un valor actual, tal y como se
indica en la siguiente tabla.
Puerto y modo Operacin Rango de
configuracin
Salida de impulsos (P = 0000 El valor actual de la 8000 0000 hasta 7FFF
0001 hexadecimal) salida de impulsos cam- FFFF hexadecimal
bia. El nuevo valor se (-2.147.483.648 hasta
especifica en NV y 2.147.483.647)
NV+1.
Nota: Esta instruccin
slo podr ejecutarse si
se detiene la salida de
impulsos. Si se ejecuta
durante una salida de
impulsos, se producir
un error.
Entrada Modo Entradas El valor actual del conta- 8000 0000 hasta 7FFF
del conta- Lineal diferencia- dor de alta velocidad FFFF hexadecimal
dor de les, impul- cambia. El nuevo valor (-2.147.483.648 hasta
alta velo- sos ascen- se especifica en NV y 2.147.483.647)
cidad (P = dentes/des- NV+1.
0010 cendentes o Nota: Si el puerto espe-
0011 entradas de cificado no est configu-
hexadeci- impulsos + rado para un contador
mal) direccin de alta velocidad, la ins-
Entrada de truccin generar un 0000 0000 a FFFF FFFF
impulsos error. hexadecimal
incremental (0 hasta 4.294.967.295)
Modo circular 0000 0000 a FFFF FFFF
hexadecimal
(0 hasta 4.294.967.295)
Entradas de interrupcin en El valor actual de la 0000 0000 hasta 0000
modo contador (P = 0100, 0101, entrada de interrupcin FFFF hexadecimal
0102 0103 hexadecimal) cambia. El nuevo valor (0 hasta 65.535)
se especifica en NV y Nota: Se producir un
NV+1. error si se especifica un
valor fuera de este
rango.

Detencin de salida de impulsos (P = 1000 1001 hexadecimal y C = 0003


hexadecimal)
Si C es 0003 hexadecimal, INI(880) detendr inmediatamente la salida de
impulsos del puerto especificado. Si la instruccin se ejecuta una vez que la
salida de impulsos se haya detenido, el nmero de impulsos configurado se
borrar.

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si se excede el rango especificado para P, C o NV.
de error ON si no se admite la combinacin de P y C especificada.
ON si no se ha registrado anteriormente una tabla de
comparacin pero se especifica un inicio de comparacin.
ON si se especifica un nuevo valor actual para un puerto
desde el que, en ese momento, estn saliendo impulsos.
ON si se especifica el cambio del valor actual de un contador
de alta velocidad para un puerto no especificado para dicho
contador.
ON si se especifica un valor actual fuera de rango como valor
de una entrada de interrupcin en modo contador.
ON si INI(880) se ejecuta en una tarea de interrupcin de un
contador de alta velocidad y se produce una interrupcin al
ejecutar CTBL(882).
ON si se ejecuta en un puerto no configurado como entrada
de interrupcin en modo contador.

826
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Ejemplo Cuando CIO 000000 se pone en ON en el siguiente ejemplo, SPED(885)


inicia la salida de impulsos desde la salida de impulsos 0 en modo continuo a
500 Hz. Al ponerse CIO 000001 en ON, INI(880) detiene la salida de
impulsos.
000000
@SPED D00100 01F4
Frecuencia objetivo: 500 Hz
#0000 Salida de impulsos 0 D00101 0000
#0000 Mtodo CW/CCW, CW, modo continuo
D00100

000001
@INI
#0000 Salida de impulsos 0
#0003 Detencin de la salida de impulsos
0000 (No utilizado).

3-21-2 HIGH-SPEED COUNTER PV READ: PRV(881) (slo CJ1M-CPU21/


22/23)
Empleo PRV(881) lee los siguientes datos en la E/S incorporada de las CPUs CJ1M.
Valores actuales: valor actual del contador de alta velocidad, valor actual
de salida de impulsos, valor actual de entrada de interrupcin en modo
contador.
La siguiente informacin de estado.
Tipo de estado Contenido
Estado de salida de impulsos Indicador de estado de la salida de impulsos
Indicador de underflow/overflow del valor actual
Indicador de configuracin del nmero de la salida
de impulsos
Indicador de finalizacin de la salida de impulsos
Indicador de salida de impulsos
Indicador de carencia de origen
Indicador de en origen
Indicador de error por detencin de la salida de
impulsos
Estado de la entrada de Indicador de comparacin en curso
contador de alta velocidad Indicador de underflow/overflow del valor actual
Estado de salida de PWM(891) Indicador de salida de impulsos en curso

Resultados de la comparacin del rango


Frecuencia de salida de impulsos de la salida de impulsos 0 o de la salida
de impulsos 1
(Compatible slo con las CPUs CJ1M Ver. 2.0 posterior).
Frecuencia del contador de alta velocidad para la entrada 0 del contador
de alta velocidad.
Esta instruccin slo es compatible con las CPUs CJ1M-CPU21/22/23.

Smbolo de diagrama de
rels PRV(881)
P P: Especificador de puerto
C C: Datos de control
D D: Primer canal de destino

827
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PRV(881)
Se ejecuta una vez en el diferencial ascendente @PRV(881)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos P: Especificador de puerto


P especifica el puerto al que corresponde la operacin.
P Puerto
0000 hexadecimal Salida de impulsos 0
0001 hexadecimal Salida de impulsos 1
0010 hexadecimal Contador de alta velocidad 0
0011 hexadecimal Contador de alta velocidad 1
0100 hexadecimal Entrada de interrupcin 0 en modo contador
0101 hexadecimal Entrada de interrupcin 1 en modo contador
0102 hexadecimal Entrada de interrupcin 2 en modo contador
0103 hexadecimal Entrada de interrupcin 3 en modo contador
1000 hexadecimal PWM(891) salida 0
1001 hexadecimal PWM(891) salida 1

C: Datos de control
La funcin de INI(880) se determina mediante los datos de control, C.
C Funcin de PRV(881) Variaciones
0000 Lee el valor actual. ---
hexadecimal
0001 Lee el estado. ---
hexadecimal
0002 Lee los resultados de ---
hexadecimal. comparacin de rango.
00@3 P = 0000 0001: C = 0003 hexadecimal:
hexadecimal Lee la frecuencia de salida de Funcionamiento estndar
impulsos de la salida de C = 0013 hexadecimal:
impulsos 0 o de la salida de mtodo de muestreo de 10 ms para
impulsos 1. alta frecuencia (slo compatible
P = 0010: con las CPUs CJ1M Ver. 3.0
Lee la frecuencia de entrada del posterior)
contador de alta velocidad 0. C = 0023 hexadecimal:
mtodo de muestreo de 100 ms
para alta frecuencia (slo
compatible con las CPUs CJ1M
Ver. 3.0 posterior)
C = 0033 hexadecimal:
mtodo de muestreo de 1 s para
alta frecuencia (slo compatible
con las CPUs CJ1M Ver. 3.0
posterior)

D: Primer canal de destino


El valor actual sale a D o a D y D+1.

828
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

D Canal inferior del valor actual (PV)


D+1 Canal superior del valor actual (PV)

PV de 2 canales
PV de salida de impulsos, PV de entrada de contador de alta velocidad,
frecuencia de entrada de contador de alta velocidad para entrada 0
de contador de alta velocidad
15 0
D PV

PV de 1 canal
PV de entrada de interrupcin en modo contador, estado,
resultados de la comparacin del rango

Especificaciones del
operando rea P C D
rea CIO --- --- CIO 0000 hasta CIO 6142
rea de Trabajo --- --- W000 hasta W510
rea de bit en Espera --- --- H000 hasta H510
rea Bit Auxiliar --- --- A448 hasta A958
rea Temporizador --- --- T0000 hasta T4094
rea Contador --- --- C0000 hasta C4094
rea DM --- --- D00000 hasta D32766
rea EM sin banco --- --- ---
rea EM con Banco --- --- ---
Direcciones DM/EM --- --- @ D00000 hasta @ D32766
indirectas en binario
Direcciones DM/EM --- --- *D00000 hasta *D32766
indirectas en BCD
Constantes Vase la Vase la ---
descripcin del descripcin del
operando. operando.
Registros de datos --- --- ---
Registros de ndice --- --- ---
Direccionamiento --- --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0
registros de ndice hasta
2048 hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta
IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

829
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Descripcin PRV(881) lee los datos especificados en C para el puerto especificado en P.


La siguiente tabla presenta las posibles combinaciones de datos y puertos.
P: Especificador de C: Datos de control
puerto 0000 hexa- 0001 hexa- 0002 hexa- 0003 hexa-
decimal: decimal: decimal: decimal:
Lee los Lee el Lee los Lee la
valores estado resultados frecuencia
actuales de la del contador
comparaci de alta
n del rango velocidad
0000 0001 OK OK No se OK (CPIs
hexadecimal: admite. CJ1M Ver.
Salida de impulsos 3.0
posterior
solamente)
0010 0011 OK OK OK S (slo
hexadecimal: contador de
Entrada de contador de alta
alta velocidad velocidad 0)
0100, 0101, 0102 OK No se No se No se
0103 hexadecimal: admite. admite. admite.
Entrada de interrupcin
en modo contador
1000 1001 No se OK No se No se
hexadecimal: admite. admite. admite.
Salida de PWM (891)

Lectura de un valor actual (C = 0000 hexadecimal)


Si C es 0000 hexadecimal, PRV(881) leer un valor actual, tal y como se
indica en la siguiente tabla.
Puerto y modo Operacin Rango de configuracin
Salida de impulsos (P = El valor actual de la 8000 0000 hasta 7FFF FFFF
0000 0001 salida de impulsos se hexadecimal
hexadecimal) guarda en D y D+1. (-2.147.483.648 hasta
2.147.483.647)
Entrada del Modo El valor actual del 8000 0000 hasta 7FFF FFFF
contador de Lineal contador de alta hexadecimal
alta velocidad velocidad se guarda en (-2.147.483.648 hasta
(P = 0010 D y D+1. 2.147.483.647)
0011 Modo 0000 0000 a FFFF FFFF
hexadecimal) circular hexadecimal
(0 hasta 4.294.967.295)
Entradas de interrup- El valor actual de la 0000 hasta FFFF hexadecimal
cin en modo contador entrada de interrupcin (0 hasta 65.535)
(P = 0100, 0101, 0102 se guarda en D.
0103 hexadecimal)

830
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Lectura de estado (C = 0001 hexadecimal)


Si C es 0001 hexadecimal, PRV(881) leer el estado, tal y como se indica en
la siguiente tabla.
Puerto y Operacin Resultados de la lectura
modo
Salida de El estado 15 0
impulsos de salida de D 0 0 0 0 0 0 0 0

impulsos se
guarda en
Indicador de estado de la salida de impulsos
OFF: Velocidad constante
ON: Acelerando/decelerando
D. Indicador de overflow o underflow de PV
OFF: Normal
ON: Error

Indicador de configuracin del nmero de la salida de impulsos


OFF: No configurado
ON: Configurar
Indicador de finalizacin de la salida de impulsos
OFF: Salida no finalizada
ON: Salida finalizada

Indicador de salida de impulsos en curso


OFF: Detenido
ON: Salida
Indicador de carencia de origen
OFF: Origen establecido
ON: Origen no establecido

Indicador de en origen
OFF: No se detiene en el origen
ON: Se detiene en el origen

Indicador de error por detencin de la salida de impulsos


OFF: Ningn error
ON: Salida de impulsos detenida debido a un error

Entrada de El estado 15 0
contador del conta- D 0 0 0 0 0 0 0 0 0 0 0 0 0 0

de alta dor de alta Indicador de comparacin en curso


velocidad velocidad OFF: Detenido
ON: Comparacin
se guarda Indicador de overflow o underflow de PV
en D. OFF: Normal
ON: Error

salida La salida de 15 0

PWM(891) PWM(891) D 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

se guarda Indicador de salida de impulsos en curso


OFF: Detenido
en D. ON: Salida

Lectura de los resultados de la comparacin de rango


(C = 0002 hexadecimal)
Si C es 0002 hexadecimal, PRV(881) lee los resultados de la comparacin de
rango y los guarda en D, tal y como se indica en el siguiente diagrama.
15 0
D 0 0 0 0 0 0 0 0

Resultados de comparacin 1
OFF: Fuera del rango ON: En el rango
Resultados de comparacin 2
OFF: Fuera del rango ON: En el rango
Resultados de comparacin 3
OFF: Fuera del rango ON: En el rango
Resultados de comparacin 4
OFF: Fuera del rango ON: En el rango
Resultados de comparacin 5
OFF: Fuera del rango ON: En el rango
Resultados de comparacin 6
OFF: Fuera del rango ON: En el rango
Resultados de comparacin 7
OFF: Fuera del rango ON: En el rango
Resultados de comparacin 8
OFF: Fuera del rango ON: En el rango

Lectura de salida de impulsos o de frecuencia de contador de alta


velocidad (C = 00@3 hexadecimal)
Si C es 00@3 hexadecimal, PRV(881) leer la frecuencia procedente de la
salida de impulsos 0 1, o bien la entrada de frecuencia al contador de alta
velocidad 0, y guarda la informacin en D y D+1.

831
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Gamas de frecuencia
Valor de P Resultado de la conversin
0000 0001 hexadecimal 0000 0000 hasta 0001 86A0 hexadecimal (0 hasta
(Lectura de la frecuencia de 100.000)
salida de impulsos 0 1)
0010 hexadecimal Mtodo de entrada del contador: Cualquier mtodo,
(Lectura de la frecuencia a excepcin del modo de fase diferencial 4
del contador de alta Resultado = 00000000 a 000186A0 hexadecimal
velocidad 0) (0 a 100.000)
Nota Para una entrada de una frecuencia superior a
los 100 kHz, la salida se mantendr en el valor
mximo de 000186A0 hexadecimal.
Mtodo de entrada del contador: modo de fase
diferencial 4
Resultado = 00000000 hasta 00030D40 hexadecimal
(0 hasta 200.000)
Nota Para una entrada de una frecuencia superior a
los 200 kHz, la salida se mantendr en el valor
mximo de 00030D40 hexadecimal.

Mtodos de clculo de frecuencia de impulsos


Si la CPU es una CJ1M versin 3.0 o superior, existen dos mtodos para
calcular la frecuencia de salida de impulsos desde la salida de impulsos 0
1, o bien la entrada de impulsos al contador de alta velocidad 0.
1. Mtodo de clculo estndar (mtodo anterior)
El recuento se calcula contando cada impulso, independientemente de su
frecuencia. En altas frecuencias, los flancos ascendentes o descendentes
de algunos impulsos quedarn daados, dando como resultado errores
(en torno a un 1% mx. de errores a 100 kHz).
2. Mtodo de clculo de alta frecuencia
En este caso, el mtodo de contaje se alterna entre altas y bajas
frecuencias.
Contaje de alta frecuencia
En altas frecuencias (por encima de 1 kHz), la funcin cuenta el
nmero de impulsos dentro de un intervalo fijo (el tiempo de
muestreo), y a partir de ese contaje calcula la frecuencia. Se puede
seleccionar cualquiera de los tres siguientes tiempos de muestreo
configurando los dos dgitos de la derecha de C.
Tiempo de Valor de C Descripcin
muestreo
10 ms 0013 Cuenta el nmero de impulsos cada 10 ms.
hexadecimal El margen de error mximo es del 10% a
1 kHz.
100 ms 0023 Cuenta el nmero de impulsos cada
hexadecimal 100 ms. El margen de error mximo es del
1% a 1 kHz.
1s 0033 Cuenta el nmero de impulsos cada 1 s.
hexadecimal El margen de error mximo es del 0,1% a
1 kHz.

Contaje de baja frecuencia


En frecuencias inferiores a 1 kHz se utiliza el mtodo de clculo
estndar, independientemente del tiempo de muestreo configurado.

832
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se excede el rango especificado para P o C.
error ON si no se admite la combinacin de P y C especificada.
ON si se especifica la lectura de los resultados de la
comparacin de rango aunque no se ejecute la
comparacin de rango.
ON si se especifica la lectura de la frecuencia de
cualquier salida, a excepcin del contador de alta
velocidad 0.
ON si se especifica un puerto no configurado para un
contador de alta velocidad.
ON si se ejecuta en un puerto no configurado como
entrada de interrupcin en modo contador.

Ejemplos

Ejemplo 1
Cuando en el siguiente ejemplo de programacin CIO 000000 se pone en
ON, CTBL(882) registra una tabla de comparacin de rango para el contador
de alta velocidad 0 e inicia la comparacin. Cuando CIO 000001 se pone en
ON, PRV(881) lee los resultados de comparacin de rango en ese momento
y los guarda en CIO 0100.
000000
@CTBL
#0000 Entrada de contador de alta velocidad 0
#0001 Registro de la tabla de comparacin
del rango e inicio de la comparacin
D00100

000001
@PRV
#0010 Entrada de contador de alta velocidad 0
#0002 Leer resultados de la comparacin del rango
0100

Ejemplo 2
Cuando en el siguiente ejemplo de programacin CIO 000100 se pone en
ON, PRV(881) lee la frecuencia de entrada de impulsos al contador de alta
velocidad 0 en ese momento y la guarda (como valor hexadecimal) en
D00200 y D00201.
000100
PRV
#0010 Entrada de contador de alta velocidad 0
#0003 Leer frecuencia de entrada
D00200

3-21-3 COUNTER FREQUENCY CONVERT: PRV2(883)


Empleo PRV2(883) lee la entrada de frecuencia de impulsos de un contador de alta
velocidad y convierte dicha frecuencia en velocidad de rotacin o bien
convierte el valor actual del contador en el nmero total de revoluciones. El
resultado se enva a los canales de destino en forma de valor hexadecimal de 8
dgitos. Los impulsos slo pueden proceder del contador de alta velocidad 0.
Esta instruccin slo es compatible con las CPUs CJ1M-CPU21/22/23 Ver.
2.0 posterior.

833
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Smbolo de diagrama de
rels PRV2
C1 C1: Datos de control
C2 C2: Impulsos por revolucin
D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PRV2(883)
Se ejecuta una vez en el diferencial ascendente @PRV2(883)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C1: Datos de control


La funcin de PRV2(883) se determina mediante los datos de control, C.
C1 Funcin de PRV2(883)
0@*0 hexadecimal Convierte frecuencia en velocidad de rotacin.
(Ver nota).
0001 hexadecimal Convierte el valor actual del contador en nmero total de
revoluciones.

Nota El segundo dgito de C (@) especifica las unidades, y el tercero (*) especifica
el mtodo de clculo de frecuencia.

C1 0
Tipo de conversin
0 hexadecimal: Frecuencia a velocidad
1 hexadecimal: Valor actual de contador sobre total revoluciones
(Si el tipo de conversin es "Frecuencia a velocidad")
Mtodo de clculo de frecuencia de impulsos
0 hexadecimal: Mtodo de clculo estndar
1 hexadecimal: Mtodo de clculo de alta frecuencia, muestreo de 10 ms (Ver nota).
2 hexadecimal: Mtodo de clculo de alta frecuencia, muestreo de 100 ms (Ver nota).
3 hexadecimal: Mtodo de clculo de alta frecuencia, muestreo de 1.000 ms (Ver nota).
(Si el tipo de conversin es "Frecuencia a velocidad")
Unidad de velocidad
0 hexadecimal: rpm
1 hexadecimal: r/s (Ver nota).
2 hexadecimal: r/h (Ver nota).

C2: Impulsos por revolucin


Especifica el nmero de impulsos por revolucin (0001 hasta FFFF hexade-
cimal).
D: Primer canal de destino
El valor actual sale a D o a D y D+1.
15 0
D Resultado de conversin (4 dgitos de la derecha)
D+1 Resultado de conversin (4 dgitos de la izquierda)

Especificaciones del
operando rea C1 C2 D
rea CIO --- CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6142
rea de Trabajo --- W000 hasta W511 W000 hasta W510

834
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

rea C1 C2 D
rea de bit en Espera --- H000 hasta H511 H000 hasta H510
rea Bit Auxiliar --- A448 hasta A959 A448 hasta A958
rea Temporizador --- T0000 hasta T4095 T0000 hasta T4094
rea Contador --- C0000 hasta C4095 C0000 hasta C4094
rea DM --- D00000 hasta D00000 hasta
D32767 D32766
rea EM sin banco --- --- ---
rea EM con Banco --- --- ---
Direcciones DM/EM --- @ D00000 hasta @ @ D00000 hasta @
indirectas en binario D32767 D32767
Direcciones DM/EM --- *D00000 hasta *D00000 hasta
indirectas en BCD *D32767 *D32767
Constantes Vase la --- ---
descripcin del
operando.
Registros de datos --- --- ---
Registros de ndice --- --- ---
Direccionamiento --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta
registros de ndice
2048 hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin PRV2(883) convierte la entrada de frecuencia de impulsos del contador de


alta velocidad 0, segn el mtodo de conversin especificado en C1 y el
coeficiente de impulsos/revolucin especificado en C2 y enva el resultado a
D y D+1.
Seleccione cualquiera de los siguientes mtodos de conversin configurando
C1 como 0000 0001 hexadecimal.
Conversin de la frecuencia en velocidad de rotacin (C1 = 0@*0
hexadecimal)
Si C1 es 0@*0 hexadecimal, PRV2(883) calcula la velocidad de rotacin
(rpm) a partir de los datos de frecuencia y de la configuracin de impulsos/
revolucin. El segundo dgito de C (@) especifica las unidades, y el tercero (*)
especifica el mtodo de clculo de frecuencia.
1. Unidades de velocidad de rotacin
Unidades de velocidad de rotacin = rpm
Si el segundo dgito de C (@) es 0, PRV2(883) calcular la velocidad de
rotacin en rpm a partir de los datos de frecuencia y de la relacin
impulsos/revolucin configurada.
Velocidad de rotacin (rpm) = (Frecuencia Impulsos/revolucin) 60
Unidades de velocidad de rotacin = r/seg (CPUs CJM1 Ver. 3.0
posterior solamente)
Si el segundo dgito de C (@) es 1, PRV2(883) calcular la velocidad de
rotacin en r/s a partir de los datos de frecuencia y de la relacin impulsos/
revolucin configurada.
Velocidad de rotacin (r/s) = Frecuencia Impulsos/revolucin
Unidades de velocidad de rotacin = r/hr (CPUs CJM1 Ver. 3.0 posterior
solamente)
Si el segundo dgito de C (@) es 2, PRV2(883) calcular la velocidad de
rotacin en r/hr a partir de los datos de frecuencia y de la relacin
impulsos/revolucin configurada.
Velocidad de rotacin (r/hr) = (Frecuencia Impulsos/revolucin) 60 60
Rango de resultados de conversin

835
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Mtodo de entrada del contador: Cualquier mtodo excepto modo de


fase diferencial 4
Resultado de la conversin = 00000000 a 000186A0 hexadecimal
(0 a 100.000)
(Para una entrada de una frecuencia superior a los 100 kHz, la salida
se mantendr en el valor mximo de 000186A0 hexadecimal.)
Mtodo de entrada del contador: modo de fase diferencial 4
Resultado de la conversin = 00000000 a 00030D40 hexadecimal
(0 a 200.000)
(Para una entrada de una frecuencia superior a los 200 kHz, la salida
se mantendr en el valor mximo de 00030D40 hexadecimal.)
2. Mtodo de clculo de frecuencia
Si la CPU es una CJ1M versin 3.0 o superior, existen dos mtodos para
calcular la frecuencia de entrada de impulsos al contador de alta velocidad 0.
a) Mtodo de clculo estndar (C1 = 0@00)
El recuento se calcula contando cada impulso, independientemente
de su frecuencia. En altas frecuencias, los flancos ascendentes o
descendentes de algunos impulsos quedarn daados, dando como
resultado errores (aproximadamente un 1% mx. de errores a 100
kHz).
b) Mtodo de clculo de alta frecuencia
En este caso, el mtodo de contaje se alterna entre altas y bajas
frecuencias. (Compatible con CPUs CJM1 Ver. 3.0 posterior
solamente)
Contaje de alta frecuencia (C1 = 0@10, 0@20, 0@30)
En altas frecuencias (por encima de 1 kHz), la funcin cuenta el
nmero de impulsos dentro de un intervalo fijo (el tiempo de
muestreo), y a partir de ese contaje calcula la frecuencia. Se puede
seleccionar cualquier de los tres siguientes tiempos de muestreo
configurando el tercer dgito de C1.
Tiempo de Valor de C1 Descripcin
muestreo
10 ms 0@10 Cuenta el nmero de impulsos cada 10 ms. El
hexadecimal margen de error mximo es del 10% a 1 kHz.
100 ms 0@20 Cuenta el nmero de impulsos cada 100 ms. El
hexadecimal margen de error mximo es del 1% a 1 kHz.
1s 0@30 Cuenta el nmero de impulsos cada 1 s. El
hexadecimal margen de error mximo es del 0,1% a 1 kHz.
Contaje de baja frecuencia
En frecuencias inferiores a 1 kHz se utiliza el mtodo de clculo
estndar, independientemente del tiempo de muestreo configurado.
Conversin del valor actual del contador en nmero total de revoluciones
(C1 = 0001 hexadecimal)
Si C1 es 0001 hexadecimal, PRV2(883) calcula el nmero acumulativo de
revoluciones a partir del valor actual del contador y de la configuracin de
impulsos/revolucin.
Resultado de la conversin = Valor actual del contador Impulsos/revolucin
Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si en la configuracin se ha inhabilitado el contador de
de error alta velocidad 0.
ON si C1 no est en el rango especificado (0000 0001).
ON si la configuracin de impulsos/revolucin en C2 es 0000.

836
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Ejemplos
Ejemplo 1
Cuando en el siguiente ejemplo de programacin CIO 000100 est en ON,
PRV2(883) lee la frecuencia actual de impulsos en el contador de alta
velocidad 0, convierte dicho valor en una velocidad de rotacin (rpm) y
entrega el resultado (en formato hexadecimal) a D00201 y D00200.
000100
PRV2
#0000 Conversin de frecuencia en velocidad de rotacin
#0003 Impulsos por revolucin
D00200

Ejemplo 2
Cuando en el siguiente ejemplo de programacin CIO 000100 est en ON,
PRV2(883) lee el valor actual del contador, convierte dicho valor en nmero
de revoluciones y el resultado (en formato hexadecimal) sale a D00301 y
D00300.
000100
PRV2
#0001 Conversin del valor actual del contador
en nmero total de revoluciones.
#0003 Impulsos por revolucin
D00300

3-21-4 REGISTER COMPARISON TABLE: CTBL(882)


(slo CPUs CJ1M-CPU21/22/23)
Empleo CTBL(882) se utiliza para registrar una tabla de comparacin y realizar
comparaciones del valor actual de un contador de alta velocidad. Es posible
compararlo con valores objetivo o con rangos. Si se cumple una condicin
especificada, se ejecutar una tarea de interrupcin.
Esta instruccin slo es compatible con las CPUs CJ1M-CPU21/22/23.
Smbolo de diagrama de
rels CTBL(882)
P P: Especificador de puerto
C C: Datos de control
TB: Primer canal de
TB tabla de comparacin

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CTBL(882)
Se ejecuta una vez en el diferencial ascendente @CTBL(882)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK
Operandos P: Especificador de puerto
P especifica en qu puerto se contarn los impulsos, tal y como se indica en
la siguiente tabla.
P Puerto
0000 hexadecimal Contador de alta velocidad 0
0001 hexadecimal Contador de alta velocidad 1

837
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

C: Datos de control
La funcin de CTBL(882) se determina mediante los datos de control, C, tal y
como puede verse en la siguiente tabla.
C Funcin de CTBL(882)
0000 Registra una tabla de comparacin con valores objetivo e inicia la
hexadecimal comparacin.
0001 Registra una tabla de comparacin con un rango de valores y
hexadecimal ejecuta una comparacin.
0002 Registra una tabla de comparacin con valores objetivo. La
hexadecimal. comparacin se inicia con la instruccin INI(880).
0003 Registra una tabla de comparacin con un rango de valores. La
hexadecimal comparacin se inicia con la instruccin INI(880).
TB: Primer canal de tabla de comparacin
TB indica el primer canal de la tabla de comparacin. La estructura de la tabla
de comparacin depender del tipo de comparacin que se efecte.
Para una comparacin con valores objetivo, la longitud de la tabla de
comparacin estar determinada por el nmero de valores objetivos
especificados en TB. La tabla puede ser de entre 4 y 145 canales de longitud,
tal y como puede verse a continuacin.
15 0
TB Nmero de valores objetivo 0001 a 0030 hexadecimal (valores objetivo 1 a 48)

TB+1 Canal inferior del valor objetivo 1


00000000 hasta FFFFFFFF hexadecimal
TB+2 Canal superior del valor objetivo 1
Nmero de tarea de interrupcin
TB+3 para valor objetivo 1

TB+142 Canal inferior del valor objetivo 48


00000000 hasta FFFFFFFF hexadecimal
TB+143 Canal superior del valor objetivo 48
Nmero de tarea de interrupcin
TB+144 para valor objetivo 48

Nmero de tarea de interrupcin


15 14 12 11 87 4 3 0
0 0 0 0 0 0 0

Nmero de la tarea de interrupcin


Direccin 00 a FF hexadecimal (0 a 255)
OFF: ascendente,
ON: descendente

En cuanto a la comparacin con un rango de valores, la tabla de comparacin


siempre contendr ocho rangos. Esta tabla tiene 40 canales de longitud,
como puede verse a continuacin. Si no es necesario configurar ocho rangos,
configure el nmero de tarea de interrupcin como FFFF hexadecimal para
todos los rangos no utilizados.
15 0
TB Canal inferior del lmite inferior del rango 1
0000 0000 a FFFF FFFF hexadecimal (Ver nota).
TB+1 Canal superior del lmite inferior del rango 1

TB+2 Canal inferior del lmite superior del rango 1


0000 0000 a FFFF FFFF hexadecimal (Ver nota).
TB+3 Canal superior del lmite superior del rango 1

Nmero de la tarea de interrupcin del rango 1

TB+35 Canal inferior del lmite inferior del rango 8


0000 0000 a FFFF FFFF hexadecimal (Ver nota).
TB+36 Canal superior del lmite inferior del rango 8

TB+37 Canal inferior del lmite superior del rango 8


0000 0000 a FFFF FFFF hexadecimal (Ver nota).
TB+38 Canal superior del lmite superior del rango 8

TB+39 Nmero de la tarea de interrupcin del rango 8

Nmero de la tarea de interrupcin


0000 a 00FF hexadecimal: Nmero de tarea de interrupcin de 0 a 255
AAAA hexadecimal: No ejecutar la tarea de interrupcin.
FFFF hexadecimal: Ignorar la configuracin para este rango.

838
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Nota Configure siempre un lmite superior mayor o igual que el lmite inferior de
cualquier rango.
Especificaciones del
operando rea P C TB
rea CIO --- --- CIO 0000 hasta CIO 6143
rea de Trabajo --- --- W000 hasta W511
rea de bit en Espera --- --- H000 hasta H511
rea Bit Auxiliar --- --- A448 hasta A959
rea Temporizador --- --- T0000 hasta T4095
rea Contador --- --- C0000 hasta C4095
rea DM --- --- D00000 hasta D32767
rea EM sin banco --- --- ---
rea EM con Banco --- --- ---
Direcciones DM/EM --- --- @ D00000 hasta @ D32767
indirectas en binario
Direcciones DM/EM --- --- *D00000 hasta *D32767
indirectas en BCD
Constantes Vase la Vase la ---
descripcin del descripcin del
operando. operando.
Registros de datos --- --- ---
Registros de ndice --- --- ---
Direccionamiento --- --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0
registros de ndice hasta
2048 hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta
IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin CTBL(882) registra una tabla de comparacin o bien registra una tabla de
comparacin e inicia la comparacin en el puerto especificado en P con el
mtodo especificado en C. Una vez registrada una tabla de comparacin,
ser vlida hasta que se registre una tabla de comparacin diferente o hasta
que la CPU cambie al modo PROGRAM.
Cada vez que se ejecuta la instruccin CTBL(882), se iniciar una
comparacin basada en las condiciones especificadas. Al utilizar CTBL(882)
para iniciar una comparacin, normalmente ser suficiente utilizar la versin
diferenciada (@CTBL(882)) de la instruccin o bien una condicin de
ejecucin que se ponga en ON durante un solo scan.
Nota Si se especifica una tarea de interrupcin que no se ha registrado
anteriormente, se producir un error grave de programa la primera vez que se
genere una interrupcin.
Registro de una tabla de comparacin (C = 0002 0003 hexadecimal)
Si C se configura como 0002 0003 hexadecimal, se registrar una tabla de
comparacin pero no se iniciar la comparacin. La comparacin se inicia
con la instruccin INI(880).
Registro de una tabla de comparacin e inicio de la comparacin
(C = 0000 0001 hexadecimal)
Si C se configura como 0000 0001 hexadecimal, se registrar una tabla de
comparacin y se iniciar la comparacin.
Detencin de la comparacin
La comparacin se detiene con la instruccin INI(880). Independientemente
de la instruccin utilizada para iniciar la comparacin.

839
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Comparacin del valor objetivo


La tarea de interrupcin correspondiente se activar y ejecutar cuando el
valor actual coincida con un valor objetivo.
Se puede especificar la misma tarea de interrupcin para varios valores
objetivo.
La direccin puede configurarse para especificar si el valor objetivo es
vlido cuando el valor actual sea ascendente o descendente. Si est en
OFF el bit 15 de canal utilizado para especificar el nmero de tarea de
interrupcin del rango, el valor actual se comparar con el valor objetivo
slo si el valor actual es ascendente; si est en ON el bit 00, slo si el
valor actual es descendente.
La tabla de comparacin puede contener un mximo de 48 valores
objetivos y el nmero de stos se especifica en TB (es decir, la longitud
de la tabla depender del nmero de valores objetivo que se
especifiquen).
Las comparaciones se realizan con todos los valores objetivo registrados
en la tabla.

Nota 1. Se producir un error si se registra ms de una vez en la misma tabla el


mismo valor objetivo con la misma direccin de comparacin.
2. Si el contador de alta velocidad est configurado para el modo de impulsos
ascendente, se producir un error si en la tabla se configura la direccin
descendente de comparacin.
3. Si la direccin de contaje cambia cuando el valor actual es igual a un valor
objetivo al que se lleg en la direccin opuesta en la configurada en la
direccin de comparacin, no se cumplir la condicin de comparacin
configurada para dicho valor objetivo. No configure valores objetivo como
valores mximo y mnimo del valor de contaje.
Comparacin de rango
La tarea de interrupcin correspondiente se activar y ejecutar cuando el
valor actual alcance el rango configurado.
Se puede especificar la misma tarea de interrupcin para varios valores
objetivo.
La tabla de comparacin de rangos contiene ocho rangos, cada uno de
los cuales se define mediante un lmite inferior y un lmite superior. Si no
va a utilizarse un rango, configure el nmero de tarea de interrupcin
como FFFF hexadecimal para inhabilitarlo.
La tarea de interrupcin slo se ejecutar una vez, cuando el valor actual
alcance el rango.
Si el valor actual corresponde a ms de un rango cuando se ejecuta la
comparacin, se dar prioridad a la tarea de interrupcin ms prxima al
inicio de la tabla. Las dems tareas de interrupcin se ejecutarn en los
ciclos siguientes.
Si no hay motivo para ejecutar una tarea de interrupcin, especifique
AAAA hexadecimal como nmero de tarea de interrupcin. Los resulta-
dos de una comparacin de rango pueden leerse con la instruccin
PRV(881) o utilizando los indicadores de comparacin de rango en curso.
Nota Se producir un error si el lmite superior es menor que el lmite inferior de
cualquier rango.

840
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si se excede el rango especificado para P o C.
de error ON si se ha especificado 0 como nmero de los valores
objetivo para la comparacin de valores objetivo.
ON si el nmero de los valores objetivo especificados para la
comparacin de valores objetivo excede de 48.
ON si se ha especificado el mismo valor objetivo ms de una
vez en la misma direccin de comparacin de valores
objetivo.
ON si el valor superior es menor que el valor inferior de
cualquier rango.
ON si los valores configurados para todos los rangos se
inhabilitan durante una comparacin de rango.
ON si el contador de alta velocidad est configurado para el
modo de impulsos ascendente y en la tabla de comparacin
se configura la direccin descendente.
ON si una instruccin se ejecuta cuando el contador de alta
velocidad est configurado en modo circular y el valor
especificado excede del valor circular mximo.
ON si se especifica un puerto no configurado para un
contador de alta velocidad.
ON si se ejecuta para un mtodo de comparacin diferente
mientras la comparacin ya est en curso.

Ejemplo Cuando en el siguiente ejemplo de comparacin CIO 000000 se pone en ON,


CTBL(882) registra una tabla de comparacin de valores objetivo e inicia una
comparacin en el contador de alta velocidad 0. El contaje del valor actual del
contador de alta velocidad se realiza en direccin ascendente y, al llegar a
500, alcanza el valor objetivo 1, tras lo cual se inicia la tarea de interrupcin 1.
Si el valor actual se incrementa hasta 1000, alcanza el valor objetivo 2, tras lo
cual se inicia la tarea de interrupcin 2.
000000
@CTBL D00100 0002 Dos valores objetivo
#0000 Entrada de contador de alta velocidad 0 D00101 01F4
Valor objetivo 1: 0000 01F4 hexadecimal (500)
#0000 Registrar la tabla de comparacin D00102 0000
objetiva e iniciar la comparacin
D00100 D00103 0001 Ascendente, nmero de tarea de interrupcin 1
D00104 03E8
Valor objetivo 2: 0000 03E8 hexadecimal (1000)
D00105 0000
D00106 0002 Ascendente, nmero de tarea de interrupcin 2

3-21-5 SPEED OUTPUT: SPED(885) (slo CPUs CJ1M-CPU21/22/23)


Empleo SPED(885) se utiliza para configurar la frecuencia de impulsos de salida de
un determinado puerto e iniciar la salida de impulsos sin aceleracin ni
deceleracin. Es posible tanto el control de velocidad en modo continuo como
el posicionamiento en modo independiente. Para el posicionamiento en modo
independiente, el nmero de impulsos se configura utilizando la instruccin
PULS(886).
SPED(885) tambin puede ejecutarse durante la salida de impulsos para
cambiar la frecuencia de salida, creando cambios progresivos en la
velocidad.
Esta instruccin slo es compatible con las CPUs CJ1M-CPU21/22/23.
Smbolo de diagrama de
rels SPED(885)
P P: Especificador de puerto

M M: Modo de salida

F F: Primer canal de la frecuencia de impulsos

841
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SPED(885)
Se ejecuta una vez en el diferencial ascendente @SPED(885)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos P: Especificador de puerto


El especificador de puerto especifica el puerto desde donde saldrn los
impulsos.
P Puerto
0000 hexadecimal Salida de impulsos 0
0001 hexadecimal Salida de impulsos 1

M: Modo de salida
El valor de M determina el modo de salida.
15 12 11 87 4 3 0
M

Modo
0 hexadecimal: Continuo
1 hexadecimal: Independiente
Direccin
0 hexadecimal: CW
1 hexadecimal: CCW
Mtodo de salida de impulsos (ver nota)
0 hexadecimal: CW/CCW
1 hexadecimal: Impulso + direccin
Siempre 0 hexadecimal
Nota: Utilice el mismo mtodo de salida de impulsos al utilizar
las salidas de impulsos 0 y 1.
F: Primer canal de la frecuencia de impulsos
El valor de F y F+1 configura la frecuencia de impulsos, en Hz.
15 0
A Canal inferior de frecuencia objetivo 0 a 100.000 Hz
F+1 Canal superior de frecuencia objetivo (0000 0000 hasta 0001 86A0 hexadecimal)

Especificaciones del
operando rea P M A
rea CIO --- --- CIO 0000 hasta CIO 6142
rea de Trabajo --- --- W000 hasta W510
rea de bit en Espera --- --- H000 hasta H510
rea Bit Auxiliar --- --- A448 hasta A958
rea Temporizador --- --- T0000 hasta T4094
rea Contador --- --- C0000 hasta C4094
rea DM --- --- D00000 hasta D32766
rea EM sin banco --- --- ---
rea EM con Banco --- --- ---
Direcciones DM/EM --- --- @ D00000 hasta @
indirectas en binario D32767
Direcciones DM/EM --- --- *D00000 hasta *D32767
indirectas en BCD

842
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

rea P M A
Constantes Vase la Vase la Vase la descripcin del
descripcin del descripcin del operando.
operando. operando.
Registros de datos --- --- ---
Registros de ndice --- --- ---
Direccionamiento --- --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047, IR0
registros de ndice hasta
2048 hasta +2047, IR15
DR0 hasta DR15, IR0 hasta
IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SPED(885) inicia la salida de impulsos en el puerto especificado en P


utilizando el mtodo especificado en M y con la frecuencia especificada en F.
La salida de impulsos se iniciar cada vez que se ejecute SPED(885).
Normalmente ser suficiente utilizar la versin diferenciada (@SPED(885))
de la instruccin o bien una condicin de ejecucin que se ponga en ON
durante un solo scan.
Frecuencia de impulsos

Frecuencia
objetivo

Tiempo

SPED(885) se ha ejecutado.

En modo independiente, la salida de impulsos se detendr automticamente


cuando haya salido el nmero de impulsos configurado anteriormente con la
instruccin PULS(886). En modo continuo, la salida de impulsos continuar
hasta que el programa la detenga.
Si durante la salida de impulsos se cambia el modo entre independiente y
continuo, se producir un error.
Control de velocidad en modo continuo
Al iniciarse el funcionamiento en modo continuo, la salida de impulsos
continuar hasta que se detenga desde el programa.

843
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Nota La salida de impulsos se detendr de inmediato si la CPU cambia al modo


PROGRAM.
Operacin Empleo Aplicacin Cambios de frecuencia Descripcin Procedimiento/
instrucciones
Inicio de la Iniciar la Cambio de la Salida de impulsos SPED(885)
salida de salida a la velocidad Frecuencia de impulsos a una frecuencia (Continua)
impulsos velocidad (frecuencia) especificada.
especificada en un paso Frecuencia
objetivo

Tiempo
Ejecucin de SPED(885)

Cambio de la Cambiar la Cambio de la Frecuencia de impulsos Cambia la SPED(885)


configuracin velocidad en velocidad frecuencia (Continua)
un paso durante el (superior o inferior)
funciona- Frecuencia de la salida de
miento objetivo impulsos en un SPED(885)
(Continua)
Frecuencia actual paso.
Tiempo

Ejecucin de
SPED(885)

Detencin de Detencin Detencin Detiene la salida SPED(885)


la salida de de la salida inmediata Frecuencia de impulsos de impulsos (Continua)
impulsos de impulsos inmediatamente.
Frecuencia
actual INI(880)

Tiempo
Ejecucin de INI(880)

Detencin Detencin Frecuencia de impulsos Detiene la salida SPED(885)


de la salida inmediata de impulsos (Continua)
de impulsos Frecuencia inmediatamente.
actual SPED(885)
(continuo,
frecuencia objetivo
Tiempo de 0 Hz)

Ejecucin de SPED(885)

Posicionamiento en modo independiente


Al iniciarse una operacin en modo independiente, la salida de impulsos
continuar hasta que haya salido el nmero de impulsos especificado.

Nota 1. La salida de impulsos se detendr de inmediato si la CPU cambia al modo


PROGRAM.
2. El nmero de impulsos de salida debe configurarse cada vez que se
reinicie la salida.
3. El nmero de impulsos de salida debe configurarse de antemano con la
instruccin PULS(881). No ser posible la salida de impulsos con la
instruccin SPED(885) si antes no se ejecuta la instruccin PULS(881).

844
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

4. La direccin configurada en el operando SPED(885) se ignorar si el


nmero de impulsos se configura con PULS(881) como valor absoluto.
Operacin Empleo Aplicacin Cambios de frecuencia Descripcin Proce-
dimiento/
instruc-
ciones
Inicio de la Iniciar la Posicionamie Frecuencia de Inicia la salida de PULS(886)
salida de salida a la nto sin Nmero especificado de impulsos a una
impulsos velocidad aceleracin ni impulsos impulsos (especificado frecuencia especifi-
espe- deceleracin mediante PULS(886)) cada y se detiene SPED(885)
cificada Frecuencia inmediatamente (Independiente)
objetivo cuando ha salido el
nmero especificado
de impulsos.
Tiempo
Nota No es posible
Ejecucin de Da salida al nmero cambiar la
SPED(885) especificado de impulsos y, posicin ob-
a continuacin, se detiene. jetivo (nmero
especificado de
impulsos)
durante el
posicionamiento.
Cambio de la Cambiar Cambio de la Nmero El nmero de SPED(885) puede PULS(886)
configuracin la velo- velocidad en especificado
impulsos especificado ejecutarse durante el
cidad en un paso Frecuencia de impulsos
posicionamiento con el
de impulsos (especificado mediante PULS(886) SPED(885)
un paso durante el mediante no cambia. fin de cambiar
Nueva (Independiente)
funciona- frecuencia
PULS(886)) (aumentar o reducir) la
miento objetivo frecuencia de la salida
Frecuencia de impulsos en un SPED(885)
objetivo paso. (Independiente)
original La posicin objetivo
Tiempo (nmero especificado
Ejecucin de SPED(885) de impulsos) no
(modo independiente) SPED(885) (modo cambia.
independiente) se ha vuelto
a ejecutar para cambiar la
frecuencia objetivo (la
posicin objetivo no cambia).

Detencin de Detener la Detencin Frecuencia de impulsos Detiene la salida de PULS(886)


la salida de salida de inmediata impulsos inmediata-
impulsos impulsos mente y borra el
(no se Frecuencia nmero de impulsos SPED(885)
actual (Independiente)
mantiene establecido de salida.
el nmero
de impul- INI(880)
sos con- Tiempo
figurado). PLS2(887)
Ejecucin de Ejecucin
SPED(885) de INI(880) INI(880)

Detencin Detencin Detiene la salida de PULS(886)


de la inmediata Frecuencia de impulsos impulsos inmedia-
salida de tamente y borra el
impulsos nmero de impulsos SPED(885)
Frecuencia actual (Independiente)
(No se establecido de salida.
mantiene
el nmero SPED(885),
de impul- (independiente,
sos esta- Tiempo frecuencia
blecido). Ejecucin de Ejecucin de objetivo de
SPED(885) SPED(885) 0 Hz)

845
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si se excede el rango especificado para P, M o F.
de error ON si ya se estn ejecutando PLS2(887) u ORG(889) para
controlar la salida de impulsos del puerto especificado.
ON si se utiliza SPED(885) o INI(880) para cambiar el modo
entre salida continua y salida independiente durante la
salida de impulsos.
ON si se ejecuta SPED(885) en una tarea de interrupcin al
ejecutarse una instruccin de control de salida de impulsos
en el curso de una tarea cclica.
ON si SPEC(885) se ejecuta en modo independiente con un
nmero absoluto de impulsos y no se ha establecido el
origen.

Ejemplo Cuando en el siguiente ejemplo de programacin CIO 000000 se pone en


ON, PULS(886) especifica el nmero de impulsos de salida de la salida de
impulsos 0. Se configura un valor absoluto de 5.000 impulsos. A continuacin
se ejecuta SPED(885) para iniciar la salida de impulsos empleando el mtodo
CW/CCW en direccin horaria y en modo independiente, a una frecuencia
objetivo de 500 Hz.
000000
@PULS D00100 1388
Nmero de impulsos de salida: 5.000
#0000 D00101 0000
#0000
D00110 01F4
D00100 Frecuencia objetivo: 500 Hz
D00111 0000

@SPED
Frecuencia de impulsos
#0000
#0001
Frecuencia
D00110 objetivo:
500 Hz
5.000 impulsos

Tiempo
PULS(881) y
SPED(885) se han ejecutado.

3-21-6 SET PULSES: PULS(886) (slo CPUs CJ1M-CPU21/22/23)


Empleo PULS(886) se utiliza para establecer el nmero de impulsos de salida de las
salidas arrancadas con SPED(885) o ACC(888) en modo independiente.
Esta instruccin slo es compatible con las CPUs CJ1M-CPU21/22/23.

Smbolo de diagrama de
rels PULS(886)
P P: Especificador de puerto

T T: Tipo de impulso

N N: Nmero de impulsos

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PULS(886)
Se ejecuta una vez en el diferencial ascendente @PULS(886)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

846
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos P: Especificador de puerto


El especificador de puerto indica el puerto. Los parmetros configurados en
D y en N se aplicarn a la siguiente instruccin SPED(885) o ACC(888) en la
que se haya especificado la misma ubicacin de salida de puerto.
P Puerto
0000 hexadecimal Salida de impulsos 0
0001 hexadecimal Salida de impulsos 1

T: Tipo de impulso
T especifica los tipos de impulsos de salida:
T Tipo de impulso
0000 hexadecimal Relativa
0001 hexadecimal Absoluta

N y N+1: Nmero de impulsos


N y N+1 especifican el nmero de impulsos de salidas de impulsos relativas o
bien la posicin objetivo absoluta de impulsos absolutos, en formato
hexadecimal de 8 dgitos.
15 0
N Canal inferior con nmero de impulsos
N+1 Canal superior con nmero de impulsos

Salida de impulsos relativos:


0 a 2.147.483.647 (0000 0000 a 7FFF FFFF hexadecimal)

Salida de impulsos absolutos:


2.147.483.648 a 2.147.483.647 (8000 0000 a 7FFF FFFF hexadecimal)

El nmero real de impulsos de movimiento que saldrn ser el siguiente:


En el caso de salida de impulsos relativos, el nmero de impulsos de
movimiento = el nmero configurado de impulsos. En el caso de salida de
impulsos absolutos, el nmero de impulsos de movimiento = el nmero
configurado de impulsos el valor actual.

Especificaciones del
operando rea P T N
rea CIO --- --- CIO 0000 hasta CIO 6142
rea de Trabajo --- --- W000 hasta W510
rea de bit en Espera --- --- H000 hasta H510
rea Bit Auxiliar --- --- A448 hasta A958
rea Temporizador --- --- T0000 hasta T4094
rea Contador --- --- C0000 hasta C4094
rea DM --- --- D00000 hasta D32766
rea EM sin banco --- --- ---
rea EM con Banco --- --- ---
Direcciones DM/EM --- --- @ D00000 hasta @ D32767
indirectas en binario
Direcciones DM/EM --- --- *D00000 hasta *D32767
indirectas en BCD
Constantes Vase la Vase la Vase la descripcin del
descripcin descripcin del operando.
del operando. operando.
Registros de datos --- --- ---

847
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

rea P T N
Registros de ndice --- --- ---
Direccionamiento --- --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047, IR0
registros de ndice hasta
2048 hasta +2047, IR15
DR0 hasta DR15, IR0 hasta
IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin PULS(886) configura el tipo y nmero de impulsos especificados en T y N


para el puerto especificado en P. La salida real de impulsos se iniciar en una
fase posterior del programa utilizando SPED(885) o ACC(888) en modo
independiente.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se excede el rango especificado para P, T o N.
error ON si PULS(886) se ejecuta en un puerto del que ya
estn saliendo impulsos.
ON si se ejecuta PULS(886) en una tarea de interrupcin
al ejecutarse una instruccin de control de salida de
impulsos en el curso de una tarea cclica.

Precauciones Se producir un error si PULS(886) se ejecuta cuando ya estn saliendo


impulsos. Para evitarlo, utilice la versin diferenciada (@PULS(886)) de
la instruccin o bien una condicin de ejecucin que se ponga en ON
durante un solo scan.
El nmero calculado de salida de impulsos para PULS(886) no cambiar
aunque se utilice INI(880) para modificar el valor actual de la salida de
impulsos.
La direccin configurada para SPED(885) o ACC(888) se ignorar si el
nmero de impulsos se configura con PULS(881) como valor absoluto.
Es posible salir fuera del rango del valor absoluto del nmero de salidas
de impulsos (2.147.483.648 hasta 2.147.483.647).

Ejemplo Cuando en el siguiente ejemplo de programacin CIO 000000 se pone en


ON, PULS(886) especifica el nmero de impulsos de salida de la salida de
impulsos 0. Se configura un valor absoluto de 5.000 impulsos. A continuacin
se ejecuta SPED(885) para iniciar la salida de impulsos empleando el mtodo
CW/CCW en direccin horaria y en modo independiente, a una frecuencia
objetivo de 500 Hz.
000000
@PULS D00100 1388
Nmero de impulsos de salida: 5.000
#0000 D00101 0000
#0000
D00110 01F4
D00100 Frecuencia objetivo: 500 Hz
D00111 0000

@SPED
#0000
#0001
D00110

848
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

3-21-7 PULSE OUTPUT: PLS2(887) (slo CPUs CJ1M-CPU21/22/23)


Empleo PLS2(887) da salida al nmero especificado de impulsos al puerto especifi-
cado. La salida de impulsos se inicia a la frecuencia de inicio especificada,
acelera hasta la frecuencia objetivo a la velocidad de aceleracin especifi-
cada, desacelera a la velocidad de deceleracin especificada y se detiene
aproximadamente a la misma frecuencia que la de inicio. Slo se admite el
posicionamiento en modo independiente.
PLS2(887) tambin puede ejecutarse durante la salida de impulsos para
cambiar el nmero, la frecuencia objetivo, la velocidad de aceleracin o la
velocidad de deceleracin de los impulsos de salida. As, PLS2(887) podr
utilizarse para cambios graduales de velocidad con diferentes velocidades de
aceleracin y deceleracin, cambios de posicin objetivo, cambios de
velocidad objetivo o cambios de direccin.
Esta instruccin slo es compatible con las CPUs CJ1M-CPU21/22/23.

Smbolo de diagrama de
rels PLS2(887)
P
P: Especificador de puerto
M M: Modo de salida
S: Primer canal de la tabla
S
de configuracin
A F: Primer canal de la frecuencia de inicio

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PLS2(887)
Se ejecuta una vez en el diferencial ascendente @PLS2 (887)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos P: Especificador de puerto


El especificador de puerto indica el puerto.
P Puerto
0000 hexadecimal Salida de impulsos 0
0001 hexadecimal Salida de impulsos 1

M: Modo de salida
El contenido de M especifica los parmetros de salida de impulsos:

15 12 11 87 4 3 0
M

Modo
0 hexadecimal: Impulsos relativos
1 hexadecimal: Impulsos absolutos
Direccin
0 hexadecimal: CW
1 hexadecimal: CCW
Mtodo de salida de impulsos (ver nota)
0 hexadecimal: CW/CCW
1 hexadecimal: Impulso + direccin
Siempre 0 hexadecimal
Nota: Utilice el mismo mtodo de salida de impulsos al utilizar las salidas de impulsos 0 y 1.

849
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

S: Primer canal de la tabla de configuracin


El contenido de S hasta S+5 controla la salida de impulsos, tal y como puede
apreciarse en los siguientes diagramas.
15 0
S1 Relacin de aceleracin 1 a 2.000 Hz (0001 a 07D0 hexadecimal)
S1+1 Relacin de deceleracin 1 a 2.000 Hz (0001 a 07D0 hexadecimal)

Especifique el aumento o la disminucin de la frecuencia por perodo de control de impulsos (4 ms).

S1+2 Canal inferior con frecuencia objetivo 1 a 100.000 Hz


(0000 0000 hasta 0001 86A0 hexadecimal)
S1+3 Canal superior con frecuencia objetivo

Especifique la frecuencia despus de la aceleracin en Hz.

S1+4 Canal inferior con nmero de impulsos de salida

S1+5 Canal superior con nmero de impulsos de salida

Salida de impulsos relativos: 0 a 2.147.483.647


(0000 0000 a 7FFF FFFF hexadecimal)

Salida de impulsos absolutos: -2.147.483.648 a 2.147.483.647


(8000 0000 a 7FFF FFFF hexadecimal)

El nmero real de impulsos de movimiento que saldrn ser el siguiente:


En el caso de salida de impulsos relativos, el nmero de impulsos de
movimiento = el nmero configurado de impulsos. En el caso de salida de
impulsos absolutos, el nmero de impulsos de movimiento = el nmero
configurado de impulsos el valor actual.
F: Primer canal de la frecuencia de inicio
La frecuencia de inicio se especifica en F y F+1.
15 0
A Canal inferior con frecuencia de inicio 0 a 100.000 Hz
(0000 0000 hasta 0001 86A0
F+1 Canal superior con frecuencia de inicio hexadecimal)

Especifique la frecuencia de inicio en Hz.

Especificaciones del
operando
rea P M S A
rea CIO --- --- CIO 0000 hasta CIO 6138 CIO 0000 hasta CIO 6142
rea de Trabajo --- --- W000 hasta W506 W000 hasta W510
rea de bit en Espera --- --- H000 hasta H506 H000 hasta H510
rea Bit Auxiliar --- --- A448 hasta A954 A448 hasta A958
rea Temporizador --- --- T0000 hasta T4090 T0000 hasta T4094
rea Contador --- --- C0000 hasta C4090 C0000 hasta C4094
rea DM --- --- D00000 hasta D32762 D00000 hasta D32766
rea EM sin banco --- --- --- ---
rea EM con Banco --- --- --- ---
Direcciones DM/EM --- --- @ D00000 hasta @ D32767 @ D00000 hasta @ D32767
indirectas en binario
Direcciones DM/EM --- --- *D00000 hasta *D32767 *D00000 hasta *D32767
indirectas en BCD
Constantes Vase la Vase la --- Vase la descripcin del
descripcin del descripcin del operando.
operando. operando.
Registros de datos --- --- --- ---

850
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

rea P M S A
Registros de ndice --- --- --- ---
Direccionamiento --- --- ,IR0 hasta ,IR15 ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047, IR0 2048 hasta +2047, IR0
registros de ndice hasta hasta
2048 hasta +2047, IR15 2048 hasta +2047, IR15
DR0 hasta DR15, IR0 hasta DR0 hasta DR15, IR0 hasta
IR15 IR15
,IR0+(++) hasta ,IR15+(++) ,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15 ,( )IR0 hasta, ( )IR15

Descripcin PLS2(887) inicia la salida de impulsos en el puerto especificado en P,


utilizando el modo especificado en M y a la frecuencia de inicio especificada
en F (1 en el diagrama). La frecuencia se incrementa en cada perodo de
control de impulsos (4 ms) en la velocidad de aceleracin especificada en S,
hasta alcanzar la frecuencia objetivo especificada en S (2 en el diagrama).
Una vez alcanzada la frecuencia objetivo, la aceleracin se detendr y la
salida de impulsos continuar a velocidad constante (3 en el diagrama).
El punto de deceleracin se calcula a partir del nmero de impulsos de salida
y de la velocidad de deceleracin especificados en S. Una vez alcanzado
dicho punto, la frecuencia disminuye cada perodo de control de impulsos
(4 ms) a la velocidad de deceleracin especificada en S hasta alcanzar la
frecuencia de inicio especificada en S. En ese momento, la salida de
impulsos se detiene (4 en el diagrama).
La salida de impulsos se inicia cada vez que se ejecuta PLS2(887).
Normalmente ser suficiente utilizar la versin diferenciada (@PLS2(887)) de
la instruccin o bien una condicin de ejecucin que se ponga en ON durante
un solo scan.
Frecuencia de impulsos
C

Frecuencia objetivo B D

Frecuencia de inicio A
Tiempo

PLS2(887) se ha ejecutado.

PLS2(887) slo puede utilizarse para posicionamiento.


En las CPUs CJ1M, PLS2(887) podr ejecutarse durante la salida de
impulsos de ACC(888) en modo independiente o continuo, as como durante
la aceleracin o deceleracin, o a velocidad constante. (Ver nota). ACC(888)
tambin podr ejecutarse durante la salida de impulsos PLS2(887) en el
curso de la aceleracin o deceleracin, o mientras est en velocidad
constante.
Nota La ejecucin de PLS2(887) durante el control de velocidad con ACC(888)
(modo continuo) con la misma frecuencia objetivo que ACC(888) podr utili-
zarse para interrumpir la alimentacin de una distancia fija. En esta aplica-
cin, PLS2(887) no ejecutar la aceleracin. Pero si la velocidad de
aceleracin se configura como 0, el indicador de error se pondr en ON y
PLS2(887) no se ejecutar. Configure siempre la velocidad de aceleracin
con un valor distinto de 0.

851
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Posicionamiento en modo independiente


Nota La salida de impulsos se detendr de inmediato si la CPU cambia al modo
PROGRAM.
Opera- Empleo Aplicacin Cambios de frecuencia Descripcin Procedi-
cin miento/
instruccio-
nes
Inicio de Control Posicionamiento Frecuencia de impulsos Nmero especificado Acelera y decelera a PLS2(887)
la salida trapezoi- con aceleracin y de impulsos relaciones fijas. La
de dal com- deceleracin Frecuencia
salida de impulsos se
impul- plejo trapezoidal (Se Relacin de detiene cuando ha
objetivo Relacin de
deceleracin
sos utilizan relacio- aceleracin salido el nmero de
nes distintas para Frecuencia impulsos especificado
la aceleracin y Frecuencia de (Ver nota).
la deceleracin; de inicio detencin
velocidad de Tiempo Nota Es posible cam-
inicio) Ejecucin de La salida se detiene. biar la posicin
PLS2(887) Frecuenci Punto de deceleracin objetivo (nmero
El nmero de especificado de
impulsos puede a objetivo
alcanzada. impulsos)
cambiarse durante el posi-
durante el cionamiento.
posicionamiento.
Cambio Cambiar Cambio de la PLS2(887) puede eje- PLS2(887)
de la paulatina- velocidad Frecuencia Nmero especificado de cutarse durante el
de impulsos impulsos (especificado

configu- mente la objetivo mediante PULS(886)) posicionamiento con el
racin velocidad (frecuencia) Frecuencia fin de cambiar la rela- PLS2(887)
objetivo
(con rela- durante el modificada cin de aceleracin, de
ciones de posicionamiento Frecuencia Relacin de
aceleracin o
deceleracin y la fre- PULS(886)
acelera- (relaciones de objetivo deceleracin cuencia objetivo.
cin y
aceleracin y Nota Para evitar que
decelera- deceleracin Tiempo ACC(888)
cin dis- Ejecucin de la posicin obje- (Indepen-
distintas) tivo se cambie
tintas) ACC(888) (modo diente)
independiente) PLS2(887) se ha ejecutado para de forma inten-
cambiar la frecuencia objetivo y cionada, debe
especificarse la PLS2(887)
las relaciones de aceleracin o
deceleracin. (La posicin objetivo posicin objetivo
no cambia). La posicin objetivo original en las
original se vuelve a especificar.) coordenadas
absolutas.
Cambiar Cambio de la PLS2(887) puede eje- PLS2(887)
la posi- posicin objetivo Nmero Nmero de impulsos cutarse durante el
cin obje- durante el posi- Frecuencia especificado modificado mediante posicionamiento con el
tivo cionamiento (fun- de impulsos de impulsos PLS2(887). fin de cambiar la posi- PLS2(887)
cin de inicio cin objetivo (nmero PULS(886)
mltiple) Frecuencia de impulsos), la rela-
objetivo Relacin de cin de aceleracin, de
aceleracin o
deceleracin y la fre- ACC(888)
deceleracin
cuencia objetivo. (Indepen-
Tiempo diente)
Ejecucin de Nota Si no puede
PLS2(887) mantenerse una PLS2(887)
PLS2(887) se ha ejecutado velocidad cons-
para cambiar la posicin tante tras cam-
objetivo (la frecuencia objetivo biar la configu-
y las relaciones de aceleracin racin, se produ-
o deceleracin no cambian). cir un error y la
operacin origi-
nal continuar
hasta la posi-
cin objetivo ori-
ginal.

852
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Opera- Empleo Aplicacin Cambios de frecuencia Descripcin Procedi-


cin miento/
instruccio-
nes
Cambio Cambiar Cambio de la Nmero de Nmero de impulsos
PLS2(887) puede eje- PULS(886)
de con- paulatina- posicin objetivo impulsos modificado mediante cutarse durante el
figura- mente la y la velocidad Frecuencia especificado PLS2(887). posicionamiento con el
cin, posicin objetivo (frecuen- de impulsos mediante
PLS2(887). fin de cambiar la posi- ACC(888)
Frecuencia (Indepen-
conti- objetivo y cia) durante el objetivo cin objetivo (nmero
nuacin la veloci- posicionamiento modificada de impulsos), la rela- diente)
dad (funcin de inicio Frecuencia Relacin de cin de aceleracin, de
mltiple) objetivo aceleracin o
deceleracin y la fre- PLS2(887)
deceleracin
cuencia objetivo.
Ejecucin de Tiempo Nota Si no puede
PLS2(887) mantenerse una
PLS2(887) se ha ejecutado para cambiar velocidad cons-
la frecuencia objetivo y las relaciones de tante tras cam-
aceleracin y deceleracin. biar la configu-
racin, se produ-
cir un error y la
operacin origi-
nal continuar
hasta la posi-
cin objetivo ori-
ginal.
Cambio de las PLS2(887) puede eje- PLS2(887)
relaciones de Nmero de impulsos cutarse durante el
Frecuencia especificado por
aceleracin y de impulsos Relacin de
posicionamiento
deceleracin Nueva
aceleracin n PLS2(887) #N. (aceleracin o decele- PLS2(887)
durante el posi- frecuencia Relacin de acele- racin) con el fin de PULS(886)
objetivo
cionamiento (fun- Frecuencia
racin 3
cambiar la relacin de
Relacin de ace-
leracin 2
cin de inicio objetivo Relacin de aceleracin o de dece-
mltiple) original
acelera-
cin 1 leracin. ACC(888)
Tiempo (Indepen-
Ejecucin de diente)
PLS2(887) #1 Ejecucin de PLS2(887) #N
Ejecucin de PLS2(887) #3
Ejecucin de PLS2(887)
PLS2(887) #2
Cambiar Cambio de la Nmero especificado PLS2(887) puede eje- PLS2(887)
de direc- direccin durante Frecuencia de impulsos cutarse durante el
cin el posiciona- de impulsos Cambio de direccin en la posicionamiento con
PLS2(887)
miento relacin de deceleracin especificacin de
Frecuencia especificada impulsos absolutos PULS(886)
objetivo Nmero de impulsos con el fin de cambiar a
(posicin) modificado impulsos absolutos e
por PLS2(887) invertir la direccin. ACC(888)
(Indepen-
Tiempo diente)
Ejecucin
de PLS2
(887) Ejecucin de
PLS2(887) PLS2(887)

Deten- Deten- Detencin Frecuencia de impulsos Detiene la salida de PLS2(887)


cin de cin de la inmediata impulsos inmediata-
la salida salida de mente y borra el
de impulsos Frecuencia nmero de impulsos de INI(880)
impul- (No se actual salida.
sos mantiene
el nmero
de impul- Tiempo
sos esta-
blecido). Ejecucin de Ejecucin
SPED(885) de INI(880)

Deten- Deceleracin Frecuencia de impulsos Decelera la salida de PLS2(887)


cin de la hasta detenerse impulsos hasta que se
salida de detiene.
impulsos Frecuencia ACC(888)
Relacin de (indepen-
paulatina- actual deceleracin
mente. diente, fre-
(No se cuencia
Frecuencia objetivo de
mantiene objetivo = 0 Tiempo
el nmero 0 Hz)
de impul- Ejecucin de Ejecucin de
sos esta- PLS2(887) ACC(888)
blecido.)

853
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Nota Control triangular


Si el nmero especificado de impulsos es menor que el nmero necesario
para alcanzar la frecuencia objetivo y volver a cero, la funcin reducir
automticamente el tiempo de aceleracin o deceleracin y realizar un
control triangular (slo aceleracin y deceleracin). No se producir ningn
error.

Nmero de impulsos
Frecuencia especificado
de impulsos (especificado con
PLS2(887))
Frecuencia
objetivo

Tiempo
Ejecucin de
PLS2(887)

Alternancia entre control de velocidad en modo continuo y


posicionamiento en modo independiente
Aplicacin de Cambios de frecuencia Descripcin Proce-
ejemplo dimiento/
instruc-
ciones
Cambio del control PLS2(887) puede ACC(888)
de velocidad a Da salida al nmero de ejecutarse durante (Continua)
posicionamiento de impulsos especificado en una operacin de
PLS2(887) (Es posible utilizar
distancia fija control de velocidad
durante el especificaciones de impulsos iniciada mediante PLS2(887)
Frecuencia relativas y absolutas)
funcionamiento de impulsos ACC(888) con el fin
de cambiar a una
Frecuencia operacin de
objetivo posicionamiento.

Tiempo
Ejecucin de
ACC(888)
(modo continuo) Ejecucin de
PLS2(887)

Interrupcin de Frecuencia de impulsos


distancia fija
Frecuencia
actual

Tiempo
Ejecucin de
ACC(888)
Ejecucin de PLS2(887)
(modo continuo)
con las siguientes
Nmero de impulsos = nmero de
impulsos hasta la detencin
Especificacin de impulsos relativos
Frecuencia objetivo =
frecuencia actual
Relacin de aceleracin =
0001 a 07D0 hexadecimal
Relacin de deceleracin =
relacin de deceleracin objetivo

854
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se excede el rango especificado para P, M, S o F.
error ON si PLS2(887) se ejecuta en un puerto del que ya
estn saliendo impulsos controlados mediante
SPED(885) u ORG(889).
ON si se ejecuta PLS2(887) en una tarea de interrupcin
al ejecutarse una instruccin de control de salida de
impulsos en el curso de una tarea cclica.
ON si se ejecuta PLS2(887) para una salida de impulsos
absoluta sin haberse establecido el origen.

Ejemplo Cuando en el siguiente ejemplo de programacin CIO 000000 se pone en


ON, PLS2(887) inicia la salida de impulsos a partir de la salida de impulsos 0
con una especificacin de impulsos absoluta de 100.000 impulsos. La salida
de impulsos acelera a una velocidad de 500 Hz cada 4 ms a partir de 200 Hz,
hasta alcanzar la velocidad objetivo de 50 kHz. A partir del punto de
deceleracin, la salida de impulsos disminuye a una velocidad de 250 Hz
cada 4 ms hasta alcanzar la velocidad de inicio de 200 Hz. En ese momento,
la salida de impulsos se detiene.
000000
@PLS2 D00100 01F4 Velocidad de aceleracin: 500 Hz/4 ms
#0000 D00101 00FA Velocidad de deceleracin: 250 Hz/4 ms
#0000 D00102 C350
Frecuencia objetivo: 50 kHz
D00100 D00103 0000
D00110 D00104 86A0
Nmero de la salida de impulsos: 100.000 impulsos
D00105 0001

Frecuencia de impulsos D00110 00C8


Frecuencia de inicio: 200 Hz
D00111 0000
Frecuencia objetivo
50 kHz

100.000 impulsos
Frecuencia de inicio
200 Hz
Tiempo

PLS2(887) se ha ejecutado.

3-21-8 ACCELERATION CONTROL: ACC(888) (slo CJ1M-CPU21/22/23)


Empleo ACC(888) ejecuta la salida de impulsos al puerto de salida especificado, a la
frecuencia especificada y con la velocidad de aceleracin y deceleracin
especificada. (La velocidad de aceleracin es idntica a la velocidad de dece-
leracin.) Es posible tanto el control de velocidad en modo constante como el
posicionamiento en modo independiente. Para el posicionamiento se utiliza
ACC(888) en combinacin con PULS(886). ACC(888) tambin puede ejecu-
tarse durante la salida de impulsos para cambiar la frecuencia objetivo o la
velocidad de aceleracin/deceleracin, permitiendo as cambios de velocidad
paulatinos (graduales).
Esta instruccin slo es compatible con las CPUs CJ1M-CPU21/22/23.

Smbolo de diagrama de
rels
ACC(888)
P P: Especificador de puerto
M M: Modo de salida
S: Primer canal de la tabla
S de configuracin

855
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ACC(888)
Se ejecuta una vez en el diferencial ascendente @ACC(888)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos P: Especificador de puerto


El especificador de puerto especifica el puerto desde donde saldrn los
impulsos.
P Puerto
0000 hexadecimal Salida de impulsos 0
0001 hexadecimal Salida de impulsos 1

M: Modo de salida
El contenido de M especifica los parmetros de salida de impulsos:
15 12 11 87 4 3 0
M

Modo
0 hexadecimal: Modo continuo
1 hexadecimal: Modo independiente
Direccin
0 hexadecimal: CW
1 hexadecimal: CCW
Mtodo de salida de impulsos (ver nota)
0 hexadecimal: CW/CCW
1 hexadecimal: Impulso + direccin
Siempre 0 hexadecimal
Nota: Utilice el mismo mtodo de salida de impulsos al utilizar las salidas de impulsos 0 y 1.

S: Primer canal de la tabla de configuracin


El contenido de S hasta S+2 controla la salida de impulsos, tal y como puede
apreciarse en los siguientes diagramas.
15 0
S Relacin de aceleracin o deceleracin 1 a 2.000 Hz (0001 a 07D0 hexadecimal)
Especifique el aumento o la disminucin de la frecuencia
por perodo de control de impulsos (4 ms).

S+1 Canal inferior con frecuencia objetivo 0 a 100.000 Hz


(0000 0000 hasta 0001 86A0 hexadecimal)
S+2 Canal superior con frecuencia objetivo
Especifique la frecuencia despus de la aceleracin en Hz.

Especificaciones del
operando rea P M S
rea CIO --- --- CIO 0000 hasta CIO 6141
rea de Trabajo --- --- W000 hasta W509
rea de bit en Espera --- --- H000 hasta H509
rea Bit Auxiliar --- --- A448 hasta A957
rea Temporizador --- --- T0000 hasta T4093
rea Contador --- --- C0000 hasta C4093
rea DM --- --- D00000 hasta D32765
rea EM sin banco --- --- ---
rea EM con Banco --- --- ---
Direcciones DM/EM --- --- @ D00000 hasta @ D32767
indirectas en binario

856
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

rea P M S
Direcciones DM/EM --- --- *D00000 hasta *D32767
indirectas en BCD
Constantes Vase la Vase la ---
descripcin descripcin
del operando. del operando.
Registros de datos --- --- ---
Registros de ndice --- --- ---
Direccionamiento --- --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0
registros de ndice hasta 2048 hasta +2047
,IR15
DR0 hasta DR15, IR0 hasta
IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin ACC(888) inicia la salida de impulsos en el puerto especificado en P,


utilizando el modo especificado en M y la frecuencia objetivo y velocidad de
aceleracin/deceleracin especificados en S. La frecuencia se incrementar
en cada perodo de control de impulsos (4 ms) a la velocidad de aceleracin
especificada en S, hasta alcanzar la frecuencia objetivo especificada en S.
La salida de impulsos se inicia cada vez que se ejecuta ACC(888).
Normalmente ser suficiente utilizar la versin diferenciada (@ACC(888)) de
la instruccin o bien una condicin de ejecucin que se ponga en ON durante
un solo scan.
Frecuencia de impulsos

Relacin de aceleracin
o deceleracin

Frecuencia
objetivo

Tiempo

ACC(888) se ha ejecutado. ACC(888) se ha ejecutado.

En el modo independiente, la salida de impulsos se detendr automtica-


mente cuando haya salido el nmero de impulsos especificado. En modo
continuo, la salida de impulsos continuar hasta que el programa la detenga.
Si durante la salida de impulsos se intenta alternar entre los modos indepen-
diente y continuo se producir un error.
En las CPUs CJ1M, PLS2(887) podr ejecutarse durante la salida de impul-
sos de ACC(888) en modo independiente o continuo, as como durante la
aceleracin o deceleracin, o a velocidad constante. (Ver nota). ACC(888)
tambin podr ejecutarse durante la salida de impulsos PLS2(887) en el
curso de la aceleracin o deceleracin, o mientras est en velocidad cons-
tante.
Nota La ejecucin de PLS2(887) durante el control de velocidad con ACC(888)
(modo continuo) con la misma frecuencia objetivo que ACC(888) podr utili-
zarse para interrumpir la alimentacin de una distancia fija. En esta aplica-
cin, PLS2(887) no ejecutar la aceleracin. Pero si la velocidad de
aceleracin se configura como 0, el indicador de error se pondr en ON y
PLS2(887) no se ejecutar. Configure siempre la velocidad de aceleracin
con un valor distinto de 0.

857
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Control de velocidad en modo continuo


La salida de impulsos continuar hasta que el programa la detenga.
Nota La salida de impulsos se detendr de inmediato si la CPU cambia al modo
PROGRAM.
Operacin Empleo Aplicacin Cambios de frecuencia Descripcin Proce-
dimiento/
instruc-
ciones
Inicio de la Iniciar la Aumento de la Frecuencia de impulsos Salida de impulsos ACC(888)
salida de salida con la velocidad y cambio de la (Continua)
impulsos aceleracin y (frecuencia) a frecuencia a una
velocidad una aceleracin Frecuencia Relacin de aceleracin/
especificadas fija objetivo aceleracin desaceleracin fija.
o
Frecuencia actual deceleracin

Tiempo
Ejecucin de
ACC(888)

Cambio de Cambiar Cambio de la Frecuencia de impulsos Cambia la ACC(888) o


la configu- gradualmente velocidad de frecuencia de la SPED(885)
racin la velocidad forma paulatina Frecuencia frecuencia actual a (Continua)
durante el objetivo Relacin de una velocidad fija.
funcionamiento aceleracin Es posible acelerar
o
o decelerar la ACC(888)
deceleracin
Frecuencia actual (Continua)
frecuencia.
Tiempo
Ejecucin de
ACC(888)

Cambio de la Frecuencia de impulsos Cambia la relacin ACC(888)


velocidad en Relacin de aceleracin n de aceleracin o (Continua)
una curva lineal Frecuencia Relacin de deceleracin
poligonal objetivo aceleracin 2 durante la
durante el Relacin de
aceleracin o la ACC(888)
aceleracin 1 (Continua)
funcionamiento deceleracin.
Frecuencia actual
Tiempo
Ejecucin de ACC(888)
Ejecucin de ACC(888)
Ejecucin de ACC(888)

858
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Operacin Empleo Aplicacin Cambios de frecuencia Descripcin Proce-


dimiento/
instruc-
ciones
Detencin Detener la Detencin Detiene ACC(888)
de la salida salida de inmediata Frecuencia de impulsos inmediatamente la (Continua)
de impulsos salida de impulsos.
impulsos Frecuencia
actual INI(880)
(continuo)

Tiempo
Ejecucin de ACC(888) Ejecucin de INI(880)

Detener la Detencin Detiene ACC(888)


salida de inmediata Frecuencia de impulsos inmediatamente la (Continua)
impulsos Frecuencia salida de impulsos.
actual SPED(885)
(continuo,
frecuencia
Tiempo objetivo de
Ejecucin de ACC(888) Ejecucin de SPED(885) 0)
Detener Deceleracin Decelera la salida ACC(888)
paulatinamen hasta detenerse Frecuencia de impulsos de impulsos hasta (Continua)
te la salida de Frecuencia detenerla.
Relacin de aceleracin
impulsos actual o deceleracin (valor
seleccionado al arrancar) Nota Si la opera- ACC(888)
cin se inici (continuo,
Frecuencia
con frecuencia
objetivo = 0 Tiempo ACC(888), objetivo de
Ejecucin de ACC(888)
Ejecucin de ACC(888) ser vlida la 0)
velocidad de
aceleracin/
deceleracin
original.
Si la opera-
cin se inici
con
SPED(885),
la velocidad
de acelera-
cin/decele-
racin
perder su
validez y la
salida de
impulsos se
detendr de
inmediato.

Posicionamiento en modo independiente


Al iniciarse una operacin en modo independiente, la salida de impulsos
continuar hasta que haya salido el nmero de impulsos especificado.
El punto de deceleracin se calcula a partir del nmero de impulsos de salida
y de la velocidad de deceleracin especificada en S. Una vez alcanzado
dicho punto, la frecuencia disminuye cada perodo de control de impulsos
(4 ms) a la velocidad de deceleracin especificada en S hasta que haya
salido el nmero de puntos especificados. En ese momento, la salida de
impulsos se detiene.

Nota 1. La salida de impulsos se detendr de inmediato si la CPU cambia al modo


PROGRAM.
2. El nmero de impulsos de salida debe configurarse cada vez que se
reinicie la salida.
3. El nmero de impulsos de salida debe configurarse de antemano con la
instruccin PULS(881). No ser posible la salida de impulsos con la
instruccin ACC(888) si antes no se ejecuta la instruccin PULS(881).
4. La direccin configurada en el operando ACC(888) se ignorar si el
nmero de impulsos se configura con PULS(881) como valor absoluto.

859
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Ope- Empleo Aplicacin Cambios de frecuencia Descripcin Proce-


racin dimiento/
instruc-ciones
Inicio de Control Posicionamient Nmero Acelera y decelera a PULS(886)
la salida trapezoidal o con Frecuencia de la misma relacin fija
impulsos especificado de
de simple aceleracin y y se detiene
impulso deceleracin impulsos inmediatamente ACC(888)
(Independiente)
s trapezoidal (se Frecuencia cuando ha salido el
utiliza la misma objetivo
Relacin de
aceleracin o nmero especificado
relacin para la deceleracin
de impulsos (Ver
aceleracin y la nota).
deceleracin; Tiempo
sin velocidad de Nota No es posible
inicio) Ejecucin de Da salida al nmero cambiar la
No es posible ACC(888) especificado de impulsos y, posicin obje-
cambiar el a continuacin, se detiene. tivo (nmero
nmero de especificado
impulsos de impulsos)
durante el durante el
posiciona- posicionamient
miento. o.
Cambio Cambiar Cambio de la Nmero ACC(888) puede PULS(886)
de la paulatinamen velocidad especificado de ejecutarse durante el
configu- te la objetivo impulsos El nmero de posicionamiento con
racin velocidad (frecuencia) Frecuencia (especificado el fin de cambiar la ACC(888) o
impulsos
(con durante el de impulsos mediante especificado relacin de SPED(885)
(Independiente)
relaciones de posicionamiento Frecuencia
objetivo
PULS(886)) mediante PULS(886) aceleracin o
aceleracin y (relacin de no cambia. deceleracin y la
modificada
deceleracin aceleracin = Frecuencia Relacin de frecuencia objetivo. ACC(888)
aceleracin o
idnticas) relacin de objetivo deceleracin La posicin objetivo (Independiente)
deceleracin) (nmero
Tiempo especificado de
Ejecucin de
ACC(888) (modo impulsos) no
independiente) cambia.
ACC(888) (modo independiente)
se ha vuelto a ejecutar para
cambiar la frecuencia objetivo
(la posicin objetivo no cambia,
aunque la relacin de
aceleracin o deceleracin s).

Detenci Detener la Detencin Frecuencia de impulsos La salida de PULS(886)


n de la salida de inmediata impulsos se
salida impulsos. (No Frecuencia detendr de
de se mantiene inmediato y se ACC(888)
actual (Independiente)
impul- el nmero de borrar el nmero de
sos impulsos impulsos de salida
establecido.) restantes. INI(880)
Tiempo
Ejecucin de Ejecucin de
ACC(888) INI(880)

Detener Deceleracin Frecuencia de impulsos Decelera la salida de PULS(886)


paulatinamen hasta detenerse impulsos hasta que
te la salida de se detiene.
impulsos. (No Frecuencia ACC(888) o
Relacin de Nota Si la operacin SPED(885)
se mantiene actual deceleracin
el nmero de se inici con (Independiente)
impulsos Frecuencia ACC(888),
establecido.) objetivo = 0 Tiempo ser vlida la
velocidad de ACC(888)
aceleracin/ (independiente,
Ejecucin de Ejecucin de independiente,
PLS2(887) ACC(888) deceleracin
original. frecuencia
Si la operacin objetivo de 0)
se inici con PLS2(887)
SPED(885),
la velocidad de
aceleracin/ ACC(888)
deceleracin (independiente,
perder su frecuencia
validez y la objetivo de 0)
salida de
impulsos se
detendr de
inmediato.

Nota Control triangular


Si el nmero especificado de impulsos es menor que el nmero necesario
para alcanzar la frecuencia objetivo y volver a cero, la funcin reducir
automticamente el tiempo de aceleracin o deceleracin y realizar un

860
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

control triangular (slo aceleracin y deceleracin). No se producir ningn


error.

Frecuencia Nmero de impulsos


de impulsos especificado
(especificado con
Frecuencia PLS2(887))
objetivo

Tiempo
Ejecucin de
PLS2(887)

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si se excede el rango especificado para P, M o S.
de error ON si se ha configurado la salida de impulsos utilizando
ORG(889) para el puerto especificado.
ON si se ejecuta ACC(888) para alternar entre los modos
continuo e independiente en un puerto del que ya estn
saliendo impulsos para SPED(885), ACC(888) o PLS2(887).
ON si se ejecuta ACC(888) en una tarea de interrupcin al
ejecutarse una instruccin de control de salida de impulsos
en el curso de una tarea cclica.
ON si se ejecuta ACC(888) para una salida de impulsos
absoluta, en modo independiente, sin haberse establecido el
origen.

Ejemplo Cuando en el siguiente ejemplo de programacin CIO 000000 se pone en


ON, ACC(888) inicia la salida de impulsos desde la salida de impulsos 0 en
modo continuo y en direccin horaria utilizando el mtodo CW/CCW. La
salida de impulsos acelera a una velocidad de 20 Hz cada 4 ms hasta
alcanzar la velocidad objetivo de 500 kHz. Cuando CIO 000001 se pone en
ON, ACC(888) cambiar a una velocidad de aceleracin de 10 Hz cada 4 ms
hasta alcanzar la frecuencia objetivo de 1000 Hz.
000000
@ACC D00100 0014 Relacin de aceleracin o deceleracin: 20 Hz
#0000 D00101 01F4
Frecuencia objetivo: 500 Hz
#0000 D00102 0000
D00100
D00105 000A Relacin de aceleracin o deceleracin: 10 Hz
000001
D00106 03E8
@ACC Frecuencia objetivo: 1.000 Hz
D00107 0000
#0000
#0000
D00105

Frecuencia de impulsos
Frecuencia
objetivo
1000 Hz

10 Hz/4 ms

500 Hz

20 Hz/4 ms

Tiempo

ACC(888) se ACC(888) se
ha ejecutado. ha ejecutado.

861
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

3-21-9 ORIGIN SEARCH: ORG(889) (slo CJ1M-CPU21/22/23)


Empleo ORG(889) ejecuta una operacin de bsqueda de origen o de vuelta al
origen.
Esta instruccin slo es compatible con las CPUs CJ1M-CPU21/22/23.
Bsqueda de origen
La salida de impulsos se realiza empleando el mtodo especificado para
accionar efectivamente el motor y establecer el origen en funcin de las
seales de entrada de proximidad de origen o de entrada de origen.
Retorno de origen
El sistema de posicionamiento se devuelve al origen establecido anterior-
mente.
Smbolo de diagrama de
rels ORG(889)
P P: Especificador
de puerto
C C: Datos de control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ORG(889)
Se ejecuta una vez en el diferencial ascendente @ORG(889)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos P: Especificador de puerto


El especificador de puerto especifica el puerto desde donde saldrn los
impulsos.
P Puerto
0000 hexadecimal Salida de impulsos 0
0001 hexadecimal Salida de impulsos 1

C: Datos de control
El valor de C determina el mtodo de bsqueda de origen.
15 12 11 87 4 3 0
C

Siempre 0 hexadecimal
Siempre 0 hexadecimal
Mtodo de salida de impulsos (ver nota)
0 hexadecimal: CW/CCW
1 hexadecimal: Impulso + direccin
Modo
0 hexadecimal: Bsqueda de origen
1 hexadecimal: Vuelta al origen
Nota: Utilice el mismo mtodo de salida de impulsos al utilizar las salidas de impulsos 0 y 1.

Especificaciones del
operando rea P C
rea CIO --- ---
rea de Trabajo --- ---
rea de bit en Espera --- ---

862
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

rea P C
rea Bit Auxiliar --- ---
rea Temporizador --- ---
rea Contador --- ---
rea DM --- ---
rea EM sin banco --- ---
rea EM con Banco --- ---
Direcciones DM/EM --- ---
indirectas en binario
Direcciones DM/EM --- ---
indirectas en BCD
Constantes Vase la descripcin del Vase la descripcin del
operando. operando.
Registros de datos --- ---
Registros de ndice --- ---
Direccionamiento --- ---
indirecto utilizando
registros de ndice

Descripcin ORG(889) ejecuta una operacin de bsqueda de origen o de vuelta al origen


en el puerto especificado en P y utilizando el mtodo especificado en C.
Para poder ejecutar ORG(889), se debern haber ajustado anteriormente los
siguientes parmetros en la configuracin del PLC. Consulte el Manual de
funcionamiento de las E/S incorporadas de la serie CJ para obtener ms
informacin.
Bsqueda de origen Vuelta al origen
Habilitacin o inhabilitacin de la funcin de bsqueda Velocidad inicial de
de origen bsqueda o vuelta al origen
Modo de operacin de bsqueda de origen Velocidad objetivo de vuelta
Configuracin de la operacin de bsqueda de origen al origen
Mtodo de deteccin de origen Relacin de aceleracin de
Configuracin de la direccin de bsqueda de origen vuelta al origen
Velocidad inicial de bsqueda o vuelta al origen Relacin de deceleracin de
vuelta al origen
Velocidad alta de bsqueda de origen
Velocidad de proximidad de bsqueda de origen
Compensacin de origen
Relacin de aceleracin de bsqueda de origen
Relacin de deceleracin de bsqueda de origen
Tipo de seal de entrada de lmite
Tipo de seal de entrada de proximidad de origen
Tipo de seal de entrada de origen
Cada vez que se ejecute ORG(889), se iniciar una bsqueda de origen o
una vuelta al origen. Normalmente ser suficiente utilizar la versin
diferenciada (@ORG(889)) de la instruccin o bien una condicin de
ejecucin que se ponga en ON durante un solo scan.
Bsqueda de origen (bits 12 hasta 15 de C = 0 hexadecimal)
ORG(889) iniciar la salida de impulsos utilizando el mtodo especificado en
velocidad inicial de bsqueda de origen (1 en el diagrama). La salida de
impulsos acelerar hasta alcanzar la alta velocidad de bsqueda de origen
utilizando la velocidad de aceleracin de bsqueda de origen (2 en el
diagrama). A continuacin, la salida de impulsos continuar a velocidad
constante hasta que la seal de entrada de proximidad de origen se ponga en
ON (3 en el diagrama). A partir de ese momento, la salida de impulsos
disminuir hasta alcanzar la velocidad de proximidad de bsqueda de origen
utilizando la velocidad de deceleracin de bsqueda de origen (4 en el
diagrama). A partir de ese momento, los impulsos saldrn a velocidad
constante hasta que la seal de entrada de origen se ponga en ON (5 en el
diagrama). La salida de impulsos se detendr cuando la seal de entrada de
origen se ponga en ON (6 en el diagrama).

863
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Una vez concluida la operacin de bsqueda de origen, el error de salida de


reset del contador se pondr en ON. No obstante, la operacin descrita
depender del modo operativo, del mtodo de deteccin de origen y de otros
parmetros. Consulte el Manual de funcionamiento de las E/S incorporadas
de la serie CJ para obtener ms informacin.
Seal de entrada de
proximidad de origen

Seal de entrada de origen


Frecuencia de impulsos
Velocidad alta
de bsqueda
de origen Relacin de
Relacin de C deceleracin de
aceleracin de B bsqueda de origen
D
bsqueda de origen Velocidad de
proximidad de E
bsqueda de origen
Velocidad inicial de F
A bsqueda de origen
Tiempo

ORG(889) se ha ejecutado. Parar


Vuelta al origen (bits 12 hasta 15 de C = 1 hexadecimal)
ORG(889) iniciar la salida de impulsos utilizando el mtodo especificado en
velocidad inicial de vuelta al origen (1 en el diagrama). La salida de impulsos
se acelerar hasta alcanzar la velocidad objetivo de vuelta al origen utilizando
la velocidad de aceleracin de vuelta al origen (2 en el diagrama) y la salida
de impulsos continuar a velocidad constante (3 en el diagrama). El punto de
deceleracin se calcula a partir del nmero de impulsos que falten para el
origen y de la velocidad de deceleracin. Una vez alcanzado dicho punto, la
salida de impulsos disminuir (4 en el diagrama) a la velocidad de
deceleracin de vuelta al origen hasta llegar a la velocidad de inicio de vuelta
al origen. En ese momento, la salida de impulsos se detendr en el origen (5
en el diagrama).
Frecuencia de impulsos Velocidad objetivo
de vuelta al origen
C Relacin de
B deceleracin de
Relacin de
D vuelta al origen
aceleracin de
vuelta al origen Velocidad
inicial de
vuelta al
A origen E
Tiempo

ORG(889) se Parar
ha ejecutado.

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si se excede el rango especificado para P o C.
de error ON si se especifica ORG(889) para un puerto durante la
salida de impulsos de SPED(885), ACC(888) o PLS2(887).
ON si se ejecuta ORG(889) en una tarea de interrupcin al
ejecutarse una instruccin de control de salida de impulsos
en el curso de una tarea cclica.
ON si los parmetros de bsqueda de origen o de vuelta al
origen especificados en la configuracin del PLC no estn
dentro del rango.
ON si la alta velocidad de bsqueda de origen es menor o
igual que la velocidad de proximidad de origen o bien si sta
es menor o igual que la velocidad inicial de bsqueda de
origen.
ON si la velocidad objetivo de vuelta al origen es menor o
igual que la velocidad inicial de vuelta al origen.
ON si se intenta ejecutar una operacin de vuelta al origen no
habindose establecido el origen.

864
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

Ejemplo Cuando en el siguiente ejemplo de programacin CIO 000000 se pone en


ON, ORG(889) inicia una operacin de vuelta al origen para la salida de
impulsos 0, ejecutndose la salida de impulsos con el mtodo CW/CCW.
Segn la configuracin del PLC, la velocidad inicial es de 100 pps, la
velocidad objetivo es de 200 pps y las velocidades de aceleracin y
deceleracin son de 50 Hz/4 ms.
000000 Velocidad
@ORG
#0000 Salida de impulsos 0 200 pps
Vuelta al origen,
#1000
mtodo CW/CWW
100 pps

Tiempo

ORG(889) se ha ejecutado. Salida detenida.

Los parmetros de configuracin del PLC son los siguientes:


Parmetro Configuracin
Velocidad de inicio de bsqueda de origen y de vuelta 0000 0064 hexadecimal:
al origen de la salida de impulsos 0 100 pps
Velocidad de vuelta al origen de la salida de impulsos 0 0000 00C8 hexadecimal:
200 pps
Velocidad de aceleracin de vuelta al origen de la 0032 hexadecimal:
salida de impulsos 0 50 hexadecimal/4 ms
Velocidad de deceleracin de vuelta al origen de la 0032 hexadecimal:
salida de impulsos 0 50 hexadecimal/4 ms

3-21-10 PULSE WITH VARIABLE DUTY FACTOR: PWM(891) (slo CJ1M-


CPU21/22/23)
Empleo PWM(891) se utiliza para la salida de impulsos desde el puerto especificado
con la relacin de ON/OFF especificada.
Esta instruccin slo es compatible con las CPUs CJ1M-CPU21/22/23.
Smbolo de diagrama de
rels PWM
P P: Especificador de puerto

F F: Frecuencia

D D: Factor de relacin de ON/OFF

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PWM(891)
Se ejecuta una vez en el diferencial ascendente @PWM(891)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK
Operandos P: Especificador de puerto
El especificador de puerto especifica el puerto desde donde saldrn los
impulsos.
P Puerto
0000 hexadecimal Salida de impulsos 0 (relacin de ON/OFF:
en incrementos del 1%)
0001 hexadecimal Salida de impulsos 1 (relacin de ON/OFF:
en incrementos del 1%)

865
Instrucciones de salida de impulsos/contador de alta velocidad Seccin 3-21

P Puerto
1000 hexadecimal Salida de impulsos 0 (relacin de ON/OFF:
(CPU CJ1M Ver. 2.0 solamente) en incrementos del 0,1%)
1001hex Salida de impulsos 1 (relacin de ON/OFF:
(CPU CJ1M Ver. 2.0 solamente) en incrementos del 0,1%)

F: Frecuencia
F especifica la frecuencia de la salida de impulsos entre 0,1 y 6.553,5 Hz
(unidades de 0,1 Hz, 0001 hasta FFFF hexadecimal). La precisin de la
salida real de la forma de onda de PMW(891) (en ciclo ON +5%/0%) se
aplica slo de 0,1 hasta 1.000 Hz debido a las limitaciones de los circuitos de
salida.
D: Factor de relacin de ON/OFF
D especifica la relacin ON/OFF de la salida de impulsos; es decir, el
porcentaje de tiempo durante el cual la salida est en ON. El valor de D debe
estar en el siguiente rango:
Anteriores a Ver. 2.0 2.0 CPUs CJ1M
0% y 100% (unidades de 1%, 0000 hasta 0064 hexadecimal)
Ver. 2.0 CPUs CJ1M
0,0% y 100,0% (unidades de 0,1%, 0000 hasta 03E8 hexadecimal)
Especificaciones del
operando rea P A D
rea CIO --- CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6143
rea de Trabajo --- W000 hasta W511 W000 hasta W511
rea de bit en Espera --- H000 hasta H511 H000 hasta H511
rea Bit Auxiliar --- A448 hasta A959 A448 hasta A959
rea Temporizador --- T0000 hasta T4095 T0000 hasta T4095
rea Contador --- C0000 hasta C4095 C0000 hasta C4095
rea DM --- D00000 hasta D32767 D00000 hasta D32767
rea EM sin banco --- --- ---
rea EM con Banco --- --- ---
Direcciones DM/EM --- @ D00000 hasta @ @ D00000 hasta @
indirectas en binario D32767 D32767
Direcciones DM/EM --- *D00000 hasta *D00000 hasta
indirectas en BCD *D32767 *D32767
Constantes Vase la 0000 hasta FFFF 0000 hasta 0064
descripcin hexadecimal hexadecimal:
del
operando.
Registros de datos --- DR0 hasta DR15 DR0 hasta DR15
Registros de ndice --- --- ---
Direccionamiento --- ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta
registros de ndice +2047 ,IR15
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15
Descripcin PWM(891) hace salir los impulsos a la frecuencia especificada en F con la
relacin de ON/OFF especificada en D desde el puerto especificado en P.
PWM(891) puede ejecutarse durante la salida de impulsos de relacin de
ON/OFF para cambiar esta relacin sin detener la salida de impulsos. Se
ignorar cualquier intento de cambiar la frecuencia.
La salida de impulsos se inicia cada vez que se ejecuta PWM(891).
Normalmente ser suficiente utilizar la versin diferenciada (@PWM(891)) de
la instruccin o bien una condicin de ejecucin que se ponga en ON durante
un solo scan.

866
Instrucciones de paso Seccin 3-22

La salida de impulsos continuar bien hasta que se ejecute INI(880) para


detenerla (C = 0003 hexadecimal: detencin de salida de impulsos) o hasta
que la CPU se cambie a modo PROGRAM.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se excede el rango especificado para P, F o D.
error ON si se ha configurado la salida de impulsos utilizando
ORG(889) para el puerto especificado.
ON si se ejecuta PWM(891) en una tarea de interrupcin al
ejecutarse una instruccin de control de salida de impulsos
en el curso de una tarea cclica.

Ejemplo Cuando en el siguiente ejemplo de programacin CIO 000000 se pone en


ON, PWM(891) inicia la salida de impulsos a partir de la salida de impulsos 0
a 200 Hz, con una relacin de ON/OFF del 50%. Cuando CIO 000001 se
pone en ON, la relacin de ON/OFF cambia al 25%.
000000 Factor de relacin de ON/OFF: 50% Factor de relacin de ON/OFF: 25%
@PWM
#0000 Salida de impulsos 0
#07D0 Frecuencia: 200,0 Hz CIO 000000 ON
#0032 Factor de relacin de ON/OFF: 50% CIO 000001 ON

000001
@PWM
#0000 Salida de impulsos 0
#07D0 Frecuencia: 200,0 Hz
#0019 Factor de relacin de ON/OFF: 25%

3-22 Instrucciones de paso


Esta seccin describe instrucciones de paso, que se utilizan para configurar
puntos de ruptura entre secciones en un programa de grandes dimensiones,
de tal manera que las secciones pueden ejeuctarse como unidades y
resetearse al completarse.
Instruccin Nemnico Cdigo de Pgina
funcin
STEP DEFINE STEP 008 868
STEP START SNXT 009 868

En los PLC de la serie CS/CJ las instrucciones STEP(008)/SNXT(009)


pueden usarse juntas para crear programas de pasos.
Instruccin Operacin Diagrama
SNXT(009): STEP START Controla la progresin al Corresponde
siguiente paso del
programa.
STEP(008): STEP DEFINE Indica el inicio de un paso. Corresponde
Repite el mismo programa
de pasos hasta que se
establecen las condiciones
para la progresin al
siguiente paso.

867
Instrucciones de paso Seccin 3-22

Corresponde
Inicia el rea de programacin de pasos

a se pone en ON
Procede al siguiente paso

Proceso A

Proceso A El proceso A se repite hasta que b


se pone en ON.

b se pone en ON

Proceso B

Proceso B El proceso B se repite hasta que c


se pone en ON.

c se pone en ON

Proceso C
El proceso C se repite hasta
Proceso C
que d se pone en ON.

Va al final del rea de programacin


de pasos de diagrama de rels

Fin d se pone en ON
rea de programacin de pasos completada

Nota Los bits de trabajo se utilizan como bits de control para A, B, C y D.

3-22-1 STEP DEFINE y STEP START: STEP(008)/SNXT(009)


Empleo La instruccin SNXT(009) se coloca inmediatamente antes de la instruccin
STEP(008) y controla la ejecucin de pasos poniendo el bit de control
especificado en ON. Si hay otro paso inmediatamente antes de SNXT(009),
tambin pone en OFF el bit de control de ese proceso.
La instruccin STEP(008) se coloca inmediatamente despus de la
instruccin SNXT(009) y antes de cada proceso. Define el inicio de cada
proceso y especifica el bit de control para ello. Tambin se coloca al final del
rea de programacin de pasos despus de la ltima instruccin SNXT(009)
para indicar el final del rea de programacin de pasos. Cuando aparece al
final del rea de programacin de pasos, STEP(008) no lleva un bit de
control.

Smbolos de diagrama de
rels SNXT(009)

B B: Bit

868
Instrucciones de paso Seccin 3-22

Cuando se define el comienzo de un paso se especifica un bit de control:

STEP(008)

B B: Bit

Cuando se define el final de un paso no se especifica un bit de control:

STEP(008)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON STEP(008)/
SNXT(009)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
No se admite OK No se admite No se admite

Especificaciones del
operando rea B
rea CIO ---
rea de Trabajo W00000 hasta W51115
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SNXT(009)
SNXT(009) se utiliza de las tres formas siguientes:
1,2,3... 1. Para iniciar la ejecucin de una programacin de pasos.
2. Para continuar con el bit de control de pasos siguiente.
3. Para finalizar la ejecucin de una programacin de pasos.

869
Instrucciones de paso Seccin 3-22

El rea de programacin de pasos abarca desde la primera instruccin


STEP(008) (que siempre lleva un bit de control) hasta la ltima instruccin
STEP(008) (que nunca lleva un bit de control).
Inicio de la ejecucin de pasos
SNXT(009) se coloca al principio del rea de programacin de pasos para
iniciar la ejecucin de pasos. Pone en ON el bit de control especificado por B
para la siguiente instruccin STEP(008) y contina al paso B (todas las
instrucciones despus de STEP(008) B). Debe utilizarse una condicin de
ejecucin de diferencial para la instruccin SNXT(009) que inicia la ejecucin
del rea de programacin de pasos, o la ejecucin de pasos solamente
durar un ciclo.
Continuacin al siguiente paso
Cuando SNXT(009) aparece en el medio del rea de programacin de pasos
se utiliza para continuar al siguiente paso. Pone en OFF el bit de control
anterior y pone en ON el siguiente bit de control B para el siguiente paso,
iniciando as el paso B (todas las instrucciones despus de STEP(008) B).
Finalizacin del rea de programacin de pasos
Cuando SNXT(009) se coloca al final del rea de programacin de pasos
finaliza la ejecucin y pone en OFF el bit de control anterior. El bit de control
especificado por B es un bit vaco. No obstante, este bit se pondr en ON, as
que asegrese de seleccionar un bit que no cause problemas.
STEP(008)
STEP(008) funciona de las dos maneras siguientes, dependiendo de su
posicin y de si se ha especificado o no un bit de control.
1,2,3... 1. Inicia un paso especfico.
2. Finaliza el rea de programacin de pasos (ejecucin de pasos).
Inicio de un paso
STEP(008) se coloca al principio de cada paso con un operando, B, que sirve
como bit de control para el paso.
El bit de control B se pondr en ON mediante SNXT(009) y la instruccin del
paso se ejecutar desde la instruccin STEP(008) inmediatamente siguiente.
A20012 (indicador de paso) tambin se pondr en ON cuando comience la
ejecucin de un paso.
Despus del primer ciclo, la ejecucin de pasos continuar hasta que se
establezcan las condiciones para cambiar de paso, es decir, hasta que la
instruccin SNXT(009) ponga en ON el bit de control de la siguiente
instruccin STEP(008).
Cuando SNXT (009) pone en ON el bit de control para un paso, el bit de
control B de la instruccin actual se resetear (se pondr en OFF) y el paso
controlado por el bit B se bloquear.
El control de las salidas e instrucciones de un paso cambiar de acuerdo al
estado ON/OFF del bit de control B. (El estado del bit de control es controlado
por SNXT(009)). Cuando el bit de control B se pone en OFF las instrucciones
del paso se resetean y bloquean. Consulte las siguientes tablas.
Estado del bit de control Efecto
ON las instrucciones del paso se ejecutan
normalmente.
ONOFF Los bits e instrucciones del paso se bloquean
como se muestra en la siguiente tabla.
OFF Todas las instrucciones del paso se procesan
como NOPs.

870
Instrucciones de paso Seccin 3-22

Estado del bloqueo (IL)


Salida de instrucciones Estado
Bits especificados para OUT, OUT NOT Todos OFF
las siguientes instrucciones de PV 0000 hexadecimal (reset)
temporizador: TIM, Indicador de finalizacin OFF (reset)
TIMX(551), TIMH(015),
TIMHX(551), TMHH(540),
TIMHHX(552), TIML(542) y
TIMLX(553)
Bits o canales especificados para otras instrucciones Mantiene el estado previo
(ver nota) (pero las instrucciones no
se ejecutan)

Nota Indica el resto de las instrucciones, como por ejemplo TTIM(087),


TTIMX(555), MTIM(543), MTIMX(554), SET, REST, CNT, CNTX(546),
CNTR(012), CNTRX(548), SFT(010) y KEEP(011).
La instruccin STEP(008) debe colocarse al comienzo de cada paso.
STEP(008) se coloca al comienzo de cada rea de pasos para definir el inicio
del paso.
Finalizacin del rea de programacin de pasos
STEP(008) se coloca al final de rea de programacin de pasos sin operando
para definir el final de la programacin de pasos. Cuando el bit de control que
precede a la instruccin SNXT(009) se pone en OFF, se detiene la ejecucin
de pasos mediante SNXT(009).

Indicadores: STEP(008)
Nombre Etiqueta Operacin
Indicador de ER ON cuando el bit B especificado no est en el rea WR.
error ON cuando STEP(008) se utiliza en un programa de
interrupcin.
OFF en el resto de los casos.

Indicadores: SNXT(009)
Nombre Etiqueta Operacin
Indicador de ER ON cuando el bit B especificado no est en el rea WR.
error ON cuando SNXT(009) se utiliza en un programa de
interrupcin.
OFF en el resto de los casos.

Precauciones El bit de control B, debe estar en el rea de trabajo para la instruccin


STEP(008)/SNXT(009).
Un bit de control para STEP(008)/SNXT(009) no puede usarse en ningn otro
sitio del diagrama de rels. Si se utiliza el mismo bit dos veces se producir
un error de duplicacin de bit.
Si SBS(091) se utiliza para llamar a una subrutina desde dentro de un paso,
las salidas e instrucciones de subrutina no se bloquearn cuando el bit de
control se ponga en OFF.
Los bits de control incluidos en una seccin de programacin de pasos deben
ser secuenciales y del mismo canal.
SNXT(009) se ejecutar solamente una vez, es decir, en el flanco ascendente
de la condicin de ejecucin.
Introduzca SNXT(009) al final del rea de programacin de pasos y
asegrese de que el bit de control es un bit vaco del rea de trabajo. Si se
utiliza un bit de control para un paso en la ltima instruccin SNXT(009) en el
rea de programacin de pasos, se iniciar el correspondiente paso cuando
se ejecute SNXT(009).
871
Instrucciones de paso Seccin 3-22

Se producir un error y el indicador de error se pondr en ON si el operando


B especificado para SNXT(009) o STEP(008) no est en el rea de trabajo o
si el programa de pasos se ha colocado en una ubicacin que no sea una
tarea cclica.
A20012 (indicador de paso) se pone en ON para un ciclo cuando se ejecuta
STEP(008). Este indicador puede utilizarse para llevar a cabo la inicializacin
una vez haya comenzado la ejecucin de pasos.
Condiciones de posicionamiento para reas de programacin de pasos
(STEP B a STEP)
STEP(008) y SNXT(009) no pueden usarse dentro de subrutinas, programas
de interrupcin o programas de bloques.
Asegrese de que no se ejecutan dos pasos durante el mismo ciclo.
Instrucciones que no pueden utilizarse en programas de pasos
Las instrucciones que no pueden utilizarse en programas de pasos se
relacionan en la siguiente tabla.
Funcin Nemnico Nombre
Instrucciones del control END(001) END
de secuencia IL(002) INTERLOCK
ILC(003) INTERLOCK CLEAR
JMP(004) JUMP
JME(005) JUMP END
CJP(510) CONDITIONAL JUMP
CJPN(511) CONDITIONAL JUMP
NOT
JMP0(515) MULTIPLE JUMP
JME0(516) MULTIPLE JUMP END
Instrucciones de subrutina SBN(092) SUBROUTINE ENTRY
RET(093) SUBROUTINE RETURN

Iniciar

1 ciclo

Bits relacionados
Nombre Direccin Detalles
Indicador de paso A20012 ON durante un ciclo al
iniciarse un programa de
pasos con STEP(008).
Puede utilizarse para
resetear temporizadores o
realizar otros
procesamientos cuando se
inicia un nuevo paso.

872
Instrucciones de paso Seccin 3-22

El paso a se inicia cuando C se pone en ON

A ejecutado

Cuando d se pone en ON, b se inicia (A se bloquea)

e se pone en ON (B se bloquea)

Final del rea de programacin de pasos

Programa de
diagrama de rels Vuelve al programa de
normal diagrama de rels normal

873
Instrucciones de paso Seccin 3-22

CIO 00000 se pone en ON, el paso W00000 se inicia

El paso W00000 se inicia desde la siguiente instruccin

Programa de diagrama
Paso W00000
de rels del paso (A)

W00000 se pone en OFF, W00001 se pone en ON


y se inicia el paso W00001

El paso W00001 se inicia desde la siguiente instruccin

Programa de diagrama
de rels del paso (B)

W00001 se pone en OFF y el bit vaco W10000


se pone en ON

Final del rea de programacin de pasos

Programa de diagrama
de rels normal

Ejemplos Control secuencial

000001 (condicin de inicio del paso (A))

Paso (A)W00000

000002 (condicin de transicin paso (A)


Step (B))

Paso (B)W00001

000003 (condicin de transicin paso (B)


paso (C))

Paso (C)W00002

000004 (condiciones de reset


del paso (C))

Fin

874
Instrucciones de paso Seccin 3-22

Paso W00000 (A)


Programa de diagrama
de rels del paso (A)

Programa de diagrama Paso W00001 (B)


de rels del paso (B)

Programa de diagrama Paso W00002 (C)


de rels del paso (C)

Control bifurcado

000001 (condicin de 000002 (condicin de inicio del paso (B))


inicio del paso (A))

Paso (A) W00000 Paso (B) W00001


000003 (condicin de
transicin paso (A) 000004 (condicin de transicin paso (B)
Step (C))
paso (C))

Paso (C)W00002

000005 (condiciones de reset del paso (C))

Fin

875
Instrucciones de paso Seccin 3-22

Paso W00000
Programa de diagrama (A)
de rels del paso (A)

Programa de diagrama Paso W00001


de rels del paso (B) (B)

Paso W00002
Programa de diagrama (C)
de rels del paso (C)

La programacin anterior se utiliza cuando los pasos A y B no pueden


ejecutarse simultneamente. Para la ejecucin simultnea de A y B, elimine
las condiciones de ejecucin mostradas a continuacin.
000002 000001

Nota En el ejemplo anterior, en el que se ejecuta SNXT(009) para W00002, la


bifurcacin se desplaza a los siguientes pasos aunque se utilice el mismo bit
de control dos veces. Esto no se considera un error en la comprobacin de
programa utilizando CX-Programmer. Solamente se producir un error de bit
duplicado en un programa de diagrama de rels de paso cuando un bit de
control de una instruccin de paso tambin se utiliza en un diagrama de rels
normal.

876
Instrucciones de paso Seccin 3-22

Control paralelo

000001 (condicin de inicio simultneo


de los pasos (A), (C))

Paso (A)W00000 Paso (C)W00002


000002 (condicin de 000003 (condicin de
transicin paso (A)
transicin paso (C)
Step (B))
Step (D))

Paso (B) W00001 Paso (D) W00002

000004 (cuando los pasos (B) y(D) se


han completado, se desplaza al paso (E)

Paso (E) W00004

000005 (condiciones de reset del paso (C))

Fin

877
Instrucciones de paso Seccin 3-22

Programa de diagrama Paso W00000 (A)


de rels del paso (A)

Programa de diagrama Paso W00001


de rels del paso (B) (B)

Programa de diagrama Paso W00002 (C)


de rels del paso (C)

Paso W00003
Programa de diagrama (D)
de rels del paso (D)

Programa de diagrama
Paso W00004
de rels del paso (E) (E)

878
Instrucciones de paso Seccin 3-22

Ejemplos de Los siguientes tres ejemplos demuestran los tres tipos de control de
aplicacin ejecucin posible con programacin de pasos. El ejemplo 1 demuestra la
ejecucin secuencial; el ejemplo 2, la ejecucin en bifurcacin y el ejemplo 3,
la ejecucin en paralelo.

Ejemplo 1: El siguiente proceso requiere que se ejecuten tres procesos (carga,


Ejecucin secuencial colocacin de partes e inspeccin/descarga) secuencialmente, siendo cada
proceso reseteado antes de continuar con el siguiente. Se posicionan varios
sensores (SW1, SW2, SW3 y SW4) para sealizar cundo deben iniciarse y
finalizar los procesos.

Solenoide 1 Mano robtica

Solenoide 2
Fotomicrosensor
SW 1
SW 2 SW 4
SW 3

Cinta transportadora 1 Cinta transportadora 2 Cinta transportadora 3

Cargando Colocacin de partes Inspeccin/descarga

El siguiente diagrama demuestra el flujo del procesamiento y los interruptores


que se utilizan para el control de ejecucin.

SW1

Proceso A Cargando

SW2

Proceso B Colocacin de
partes

SW3

Proceso C Inspeccin/descarga

SW4

Fin

El programa para este proceso, mostrado a continuacin, utiliza el tipo ms


bsico de programacin de pasos. Cada paso se completa mediante una
instruccin SNXT(009) nica que inicia el siguiente paso. Cada paso se inicia
cuando el interruptor que indica que el paso anterior ha sido completado se
pone en ON.

879
Instrucciones de paso Seccin 3-22

Direccin Instruccin Operandos


Proceso A
iniciado. 000000 @LD 000001
000001 SNXT(009) W00000
000002 STEP(008) W00000

Proceso A

Programacin para 000100 LD 000002


el proceso A
000101 SNXT(009) W00001
000102 STEP(008) W00001
Reset del
proceso A.
Proceso B Proceso B
iniciado.
000100 LD 000003
000101 SNXT(009) W00002
000102 STEP(008) W00002
Programacin para
el proceso B Proceso C

000200 LD 000004
Reset del
proceso B. 000201 SNXT(009) W00003
Proceso C 000202 STEP(008) W00003
iniciado.

Programacin para
el proceso C

Reset del
proceso C.

Ejemplo 2: El siguiente proceso requiere que un producto sea procesado en una de dos
Ejecucin en bifurcacin maneras, dependiendo de su peso, antes de ser impreso. El proceso de
impresin es el mismo sin tener en cuenta cul de los procesos se utilice. Se
posicionan varios sensores para sealizar cundo deben empezar y finalizar
los procesos.
Impresora
SW C1
SW D
Gua SW A1 SW A2
SW C2

Proceso A
Cinta transportadora A

Proceso B Cinta
transpor-
tadora B
SW B1 SW B2

Balanza de pesaje
Proceso C

880
Instrucciones de paso Seccin 3-22

El siguiente diagrama demuestra el flujo del procesamiento y los interruptores


que se utilizan para el control de ejecucin. Aqu, se utiliza uno de los
procesos A o B dependiendo del estado de SW A1 y SW B1.

SW A1 SW B1

Proceso A Proceso B

SW A2 SW B2

Proceso C

SW D

Fin

881
Instrucciones de paso Seccin 3-22

El programa para este proceso, mostrado a continuacin, se inicia con dos


instrucciones SNXT(009) que inician los procesos A y B. Debido a la forma en
que estn programadas CIO 000001 (SW A1) y CIO 000002 (SW B1),
solamente se ejecutar uno de ellos con una condicin de ejecucin ON para
iniciar cualquiera de los procesos A o B. Ambos pasos para estos procesos
finalizan con una instruccin SNXT(009) que inicia el paso (proceso C).

Direccin Instruccin Operandos


000000 @LD 000001
Proceso A 000001 AND NOT 000002
iniciado. 000002 SNXT(009) 010000
000003 LD NOT 000001
000004 @AND 000002
000005 SNXT(009) 010001
000006 STEP(008) 010000

Proceso A
Programacin para el
proceso A
000100 LD 000003
000101 SNXT(009) 010002
Reset del
000102 STEP(008) 010001
proceso A.
Proceso C
iniciado. Proceso B

000100 LD 000004
000101 SNXT(009) 010002
000102 STEP(008) 010002
Programacin para el
proceso B
Proceso C
Reset del
proceso B. 000200 LD 000005
Proceso C 000201 SNXT(009) 024614
iniciado.
000202 STEP(008) ---

Programacin para el
proceso C

Reset del
proceso C.

Nota En la programacin anterior, CIO 010002 se utiliza en dos instrucciones SNXT(009).


Esto no producir un error de duplicacin durante la comprobacin del programa.

882
Instrucciones de paso Seccin 3-22

Ejemplo 3: El siguiente proceso requiere que dos partes de un producto pasen


Ejecucin en paralelo simultneamente a travs de dos procesos cada una antes de que se unan
en un quinto proceso. Se posicionan varios sensores para sealizar cundo
deben empezar y finalizar los procesos.
SW1 SW3 SW5 SW7
Proceso A Cinta trans-
Cinta transportadora A portadora B

Proceso B Cinta
trans- Cinta trans-
porta- porta-
Proceso D dora E dora E

Proceso C Cinta SW6


SW4
SW2 Cinta transportadora C transportadora D

El siguiente diagrama demuestra el flujo del procesamiento y los interruptores


que se utilizan para el control de ejecucin. Aqu los procesos A y C se inician
simultneamente. Cuando finaliza el proceso A se inicia el proceso B; cuando
finaliza el proceso C se inicia el proceso D. Cuando ambos procesos B y D
han finalizado se inicia el proceso E.

SW 1 y SW2 en ON

Proceso A Proceso C

SW3 SW4

Proceso B Proceso D

SW5 y SW6 en ON

Proceso E

SW7

Fin

El programa para esta operacin, mostrado a continuacin, se inicia con dos


instrucciones SNXT(009) que inician los procesos A y C. Estas instrucciones
se bifurcan desde la misma lnea de instruccin y siempre se ejecutan juntas,
iniciando los pasos para A y C. Cuando los pasos para A y C han finalizado,
empiezan inmediatamente los pasos para B y D.
Cuando han finalizado los procesos B y D (es decir, cuando SW5 y SW6 se
ponen en ON), los procesos B y D se resetean juntos mediante SNXT(009) al
final de la programacin para el proceso B. Aunque no hay instruccin
SNXT(009) al final de proceso D, el bit de control para ello se pone en OFF
ejecutando SNXT(009) W00004. Esto es debido a que OUT para el bit
W00003 est en el reset de paso SNXT(009) W00004, es decir, W00003 se
pone en OFF cuando se ejecuta SNXT(009) W00004. De esta manera se
resetea el proceso B directamente y el proceso D indirectamente antes de
ejecutar el paso para el proceso E.

883
Instrucciones de paso Seccin 3-22

Proceso A Direccin Instruccin Operandos


iniciado.
Proceso C 000000 @LD 000001
iniciado. 000001 SNXT(009) W00000
000002 SNXT(009) W00002
000003 STEP(008) W00000

Proceso A

000100 LD 000002
000101 SNXT(009) W00001
Programacin para el proceso A
000102 STEP(008) W00001
Reset del
proceso A. Proceso B
Proceso B
iniciado. 000100 LD 000003
000101 OUT W00003
000101 AND 000004
000101 SNXT(009) W00004
Programacin para el proceso B
000102 STEP(008) W00002
W00003 W00003 Usado
para poner
en OFF el Proceso C
proceso D.
000200 LD 000003
Proceso E
iniciado. 000201 SNXT(009) W00003
000202 STEP(008) W00003

Proceso D

000300 STEP(008) W00004

Programacin para el proceso C


Proceso E
Reset del
proceso C. 000400 LD 000005
Proceso D 000401 SNXT(009) 024613
iniciado. 000402 STEP(008) ---

W00003

Programacin para el proceso D

Programacin para el proceso E

Reset del
proceso E.

884
Instrucciones de Unidades de E/S bsicas Seccin 3-23

3-23 Instrucciones de Unidades de E/S bsicas


Esta seccin describe las instrucciones utilizadas con Unidades de E/S
bsicas.
Instruccin Nemnico Cdigo de funcin Pgina
I/O REFRESH IORF 097 885
7-SEGMENT DECODER SDEC 078 888
INTELLIGENT I/O READ IORD 222 913
INTELLIGENT I/O WRITE IOWR 223 917
DIGITAL SWITCH INPUT DSW 210 890
TEN KEY INPUT TKY 211 896
HEXADECIMAL KEY INPUT HKY 212 899
MATRIX INPUT MTR 213 904
7-SEGMENT DISPLAY OUTPUT 7SEG 214 908

3-23-1 I/O REFRESH: IORF(097)


Empleo Refresca los canales de E/S especificados.

Smbolo de diagrama de
rels IORF(097)

St St: Canal inicial

E E: Canal final

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON IORF(097)
Se ejecuta una vez en el diferencial ascendente @IORF(097)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos St: Canal inicial


CIO 0000 hasta CIO 0999 (rea de bit de E/S) o
CIO 2000 hasta CIO 2959 (rea de bit de Unidad de E/S especial)
E: Canal final
CIO 0000 hasta CIO 0999 (rea de bit de E/S) o
CIO 2000 hasta CIO 2959 (rea de bit de Unidad de E/S especial)
Nota St y E deben estar en el mismo rea de memoria.

Especificaciones del
operando rea St E
rea CIO CIO 0000 hasta CIO 0999
CIO 2000 hasta CIO 2959
rea auxiliar ---
rea de bit en Espera ---
rea de bit especial ---
rea Temporizador ---
rea Contador ---
rea DM ---

885
Instrucciones de Unidades de E/S bsicas Seccin 3-23

rea St E
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM ---
indirectas en binario
Direcciones DM/EM ---
indirectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indirecto ,IR0 hasta IR15
utilizando registros de 2048 hasta +2047, IR0 hasta IR15
ndice
DR0 hasta DR15, IR0 hasta IR15,
IR0 hasta IR15+(++)
,( ) IR0 hasta IR15

Descripcin IORF(097) refresca los canales de E/S entre St y E, ambos incluidos.


IORF(097) se usa para refrescar los canales asignados a Unidades de R/S
bsicas o Unidades de E/S especiales montadas en el bastidor de la CPU o
bastidores expansores. IORF(097) no puede utilizarse para refrescar canales
en ambas reas al mismo tiempo (es decir, con la misma instruccin). Las
Unidades de E/S bsicas se asignan a canales entre CIO 0000 y CIO 0999,
y las Unidades de E/S especiales se asignan a canales entre CIO 2000 y
CIO 2959.
Cuando se especifica refresco para canales del rea de bit de Unidad de E/S
especial, los 10 canales asignados a la unidad se refrescarn siempre que el
primer canal de los 10 canales asignados a la unidad est incluido en el
rango de canales especificado.
rea de bit de E/S o Unidad de E/S o
rea de bit de Unidad de Unidad de E/S especial
E/S especial

St Refresco
de E/S

Si hay canales entre St y E para los que no hay Unidad montada no se har
nada para esos canales y solamente los canales asignados a Unidades se
refrescarn.
Las Unidades de E/S especiales C200H y CS pueden refrescarse utilizando
la misma instruccin. (Slo serie CS)
Todos los canales asignados a Unidades de E/S de alta densidad de grupo 2
C200H deben refrescarse a la vez. Los canales de E/S de la Unidad se
refrescarn si el primer canal asignado a la Unidad se encuentra dentro del
rango especificado de canales de E/S. (Los canales de la Unidad no se
refrescarn si el canal inicial se encuentra despus del primer canal asignado
a la Unidad, pero se refrescarn incluso si el canal final se encuentra antes
del ltimo canal asignado a la Unidad). (Slo serie CS)
IORF(097) puede utilizarse en tareas de interrupcin, lo que permite una
respuesta de alta velocidad para los canales de E/S especficos refrescados
en la tarea de interrupcin. (Consulte las precauciones).
Unidades aplicables Las siguientes Unidades pueden refrescarse con IORF(097). Estas Unidades
pueden refrescarse solamente cuando estn en el bastidor de la CPU o en un
bastidor expansor. No pueden refrescarse su estn en bastidores esclavos.
Unidades de E/S bsicas de la serie CS, Unidades de E/S bsicas de la serie
C200H (slo serie CS), Unidades de alta densidad de grupo 2 C200H (slo
serie CS), Unidades de E/S bsicas de la serie CJ y Unidades de E/S

886
Instrucciones de Unidades de E/S bsicas Seccin 3-23

especiales (incluyendo Unidades de alta densidad. Todos los canales


asignados a estas Unidades pueden refrescarse).
Nota Las Unidades que pueden refrescarse con IORF(097) no son necesaria-
mente las mismas Unidades que pueden refrescarse con especificaciones de
refresco inmediato (!).

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si St es mayor que E.
error ON si St y E estn en diferentes reas de memoria.
Con las CPUs CS1D: ON si las CPUs activas y en reposo
no han podido ser sincronizadas.
OFF en el resto de los casos.

Precauciones Se producir un error si los canales del rea de bit de E/S (CIO 0000 hasta
CIO 0999) y del rea de bit de Unidad de E/S (CIO 2000 hasta CIO 2959)
se especifican para la misma instruccin.
El refresco de E/S no se llevar a cabo para Unidades para las que se haya
producido un error de tabla de E/S. (Slo serie CS)
El refresco de E/S iniciado por IORF(097) se detendr a medio proceso si se
produce un error de bus de E/S durante el refresco de E/S.
Cuando IORF(097) se utiliza en una tarea de interrupcin, asegrese de
inhabilitar el refresco cclico de Unidad de E/S especial en la configuracin
del PLC. Si se habilita refresco cclico para Unidades de E/S especiales y se
ejecuta refresco de E/S de nuevo mediante IORF(097), se producir un error
no fatal de refresco duplicado y el indicador de error de tarea de interrupcin
(A40213) se pondr en ON.

Ejemplos Refresco de los canales del rea de bit de E/S


El siguiente ejemplo muestra cmo refrescar 16 canales desde CIO 0015
hasta CIO 0030 cuando CIO 000000 se pone en ON.
Unidad de E/S

St: Refresco
St de E/S
E
E:

Refresco de los canales del rea de bit de Unidad de E/S especial


El siguiente ejemplo muestra cmo refrescar 30 canales desde CIO 2000
hasta CIO 2029 cuando CIO 000000 se pone en ON.
Unidad de E/S especiales

St: Refresco
de E/S
St
E
E:

887
Instrucciones de Unidades de E/S bsicas Seccin 3-23

3-23-2 7-SEGMENT DECODER: SDEC(078)


Empleo Convierte el contenido hexadecimal de los dgitos designados en un cdigo
de 8 bits de display de 7 segmentos y lo sita en los 8 bits de mayor o menor
peso de los canales de destino especificados.

Smbolo de diagrama de
rels SDEC(078)

S S: Canal fuente

Di Di: Indicador de dgito

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SDEC(078)
Se ejecuta una vez en el diferencial ascendente @SDEC(078)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos: Indicador de dgito


15 12 11 87 43 0
Di 0 1/0 m n

Primer dgito de S a convertir (0


0: Dgito 0 (bits 0 hasta 3 de S)
1: Dgito 1 (bits 4 hasta 7 de S)
2: Dgito 2 (bits 8 hasta 11 de S)
3: Dgito 3 (bits 12 hasta 15 de S)
Nmero de dgitos a
0 hasta 3: 1 hasta 4 dgitos
Primera mitad de D para recibir datos
0: 8 bits de la derecha (1 mitad)
1: 8 bits de la izquierda (2 mitad)

No utilizado, configrelo como 0.

Especificaciones del
operando rea S Di D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)

888
Instrucciones de Unidades de E/S bsicas Seccin 3-23

rea S Di D
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores ---
especificados
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SDEC(078) trata los datos especificados por S como datos hexadecimales de
4 dgitos, convierte los dgitos especificados en S por Di (primer dgito y
nmero de dgitos) en datos de 7 segmentos y entrega los resultados a D en
los bits especificados en Di.

Di
Nmero de dgitos

Primer dgito
a convertir

8 bits de la derecha (0)

7 segmentos

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si las configuraciones de Di no estn dentro de los
error rangos especificados.
OFF en el resto de los casos.

Precauciones Si hay ms de un dgito especificado para conversin en Di, los dgitos se


convierten en orden hacia el dgito ms significativo. El dgito 0 es el siguiente
dgito despus del dgito 3.
Los resultados se almacenan en D en orden desde la parte especificada
hacia los canales con la direccin ms alta. Si slo uno de los bytes de un
canal de destino recibe datos convertidos, el otro byte permanece sin
cambios.
Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, los contenidos
de los 3 dgitos empezando por el dgito 1 de D00100 se convertirn de datos
hexadecimales a datos de 7 segmentos, y los resultados se entregarn al
byte superior de D00200 y ambos bytes de D00201. Las especificaciones de
los bytes a convertir y la ubicacin de los bytes de salida se hacen en CIO
0100.
889
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Di
Di: 0100 3

S: D00100

Conversin de datos hexadecimales a datos


de 7 segmentos (F 71, 1 06 y 2 5B)

D:

Datos de 7 segmentos La siguiente tabla muestra las conversiones de datos de un dgito


hexadecimal (4 bits) a cdigo de 7 segmentos (8 bits).
Datos originales Cdigo convertido (segmentos) Display
Datos originales
D- Bits g f e d c b a Hexa-
gito deci-
mal
0 0 0 0 0 0 0 1 1 1 1 1 1 3F LSB
1 0 0 0 1 0 0 0 0 0 1 1 0 06 1 a
a
2 0 0 1 0 0 1 0 1 1 0 1 1 5B 1 b

1 c f b
3 0 0 1 1 0 1 0 0 1 1 1 1 4F g
1 d
4 0 1 0 0 0 1 1 0 0 1 1 0 66
1 e e c
5 0 1 0 1 0 1 1 0 1 1 0 1 6D
1 f
6 0 1 1 0 0 1 1 1 1 1 0 1 7D d
1 g
7 0 1 1 1 0 0 1 0 0 1 1 1 27
0
8 1 0 0 0 0 1 1 1 1 1 1 1 7F
MSB
9 1 0 0 1 0 1 1 0 1 1 1 1 6F
A 1 0 1 0 0 1 1 1 0 1 1 1 77
B 1 0 1 1 0 1 1 1 1 1 0 0 7C
C 1 1 0 0 0 0 1 1 1 0 0 1 39

D 1 1 0 1 0 1 0 1 1 1 1 0 5E
E 1 1 1 0 0 1 1 1 1 0 0 1 79

A 1 1 1 1 0 1 1 1 0 0 0 1 71

3-23-3 DIGITAL SWITCH INPUT DSW(210)


Empleo Lee el valor establecido en un interruptor digital externo (o dcada de
seleccin) conectado a una Unidad de E/S, y almacena los datos de 4 dgitos
u 8 dgitos en los canales especificados.
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0
posterior.

890
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Smbolo de diagrama de
rels DSW (210)
I I: Canal de entrada
O S: Canal de salida
D D: Primer canal de resultado
C1 C1: Nmero de dgitos
C2 C2: Canal del sistema

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DSW (210)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

Operandos I: Canal de entrada (Entradas de lneas de datos D0 hasta D3)


Especifique el canal de entrada asignado a la Unidad de entrada y conecte
las lneas de datos D0 hasta D3 del interruptor digital a la Unidad de entrada
como se muestra en el siguiente diagrama.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
I

D3 D0
4 dgitos de D2 D1 4 dgitos de
la izquierda D1 D2 la derecha
D0 D3

O: Canal de salida (Salidas de seal de control CS/RD)


Especifique el canal de salida asignado a la Unidad de salida y conecte las
seales de control del interruptor digital (seales CS y RD) a la Unidad de
salida como se muestra en el siguiente diagrama.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
O

CS0
CS1
Indicador de una ronda CS2 Seales CS
Seal de lectura RD0 CS3

D: Primer canal de resultado


Especifica la direccin de canal inicial en la que se almacenarn los valores
configurados para el interruptor digital externo.
15 12 11 8 7 4 3 0
D

Dgito 4 Dgito 3 Dgito 2 Dgito 1

15 12 11 8 7 4 3 0
D+1
(Ver nota).
Dgito 8 Dgito 7 Dgito 6 Dgito 5

Nota: Slo cuando C1 = 0001 hexadecimal para leer 8 dgitos.

891
Instrucciones de Unidades de E/S bsicas Seccin 3-23

C1: Nmero de dgitos


Especifica el nmero de dgitos que se leern en el interruptor digital externo.
Ajuste C1 hasta 0000 hexadecimal para leer 4 dgitos o bien 0001
hexadecimal para leer 8 dgitos.
15 12 11 8 7 4 3 0
C1

Nmero de dgitos
0000 hexadecimal: 4 dgitos
0001 hexadecimal: 8 dgitos

C2: Canal del sistema


Especifica un canal de trabajo utilizado por la instruccin. Este canal no
puede utilizarse en ninguna otra aplicacin.
15 0
C2

Canal del sistema


(El usuario no puede acceder a l).

Especificaciones del
operando rea I O D C1 C2
rea CIO CIO 0000 hasta CIO 6143 --- CIO 0000 hasta
CIO 6143
rea de Trabajo W000 hasta W511 --- W000 hasta W511
rea de bit en H000 hasta H511 --- H000 hasta H511
Espera
rea Bit Auxiliar A000 hasta A448 hasta A953 --- A448 hasta A959
A959
rea Temporizador T0000 hasta T4095 --- T0000 hasta T4095
rea Contador C0000 hasta C4095 --- C0000 hasta
C4095
rea DM D00000 hasta D32767 --- D00000 hasta
D32767
rea EM sin banco E00000 hasta E32767 --- E00000 hasta
E32767
rea EM con Banco En_00000 hasta En_32767 --- En_00000 hasta
(n = 0 a C) En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767 --- @ D00000 hasta
indirectas en binario @ E00000 hasta @ E32767 @ D32767
@ En_00000 hasta @ @ E00000 hasta
En_32767 @ E32767
(n = 0 a C) @ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767 --- ---
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- 0000 ---
0001
hexade
cimal
Registros de datos DR0 hasta DR15 DR0 hasta DR15

892
Instrucciones de Unidades de E/S bsicas Seccin 3-23

rea I O D C1 C2
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15 ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 2048 hasta +2047
registros de ndice ,IR0 hasta 2048 ,IR0 hasta 2048
hasta +2047 ,IR15 hasta +2047 ,IR15
DR0 hasta DR15, IR0 DR0 hasta DR15,
hasta IR15 IR0 hasta IR15
,IR0+(++) hasta ,IR0+(++) hasta
,IR15+(++) ,IR15+(++)
,( )IR0 hasta, ,( )IR0 hasta,
( )IR15 ( )IR15

Descripcin DSW(210) enva seales de control a los bits 00 hasta 04 de O, lee el nmero
especificado de dgitos (4 dgitos u 8 dgitos, especificado en C1) de los datos
de la lnea de datos del interruptor digital de I, y almacena el resultado en D y
D+1. (Si se leen 4 dgitos, el resultado se almacena en D. Si se leen 8 dgitos,
el resultado se almacena en D y D+1).
DSW(210) lee los datos del interruptor de 4 dgitos o de 8 dgitos una vez
cada 16 ciclos, y a continuacin vuelve a comenzar y contina leyendo los
datos. El indicador de una ronda (bit 05 de O) se pone en ON una vez cada
16 ciclos de CPU.
DSW(210) lee los datos de 4 dgitos o de 8 dgitos una vez cada 16 ciclos, y a
continuacin vuelve a comenzar y lee los datos de nuevo en los siguientes 16
ciclos.
Cuando se ejecuta, DSW(210) comienza leyendo los datos del interruptor por
el primero de los diecisis ciclos, sin tener en cuenta en qu punto se detuvo
la ltima instruccin.
No hay restriccin en el nmero de veces que DSW(210) puede aparecer en
el programa (al contrario que en el caso de las series C200HX/HG/HE y
CQM1H).

893
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Conexiones externas Conecte el interruptor digital o la dcada de seleccin a los contactos 0 hasta
7 de la Unidad de entrada y a los contactos 0 hasta 4 de la Unidad de salida,
tal y como se muestra en el siguiente diagrama. El siguiente ejemplo muestra
las conexiones para una dcada de seleccin A7B.

ID212 Unidad de entrada


0
1
2
3
4
5
6
7
8
9
Dcada de
10
11
seleccin A7B
12
13 8 4 21
14
15 OD212
COM
COM Interruptor no. 8 7 6 5 4 3 2 1 C
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Unidad de salida CC
COM

Nota La seal de lectura de datos no est conectada en este ejemplo.

Las entradas y las salidas pueden conectarse a los siguientes tipos de


Unidades de E/S bsicas y Unidades de E/S de alta densidad, siempre y
cuando no estn montadas en un bastidor de E/S remoto SYSMAC BUS.
Unidades de entrada de c.c. con 8 o ms puntos de entrada
Unidades de salida de transistor con 8 o ms puntos de salida

894
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Diagramas de tiempos
I
Cuatro dgitos: 00
Ocho dgitos: 100 101 102 103 Datos de entrada
00 hasta 03, De la izquierda De la derecha
04 hasta 07 4 dgitos 4 dgitos
O
D+1 D
00
Cuando slo se leen
4 dgitos, slo se usa el
01 canal D.
Seales CS
02

03

04 Seal RD (lectura)

05 Indicador de una ronda

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

16 ciclos para completar una ronda de ejecucin

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error

Precauciones No lea ni escriba el canal del sistema (C2) desde ninguna otra instruccin.
DSW(210) no operar correctamente si se accede al canal del sistema desde
otra instruccin. El canal del sistema no es inicializado por DSW(210) en el
primer ciclo cuando se inicia la ejecucin del programa. Si DSW(210) se
utiliza desde el primer ciclo, elimine el canal del sistema del programa.
DSW(210) no operar correctamente si el refresco de E/S no se lleva a cabo
con la Unidad de entrada y la Unidad de salida conectadas al interruptor
digital o a la dcada de seleccin despus de ejecutar DSW(210). Por lo
tanto, no conecte el interruptor digital o manual a las siguientes unidades.
Unidades de E/S bsicas o Unidades de E/S de alta densidad montadas
en un bastidor esclavo de E/S remoto SYSMAC BUS
Esclavos de comunicaciones (esclavos DeviceNet o CompoBus/S)
Ejemplo En este ejemplo, DSW(210) se utiliza para leer un nmero de 8 dgitos de un
interruptor digital y entregar el valor resultante de forma constante a D00000
y D00001. El interruptor digital se conecta mediante CIO 0100 (asignada a
una Unidad de entrada de c.c. de 16 puntos CS1W-ID211) y CIO 0200
(asignada a una Unidad de salida de transistor de 16 puntos CS1W-OD211).
Ya que se leen 8 dgitos de datos, C1 (D32000 en este caso) se configura
como 0001 hexadecimal. D32001 se utiliza como canal del sistema.
P_On
DSW (210)
Indicador de siempre ON I 0100
O 0200
D D00000
C1 D32000
C2 D32001

895
Instrucciones de Unidades de E/S bsicas Seccin 3-23

3-23-4 TEN KEY INPUT TKY(211)


Empleo Lee datos numricos de un teclado decimal conectado a una Unidad de
entrada y almacena hasta 8 dgitos de datos BCD en los canales
especificados.
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0
posterior.

Smbolo de diagrama de
rels TKY(211)
I I: Canal de entrada
D1 D1: Primer canal de registro
D2 D2: Canal de entrada de tecla

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TKY (211)
Se ejecuta una vez en el diferencial ascendente @TKY(211)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

Operandos I: Canal de entrada (Entradas de lnea de datos)


Especifique el canal de entrada asignado a la Unidad de entrada y conecte
las lneas de datos del teclado decimal 0 hasta 9 a la Unidad de entrada
como se muestra en el siguiente diagrama.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
I

9 0
8 1
Los bits 00 hasta 09
7 2
se corresponden con
6 3
las teclas 0 hasta 9.
4
5

D1: Primer canal de registro


Especifica la direccin de canal inicial en la que se almacenar la entrada
numrica del teclado decimal (hasta 8 dgitos).
15 12 11 8 7 4 3 0
D1

Dgito 4 Dgito 3 Dgito 2 Dgito 1

15 12 11 8 7 4 3 0
D1+1

Dgito 8 Dgito 7 Dgito 6 Dgito 5

D2: Canal de entrada de tecla


Los bits 00 hasta 10 de D2 indican entradas de teclas. Cuando una de las
diez teclas (0 a 9) del teclado se pulsa, el bit correspondiente de D2 (00 a 09)
se pone en ON. El bit 10 de D2 se pondr en ON cuando se pulse cualquier
tecla.

896
Instrucciones de Unidades de E/S bsicas Seccin 3-23

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D2
ON cuando se pulsa
cualquier tecla.
0 ON cuando se pulsa la
1 tecla correspondiente.
ON cuando se pulsa la 9 2
tecla correspondiente. (Se mantiene en ON
8 3
(Se mantiene en ON hasta que se pulse otra
7 4
hasta que se pulse otra tecla).
6 5
tecla).

Nota TKY(211) no requiere un canal del sistema, al contrario que otras


instrucciones de E/S como HKY(212).

Especificaciones del
operando rea I D1 D2
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6142 CIO 6143
rea de Trabajo W000 hasta W000 hasta W510 W000 hasta
W511 W511
rea de bit en Espera H000 hasta H511 H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A958 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T4094 T0000 hasta
T4095 T4095
rea Contador C0000 hasta C0000 hasta C4094 C0000 hasta
C4095 C4095
rea DM D00000 hasta D00000 hasta D32766 D00000 hasta
D32767 D32767
rea EM sin banco E00000 hasta E00000 hasta E32766 E00000 hasta
E32767 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32766 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin TKY(211) lee datos numricos del canal de entrada I, que est asignado a un
teclado de diez letras conectado a una Unidad de entrada, y almacena hasta
8 dgitos de datos BCD en los canales de registro D1 y D1+1. Adems, cada
vez que se pulsa una tecla, el bit correspondiente de D2 (0 hasta 9) se pondr
en ON y se mantendr en ON hasta que se pulse otra tecla. El bit 10 de D2
estar en ON mientras se est pulsando cualquier tecla y en OFF cuando no
se est pulsando ninguna tecla.

897
Instrucciones de Unidades de E/S bsicas Seccin 3-23

El registro de dos canales de D1 y D1+1 opera como un registro de


desplazamiento de 8 dgitos. Cuando se pulsa una tecla en el teclado
decimal, el dgito BCD correspondiente se desplaza al dgito menos
significativo de D1. Los otros dgitos de D1, D1+1 se desplazan hacia la
izquierda y el dgito ms significativo de D1+1 se pierde.
Cuando se ejecuta, TKY(211) comienza leyendo los datos de entrada de
tecla por el primer ciclo, sin tener en cuenta en qu punto se detuvo la ltima
instruccin.
Cuando se est pulsando una tecla, se inhabilita la entrada del resto de las
teclas.
No hay restriccin en el nmero de veces que TKY(211) puede aparecer en
el programa (al contrario que en el caso de las series C200HX/HG/HE y
CQM1H).

Conexiones externas Conecte el teclado decimal de tal manera que los interruptores para las teclas
0 hasta 9 se introduzcan en los contactos 0 hasta 9 de la Unidad de entrada,
tal y como se muestra en el siguiente diagrama.

ID212 0
0
1
2
3
4
5
6
7
8
9
10
11 9
12
13
14 10 teclas
15
COM
COM
0V

Unidad de entrada de c.c.

La Unidad de entrada debe ser una Unidad de entrada de c.c. o una Unidad
de entrada de alta densidad con al menos 16 entradas, y la Unidad de
entrada no puede estar montada en un bastidor de E/S remoto SYSMAC
BUS.

898
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Diagramas de tiempos
I
D1+1 D1
00
Antes
de la 0 0 0 0 0 0 0 0
01
ejecucin
02 Entrada desde 20 teclas

hasta 0 0 0 0 0 0 0 1
(1)
09
Entrada de la tecla "1"
D2
(2) 0 0 0 0 0 0 1 0
00
Indicadores
01 correspondientes a
las entradas de Entrada de la tecla "0"
10 teclas en ON
02 (los indicadores se (3) 0 0 0 0 0 1 0 2
mantienen en ON
hasta hasta la siguiente
entrada). Entrada de la tecla "2"
09
(4) 0 0 0 0 1 0 2 9
10 ON cuando se pulsa una tecla.

Entrada de la tecla "9"


(1) (2) (3) (4)

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error

Precauciones TKY(211) no operar correctamente si el refresco de E/S no se lleva a cabo


con la Unidad de entrada conectada al teclado decimal despus de ejecutar
TKY(211). Por lo tanto, no conecte el teclado decimal a las siguientes
Unidades.
Unidades de E/S bsicas o Unidades de E/S de alta densidad montadas
en un bastidor esclavo de E/S remoto SYSMAC BUS
Esclavos de comunicaciones (esclavos DeviceNet o CompoBus/S)
Ejemplo En este ejemplo, TKY(211) lee entradas de tecla desde un teclado decimal y
alamacena las entradas en D00000 y D00001. El teclado decimal est
conectado a CIO 0100 (asignada a una Unidad de entrada de c.c. de 16
puntos CS1W-ID211).
P_On
TKY (211)
Indicador de I 0100
siempre ON
D1 0200
D2 D00000

3-23-5 HEXADECIMAL KEY INPUT HKY(212)


Empleo Lee datos numricos de un teclado hexadecimal conectado a una Unidad de
entrada y una Unidad de salida, y almacena hasta 8 dgitos de datos
hexadecimales en los canales especificados.
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0
posterior.

899
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Smbolo de diagrama de
rels HKY (212)
I I: Canal de entrada
O S: Canal de salida
D D: Primer canal de registro
C C: Canal del sistema

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON HKY (212)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

Operandos I: Canal de entrada (Entradas de lneas de datos D0 hasta D3)


Especifique el canal de entrada asignado a la Unidad de entrada y conecte
las lneas de datos D0 hasta D3 del teclado hexadecimal a la Unidad de
entrada como se muestra en el siguiente diagrama.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
I

0 Los bits 00 hasta 03 se


1 corresponden con las
2 entradas de la Unidad
3 de entrada 0 hasta 3.

O: Canal de salida (seales de seleccin de salida)


Especifique el canal de salida asignado a la Unidad de salida y conecte las
seales de seleccin del teclado hexadecimal a la Unidad de salida como se
muestra en el siguiente diagrama.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
O

0 Los bits 00 hasta 03 se


1 corresponden con las
2 salidas de la Unidad de
3 salida 0 hasta 3.

900
Instrucciones de Unidades de E/S bsicas Seccin 3-23

D: Primer canal de registro


Especifica la direccin de canal inicial en la que se almacenar la entrada
numrica del teclado de hexadecimal (hasta 8 dgitos). (Adems, cada vez
que se pulsa una tecla, el bit correpondiente de D+2 (0 hasta F) se pondr en
ON y se mantendr en ON hasta que se pulse otra tecla).
15 12 11 8 7 4 3 0
D

Dgito 4 Dgito 3 Dgito 2 Dgito 1

15 12 11 8 7 4 3 0
D+1

Dgito 8 Dgito 7 Dgito 6 Dgito 5

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D+2

15 0
14 1
13 2 ON cuando se pulsa la tecla
12 3 correspondiente. (Se
11 4 mantiene en ON hasta que
10 5 se pulse otra tecla).
9 6
8 7

C: Canal del sistema


Especifica un canal de trabajo utilizado por la instruccin. Este canal no
puede utilizarse en ninguna otra aplicacin.
15 0
C

Canal del sistema


(El usuario no puede acceder a l).

Especificaciones del
operando rea I O D C
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6141 CIO 6143
rea de Trabajo W000 hasta W511 W000 hasta W000 hasta
W509 W511
rea de bit en H000 hasta H511 H000 hasta H509 H000 hasta H511
Espera
rea Bit Auxiliar A000 A448 A448 hasta A957 A448 hasta A959
hasta hasta
A957 A959
rea Temporizador T0000 hasta T4095 T0000 hasta T0000 hasta
T4093 T4095
rea Contador C0000 hasta C4095 C0000 hasta C0000 hasta
C4093 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32765 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32765 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32765 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)

901
Instrucciones de Unidades de E/S bsicas Seccin 3-23

rea I O D C
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin HKY(212) entrega las seales de seleccin a los bits 00 hasta 03 de O, lee
los datos en orden de los bits 00 hasta 03 de I, y almacena hasta 8 dgitos de
datos hexadecimales en los canales D y D+1.
HKY(212) introduce cada dgito en de 3 a 12 ciclos, y posteriormente
comienza de nuevo y contina la introduccin. Adems, cada vez que se
pulsa una tecla, el bit correpondiente de D+2 (0 hasta F) se pondr en ON y
se mantendr en ON hasta que se pulse otra tecla.
HKY(212) determina qu tecla se pulsa identificando qu entrada est en ON
cuando una seal de seleccin dada est en ON, as que puede tardarse
entre 3 a 12 ciclos en leer un dgito hexadecimal. Una vez se ha ledo la
entrada de tecla, HKY(212) vuelve a empezar y lee otro dgito en los
siguientes 3 a 12 ciclos.
Cuando se ejecuta, HKY(212) comienza leyendo los datos de entrada de
tecla por la primera seal de seleccin, sin tener en cuenta en qu punto se
detuvo la ltima instruccin.
El registro de dos canales de D1 y D1+1 opera como un registro de
desplazamiento de 8 dgitos. Cuando se pulsa una tecla en el teclado de diez
teclas, el dgito hexadecimal correspondiente se desplaza al dgito menos
significativo de D1. Los otros dgitos de D1, D1+1 se desplazan hacia la
izquierda y el dgito ms significativo de D1+1 se pierde.
Cuando se est pulsando una tecla, se inhabilita la entrada del resto de las
teclas.
No hay restriccin en el nmero de veces que HKY(212) puede aparecer en
el programa (al contrario que en el caso de la serie CQM1H).

902
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Conexiones externas Conecte el teclado hexadecimal a los contactos 0 hasta 3 de la Unidad de


entrada y a los contactos 0 hasta 3 de la Unidad de salida, tal y como se
muestra en el siguiente diagrama.
OD212
C D E A
0
1
8 9 A B 2
3
4 5 6 7 4
5
0 1 2 3 6
7
8
ID212 9
0 10
1 11
2
3 12
13
4
14
5
15
6
COM
7
COM
8
9
10
11
Unidad
de salida
12
13
14
15
COM
COM

Unidad de entrada

Las entradas y las salidas pueden conectarse a los siguientes tipos de


Unidades de E/S bsicas y Unidades de E/S de alta densidad, siempre y
cuando no estn montadas en un bastidor de E/S remoto SYSMAC BUS.
Unidades de entrada de c.c. con 8 o ms puntos de entrada
Unidades de salida de transistor con 8 o ms puntos de salida
Diagramas de tiempos
I
00
01
02 Seales de seleccin
de 16 teclas
03
16
0
hasta
9
hasta Estado de 16 teclas
A
D+2 Indicadores
00 correspondientes a las
hasta teclas de entrada en
09 ON (los indicadores
hasta se mantienen en ON
15 hasta la siguiente
O entrada).
04
ON para un periodo
0 1 2 3 4 5 6 7 8 9 101112 de 12 ciclos si se
pulsa una tecla.
Una vez cada 12 ciclos

0000 0000 0000 000F 0000 00F9


D+1 D D+1 D D+1 D

903
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error

Precauciones No lea ni escriba el canal del sistema (C) desde ninguna otra instruccin.
HKY(212) no operar correctamente si se accede al canal de sistema desde
otra instruccin. El canal de sistema no es inicializado por HKY(212) en el
primer ciclo cuando se inicia la ejecucin del programa. Si HKY(212) se
utiliza desde el primer ciclo, elimine el canal de sistema del programa.
HKY(212) no operar correctamente si el refresco de E/S no se lleva a cabo
con la Unidad de entrada y la Unidad de salida conectadas al teclado
hexadecimal despus de ejecutar HKY(212). Por lo tanto, no conecte el
teclado hexadecimal a las siguientes Unidades.
Unidades de E/S bsicas o Unidades de E/S de alta densidad montadas
en un bastidor esclavo de E/S remoto SYSMAC BUS
Esclavos de comunicaciones (esclavos DeviceNet o CompoBus/S)
Ejemplo En este ejemplo, HKY(212) lee hasta 8 dgitos de datos hexadecimales de un
teclado hexadecimal y almacena los datos en D00000 y D00001. El teclado
hexadecimal se conecta mediante CIO 0100 (asignada a una Unidad de
entrada de c.c. de 16 puntos CS1W-ID211) y CIO 0200 (asignada a una
Unidad de salida de transistor de 16 puntos CS1W-OD211). D32000 se utiliza
como canal de sistema.
P_On
HKY (212)
Indicador de siempre ON I 0100
O 0200
D D00000
C D32000

3-23-6 MATRIX INPUT: MTR (213)


Empleo Introduce un mximo de 64 seales de una matriz 8 8 conectada a una
Unidad de entrada y una Unidad de salida (mediante 8 puntos de entrada y 8
puntos de salida) y almacena los datos de 64 bits en los 4 canales de destino.
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0
posterior.

Smbolo de diagrama de
rels MTR (213)
I I: Canal de entrada
O S: Canal de salida
D D: Primer canal de destino
C C: Canal del sistema

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MTR (213)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite
904
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Operandos I: Canal de entrada


Especifique el canal de entrada asignado a la Unidad de entrada y conecte
las 8 lneas de seal de entrada a la Unidad de entrada como se muestra en
el siguiente diagrama.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
I

0
1
2 Los bits 00 hasta 07 se
3 corresponden con las
4 entradas de la Unidad
5 de entrada 0 hasta 7.
6
7

O: Canal de salida (seales de seleccin de salida)


Especifique el canal de salida asignado a la Unidad de salida y conecte las 8
seales de seleccin a la Unidad de salida como se muestra en el siguiente
diagrama.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
O

0
1
2 Los bits 00 hasta 07 se
3 corresponden con las
4 salidas de la Unidad de
5 salida 0 hasta 7.
6
7

D: Primer canal de registro


Especifica la direccin de canal inicial de los 4 canales que contienen los
datos de la matriz 8 8.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D

15 0
14 1
13 2 Los bits 00 hasta 15 se
12 3 corresponden con los
11 4 elementos de matriz 0
10 5 hasta 15.
9 6
8 7

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D+1

15 0
14 1
13 2 Los bits 00 hasta 15 se
12 3 corresponden con los
11 4 elementos de matriz
10 5 16 hasta 31.
9 6
8 7

905
Instrucciones de Unidades de E/S bsicas Seccin 3-23

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D+2

15 0
14 1
13 2 Los bits 00 hasta 15 se
12 3 corresponden con los
11 4 elementos de matriz
10 5 32 hasta 47.
9 6
8 7

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
D+3

15 0
14 1
13 2 Los bits 00 hasta 15
12 3 se corresponden con
11 4 los elementos de
10 5 matriz 48 hasta 63.
9 6
8 7

C: Canal del sistema


Especifica un canal de trabajo utilizado por la instruccin. Este canal no
puede utilizarse en ninguna otra aplicacin.
15 0
C

Canal del sistema


(El usuario no puede acceder a l).

Especificaciones del
operando rea I O D C
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 614 CIO 6143
rea de Trabajo W000 hasta W511 W000 hasta W000 hasta
W508 W511
rea de bit en H000 hasta H511 H000 hasta H508 H000 hasta H511
Espera
rea Bit Auxiliar A000 A448 A448 hasta A956 A448 hasta A959
hasta hasta
A959 A959
rea Temporizador T0000 hasta T4095 T0000 hasta T0000 hasta
T4092 T4095
rea Contador C0000 hasta C4095 C0000 hasta C0000 hasta
C4092 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32764 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32764 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32764 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---

906
Instrucciones de Unidades de E/S bsicas Seccin 3-23

rea I O D C
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin MTR(213) entrega las seales de seleccin a los bits 00 hasta 07 de O, lee
los datos en orden de los bits 00 hasta 07 de I, y almacena los 64 bits de
datos en los 4 canales de D hasta D+3. MTR(213) lee el estado de la matriz
de 64 bits cada 24 ciclos de CPU. El indicador de una ronda (bit 08 de O) se
pone en ON durante un ciclo cada 24 ciclos despus de que cada seal de
seleccin se haya puesto en ON.
Cuando se ejecuta, MTR(213) comienza leyendo el estado de la matriz por el
principio de la matriz, sin tener en cuenta en qu punto se detuvo la ltima
instruccin.
No hay restriccin en el nmero de veces que MTR(213) puede aparecer en
el programa (al contrario que en el caso de las series C200HX/HG/HE y
CQM1H).

Conexiones externas Conecte el teclado hexadecimal a los contactos 0 hasta 3 de la Unidad de


entrada y a los contactos 0 hasta 3 de la Unidad de salida, tal y como se
muestra en el siguiente diagrama.
8 fila

7 fila

OD212
A8 A7 A6 A5 A4 A3 A2 A1 A0
B9 B8 B7 B6 B5 B4 B3 B2 B1 B0

1 fila

A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 Unidad de E/S ID211

Las entradas y las salidas pueden conectarse a los siguientes tipos de


Unidades de E/S bsicas y Unidades de E/S de alta densidad, siempre y
cuando no estn montadas en un bastidor de E/S remoto SYSMAC BUS.
Unidades de entrada de c.c. con 8 o ms puntos de entrada
Unidades de salida de transistor con 8 o ms puntos de salida

907
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Diagramas de tiempos
00
01
02
03 Seales de seleccin
04
05
06
07
00
: Estado de la matriz
32
:
64
00
:
Bits que indican el estado de
32 las entradas (Bit en ON
:
64 cuando la entrada est en ON)
08 Indicador de una ronda

Una ronda completada en 24 ciclos

Indicadores
Nombre Etiqueta Operacin
Indicador de ER OFF
error

Precauciones No lea ni escriba el canal del sistema (C) desde ninguna otra instruccin.
MTR(213) no operar correctamente si se accede al canal del sistema desde
otra instruccin. El canal del sistema no es inicializado por MTR(213) en el
primer ciclo cuando se inicia la ejecucin del programa. Si MTR(213) se
utiliza desde el primer ciclo, elimine el canal del sistema del programa.
MTR(213) no operar correctamente si el refresco de E/S no se lleva a cabo
con la Unidad de entrada y la Unidad de salida conectadas a la matriz
externa despus de ejecutar MTR(213). Por lo tanto, no conecte la matriz
externa a las siguientes Unidades.
Unidades de E/S bsicas o Unidades de E/S de alta densidad montadas
en un bastidor esclavo de E/S remoto SYSMAC BUS
Esclavos de comunicaciones (esclavos DeviceNet o CompoBus/S)
Ejemplo En este ejemplo, MTR(213) lee los 64 bits de datos de la matriz 8 8 y
almacena los datos en los canales W000 hasta W003. La matriz de 8 8 se
conecta mediante CIO 0100 (asignada a una Unidad de entrada de c.c. de 16
puntos CS1W-ID211) y CIO 0200 (asignada a una Unidad de salida de
transistor de 16 puntos CS1W-OD211). D32000 se utiliza como canal de
sistema.
P_On
MTR (213)
Indicador de siempre ON I 0100
O 0200
D W000
C D32000

3-23-7 7-SEGMENT DISPLAY OUTPUT 7SEG(214)


Empleo Convierte los datos de origen (BCD de 4 dgitos u 8 dgitos) en datos de
visualizacin de 7 segmentos y produce la salida de los datos en el canal de
salida especificado.
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0
posterior.

908
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Smbolo de diagrama de
rels 7SEG (214)
S S: Canal fuente
O S: Canal de salida
C C: Datos de control
D D: Canal del sistema

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON 7SEG (214)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

Operandos S: Canal fuente


Especifique el primer canal fuente que contiene los datos que sern
convertidos a datos de visualizacin de 7 segmentos.
15 12 11 8 7 4 3 0
S

Dgito 4 Dgito 3 Dgito 2 Dgito 1

15 12 11 8 7 4 3 0
S+1

Dgito 8 Dgito 7 Dgito 6 Dgito 5

O: Canal de salida (salidas de datos y bloqueo)


Especifique el canal de salida asignado a la Unidad de salida y conecte la
visualizacin de 7 segmentos a la Unidad de salida como se muestra en el
siguiente diagrama.
Conversin de 4 dgitos
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
O
Indicador de
una ronda
LE3 D0
LE2 D1 Salida de datos
Salidas de bloqueo
LE1 D2 de 4 dgitos
LE0 D3

Conversin de 8 dgitos
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
O
Indicador de
una ronda
LE3 D0
Salidas de LE2 D1 Salida de datos de
bloqueo LE1 D2 4 dgitos de la izquierda
LE0 D3
D0
D1 Salida de datos de
D2 4 dgitos de la derecha
D3

909
Instrucciones de Unidades de E/S bsicas Seccin 3-23

C: Datos de control
El valor de C indica el nmero de dgitos de los datos de origen y la lgica de
las Unidades de entrada y salida, tal como se muestra en la siguiente tabla.
(La lgica se refiere a la lgica de las salidas de transistor NPN o PNP).
Datos Lgica de entrada de Lgica de entrada de C
origen datos del display enclavamiento del display
4 dgitos Lo mismo que la unidad de Lo mismo que la unidad de salida 0000
(S) salida Diferente de la unidad de salida 0001
Diferente de la unidad de Lo mismo que la unidad de salida 0002
salida Diferente de la unidad de salida 0003
8 dgitos Lo mismo que la unidad de Lo mismo que la unidad de salida 0004
(S, S+1) salida Diferente de la unidad de salida 0005
Diferente de la unidad de Lo mismo que la unidad de salida 0006
salida Diferente de la unidad de salida 0007
D: Canal del sistema
Especifica un canal de trabajo utilizado por la instruccin. Este canal no
puede utilizarse en ninguna otra aplicacin.
15 0
D

Canal del sistema


(El usuario no puede acceder a l).

Especificaciones del
operando rea S O C D
rea CIO CIO 0000 hasta CIO 6143 --- CIO 0000 hasta
CIO 6143
rea de Trabajo W000 hasta W511 --- W000 hasta W511
rea de bit en H000 hasta H511 --- H000 hasta H511
Espera
rea Bit Auxiliar A000 hasta A448 hasta --- A448 hasta A959
A959 A959
rea Temporizador T0000 hasta T4095 --- T0000 hasta T4095
rea Contador C0000 hasta C4095 --- C0000 hasta C4095
rea DM D00000 hasta D32767 --- D00000 hasta
D32767
rea EM sin banco E00000 hasta E32767 --- E00000 hasta
E32767
rea EM con Banco En_00000 hasta En_32767 --- En_00000 hasta
(n = 0 a C) En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767 ---
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @
En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- --- 0000 ---
hasta
0007

910
Instrucciones de Unidades de E/S bsicas Seccin 3-23

rea S O C D
Registros de datos --- DR0 hasta --- DR0 hasta DR15
DR15
Registros de ndice ---
Direccionamiento IR0 hasta IR15, 2048 hasta --- ,IR0 hasta ,IR15
indirecto utilizando +2047, IR0 hasta IR15 2048 hasta +2047
registros de ndice DR0 hasta DR15, IR0 hasta ,IR0 hasta 2048
IR15 hasta +2047 ,IR15
,IR0+(++) hasta ,IR15+(++) DR0 hasta DR15,
,( )IR0 hasta, ( )IR15 IR0 hasta IR15
,IR0+(++) hasta
,IR15+(++)
,( )IR0 hasta,
( )IR15

Descripcin 7SEG(214) lee los datos fuente, los convierte a datos de display de 7
segmentos, y entrega esos datos (como los 4 dgitos de la izquierda D0 hasta
D3, los 4 dgitos de la derecha D0 hasta D3, seales de salida de bloqueo
LE0 hasta LE3) al display de 7 segmentos conectado a la salida indicada por
O. El valor de C indica el nmero de dgitos de los datos origen (4 u 8 dgitos)
y la lgica para las Unidades de entrada y salida.
7SEG(214) muestra los datos de 4 u 8 dgitos en 12 ciclos y, a continuacin,
vuelve a empezar y contina mostrando los datos.
El indicador de una ronda (bit 08 de O cuando se convierten 4 dgitos, bit 12
de O cuando se convierten 8 dgitos) se pone en ON durante un ciclo cada 12
ciclos una vez 7SEG(214) haya puesto en ON cada una de las seales de
salida de bloqueo. Despus de entregar datos de 7 segmentos en 12 ciclos,
7SEG(214) vuelve a comenzar y convirte los contenidos actuales del canal o
los canales fuente en los siguientes 12 ciclos.
Cuando se ejecuta, 7SEG(214) comienza en la salida de bloqueo 0 al
principio de la ronda, sin tener en cuenta en qu punto se detuvo la ltima
instruccin.
Incluso si el display de 7 segmentos tiene menos de 4 u 8 dgitos en la
visualizacin, 7SEG(214) entregar 4 u 8 dgitos de datos.

Conexiones externas Conecte el display de 7 segmentos a la Unidad de salida como se muestra en


el siguiente diagrama. Este ejemplo muestra un display de 8 dgitos. Con un
display de 4 dgitos, las salidas de datos (D0 hasta D3) se conectaran a las
salidas 0 hasta 3 y las salidas de bloqueo (LE0 hasta LE3) se conectaran a
las salidas 4 hasta 7. El punto de salida 12 (para display de 8 dgitos) o el
punto de salida 8 (para display de 4 dgitos) se pondrn en ON cuando haya

911
Instrucciones de Unidades de E/S bsicas Seccin 3-23

sido entregada una ronda de datos, pero no es necesario conectarlos a no


ser que sean requeridos por la aplicacin.
Display de 7 segmentos
4 dgitos de la izquierda 4 dgitos de la derecha
D0 VDD VDD D0
D1 (+) (+) D1
D2 VSS VSS D2
D3 (0) (0) D3
LE3 LE2 LE1 LE0 LE3 LE2 LE1 LE0

OD212

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CC
COM

Unidad de salida
Las entradas y las salidas pueden conectarse a los siguientes tipos de
Unidades de E/S bsicas y Unidades de E/S de alta densidad, siempre y
cuando no estn montadas en un bastidor de E/S remoto SYSMAC BUS.
Display de 4 dgitos: Unidades de salida de transistor con 8 o ms puntos
de salida
Display de 8 dgitos: Unidades de salida de transistor con 16 o ms
puntos de salida
Diagramas de tiempos
Funcin Bit(s) de O Estado de salida (la lgica de datos y bloqueo depende de C)
(4 dgitos, (4 dgitos,
1 bloque) 2 bloques)

Salida de datos 00 hasta 03 00 hasta 03


04 hasta 07 100 101 102 103 Nota: 0 a 3: Salida de datos
para el canal S
Salida de bloqueo 0 04 08 4 hasta 7: Salida de
Salida de bloqueo 1 05 09 datos para el canal S+1
Salida de bloqueo 2 06 10
Salida de bloqueo 3 07 11

Indicador de una ronda 08 12

1 2 3 4 5 6 7 8 9 10 11 12 1

Se requieren 12 ciclos para completar una ronda

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF

912
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Precauciones No lea ni escriba el canal del sistema (D) desde ninguna otra instruccin.
7SEG(214) no operar correctamente si se accede al canal del sistema
desde otra instruccin. El canal del sistema no es inicializado por 7SEG(214)
en el primer ciclo cuando se inicia la ejecucin del programa. Si 7SEG(214)
se utiliza desde el primer ciclo, elimine el canal del sistema del programa.
7SEG(214) no operar correctamente si el refresco de E/S no se lleva a cabo
con la Unidad de salida conectada al display de 7 segmentos despus de
ejecutar 7SEG(214). Por lo tanto, no conecte la matriz externa a las
siguientes Unidades.
Unidades de E/S bsicas o Unidades de E/S de alta densidad montadas
en un bastidor esclavo de E/S remoto SYSMAC BUS
Esclavos de comunicaciones (esclavos DeviceNet o CompoBus/S)
Ejemplo En este ejemplo, 7SEG(214) convierte los 8 dgitos de datos BCD de D00100
y D00101 y entrega los datos a travs de CIO 0100 a un display de 7
segmentos conectado a una Unidad de salida de transistor de 16 puntos
CS1W-OD211.
Se entregan 8 dgitos de datos y la lgica del display de 7 segmentos es la
misma que la lgica de la Unidad de salida, as que los datos de control (C)
se configuran como 0004. D32000 se utiliza como canal del sistema, D.
P_On
7SEG (214)
Indicador de S D00100
siempre ON
O 0100
C 004
D D32000

3-23-8 INTELLIGENT I/O READ: IORD(222)


Empleo Lee el contenido del rea de memoria de una Unidad de E/S especial o
Unidad de bus de CPU (ver nota).
Nota Hay restricciones funcionales para Unidades de bus de CPU. Consulte
Restricciones ms delante en esta misma seccin.
Smbolo de diagrama de
rels
IORD(222)

C C: Datos de control

S S: Fuente y nmero de canales de transferencia

D D: Destino de transferencia
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON IORD(222)
Se ejecuta una vez en el diferencial ascendente @IORD(222)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

913
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Operandos C: Depende de Unidad de E/S especial o Unidad de bus de CPU.


S: Unidad de E/S especial: 0000 hasta 005F hexadecimal
(para especificar los nmeros de
unidad de 0 hasta 95)
Unidad de bus de CPU: 8000 hasta 800F hexadecimal
(para especificar los nmeros de
Unidad de 0 hasta F hexadecimal)
S+1: Nmero de canales a transferir
(0001 hasta 0080 Hexadecimal, depende de Unidad de E/S
especial o Unidad de bus de CPU)
S+1 S S+1: 4 dgitos de
la izquierda
S: 4 dgitos de la derecha

Especificaciones del
operando rea C S D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6142 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta W511
W511 W510
rea de bit en Espera H000 hasta H511 H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A000 hasta A958 A448 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta T4095
T4095 T4094
rea Contador C0000 hasta C0000 hasta C0000 hasta C4095
C4095 C4094
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32766 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32766 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32766 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta Slo valores ---
#FFFF especificados
(Binario)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin IORD(222) lee el nmero de canales designado en S+1 del rea de memoria
de la Unidad de E/S especial o Unidad de bus de CPU cuyo nmero de
Unidad es designado por S y entrega los datos a D. Slo pueden designarse
Unidades de E/S especial o Unidades de bus de CPU montadas en
bastidores de CPU o en bastidores de E/S expansores. Consulte en el
manual de operacin de la Unidad de E/S especial o de la Unidad de bus de
CPU desde la que se leen datos detalles especficos para cada Unidad.

914
Instrucciones de Unidades de E/S bsicas Seccin 3-23

S
S+1
Nmero de Unidad de Unidad de E/S
especial o Unidad de bus de CPU

Nmero
designado
de
canales
ledos.

Restricciones Existen las siguientes restricciones para lectura desde una Unidad de bus de
CPU.

Restricciones en la CPU
CPUs CS1-H
La lectura desde una Unidad de bus de CPU es posible solamente para los
siguientes modelos de CPU y solamente para CPUs fabricadas a partir del 18
de abril de 2003 inclusive (nmero de lote 030418 o posterior).
CS1G-CPU@@H
CS1H-CPU@@H
La fecha de fabricacin puede confirmarse mediante el nmero de lote del
lateral o la parte inferior de la CPU. Los nmeros de lote indican la fecha de
fabricacin como sigue:
AAMMDD nnnn
AA = dos dgitos de la derecha del ao, MM = el mes como valor numrico,
DD = da del mes, nnnn = nmero de serie
CPUs CJ1-H, CJ1M y CS1D
La lectura desde una Unidad de bus de CPU solamente es posible para
CPUs Ver. 2.0 posterior.
Nota Si IORD(222) se ejecuta para una Unidad de bus de CPU funcionando
subordinada a una CPU que no soporta la utilizacin de IORD(222) para
Unidades de bus de CPU se producir un error y el indicador ER se pondr
en ON.

Restricciones para CX-Programmer


Los nmeros de Unidad para Unidades de bus de CPU pueden especificarse
para S con CX-Programmer versin 3.0 o superior.

915
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el nmero de canales a transferir (S) est fuera del
error rango de 0001 hasta 0080 hexadecimal.
ON si el nmero de Unidad (S) est fuera del rango de
0000 hasta 005F hexadecimal o bien 8000 hasta 800F
hexadecimal.
ON si la Unidad de E/S especial designada est en
SYSMAC BUS.
ON si se designa una Unidad de E/S especial o una Unidad
de bus de CPU no afectada por IORD(222).
ON si se designa una Unidad de E/S especial con un error
de configuracin de Unidad de E/S especial o con un error
de Unidad de E/S especial.
ON si se designa una Unidad de bus de CPU con un error
de configuracin de Unidad de bus de CPU o un error de
Unidad de bus de CPU.
Con las CPUs CS1D: ON si las CPUs activas y en reposo
no han podido ser sincronizadas.
OFF en el resto de los casos.
Indicador de = ON si la operacin de lectura se completa normalmente.
igual OFF si la operacin de lectura no se completa
normalmente.

Precauciones El indicador de igual se pondr en ON si la operacin de lectura se completa


normalmente.
El indicador de igual se pondr en OFF si la operacin de lectura no puede
completarse normalmente debido a que la Unidad de E/S especial o la
Unidad de bus de CPU est ocupada.
Siempre que se produzca uno de los siguientes casos, se producir un error y
el indicador de error se pondr en ON.
El nmero de canales a transferir (S) est fuera del rango de 0001 hasta
0080 hexadecimal.
El nmero de Unidad (S) est fuera del rango de 0000 hasta 005F
hexadecimal o bien 8000 hasta 800F hexadecimal.
La Unidad de E/S especial designada est en SYSMAC BUS.
Se designa una Unidad de E/S especial o una Unidad de bus de CPU no
afectada por IORD(222).
Se designa una Unidad de E/S especial con un error de configuracin de
Unidad de E/S especial o con un error de Unidad de E/S especial.
Se designa una Unidad de bus de CPU con un error de configuracin de
Unidad de bus de CPU o un error de Unidad de bus de CPU.
Cuando se ejecuta IORD(222), los resultados de ejecucin se reflejan en los
indicadores de condicin. En particular, el indicador de igual de pone en ON
cuando se completa la lectura. Introduzca los indicadores de condicin como
el indicador de igual con ramificacin de salida desde las mismas condiciones
de entrada que la instruccin IORD(222).
Si la Unidad de E/S especial o la Unidad de bus de CPU estn ocupadas, la
operacin de lectura no se ejecutar. Utilice el indicador de igual para crear
un programa de autorretencin como se muestra a continuacin, de tal
manera que IORD(222) se ejecute cada ciclo hasta que la operacin de
lectura sea ejecutada.

916
Instrucciones de Unidades de E/S bsicas Seccin 3-23

B
IORD
C
S
D

=
A B

Cuando se cumple la condicin de entrada, la autorretencin es ejecutada


por la salida A y IORD(222) se ejecuta con cada ciclo hasta que el indicador
de igual se ponga en ON. Cuando completa la lectura y el indicador de igual
se pone en ON, la salida B se pone en ON y la autorretencin se elimina.
Asegrese de colocar los indicadores de condicin directamente despus de
las instrucciones IORD(222), y no despus de otras instrucciones. Si se
coloca un indicador de condicin despus de otra instruccin, esto afectar a
los resultados de ejecucin de esa instruccin.

Ejemplo En este ejemplo, IORD(222) se utiliza para leer datos.


Cuando CIO 000000 se pone en ON, se leen 10 canales desde la
Unidad de E/S especial con el nmero de Unidad 3 y se almacenan
en D00100 hasta D00109.
S+1 S
S

Nmero de canales Nmero de unidad: 3


a transferir: 10

El cdigo de control (C) vara dependiendo de la Unidad de E/S especial.

CPU Unidad de E/S especial (Unidad #3)

10 canales

3-23-9 INTELLIGENT I/O WRITE: IOWR(223)


Empleo Entrega el contenido del rea de memoria de E/S de la CPU a una Unidad de
E/S especial o una Unidad de bus de CPU (ver nota).
Nota Hay restricciones funcionales para Unidades de bus de CPU. Consulte
Restricciones ms delante en esta misma seccin.

917
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Smbolo de diagrama de
rels IOWR(223)

C C: Datos de control

S S: Fuente y nmero de canales de transferencia

D D: Destino y nmero de canales de transferencia

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON IOWR(223)
Se ejecuta una vez en el diferencial ascendente @IOWR(223)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Depende de Unidad de E/S especial o Unidad de bus de CPU.


D: Unidad de E/S especial: 0000 hasta 005F hexadecimal
(para especificar los nmeros de
unidad de 0 hasta 95)
Unidad de bus de CPU: 8000 hasta 800F hexadecimal
(para especificar los nmeros de
Unidad de 0 hasta F hexadecimal)
D+1: Nmero de canales a transferir
(0000 hasta 0080 Hexadecimal, depende de Unidad de E/S
especial o Unidad de bus de CPU)
D+1 D D+1: 4 dgitos de
la izquierda
D: 4 dgitos de la derecha

Especificaciones del
operando rea C S D
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6142
rea de Trabajo W000 hasta W511 W000 hasta W510
rea de bit en Espera H000 hasta H511 H000 hasta H510
rea Bit Auxiliar A000 hasta A959 A000 hasta A958
rea Temporizador T0000 hasta T4095 T0000 hasta T4094
rea Contador C0000 hasta C4095 C0000 hasta C4094
rea DM D00000 hasta D32767 D00000 hasta D32766
rea EM sin banco E00000 hasta E32767 E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32766
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)

918
Instrucciones de Unidades de E/S bsicas Seccin 3-23

rea C S D
Constantes #0000 hasta #FFFF Slo valores
(Binario) especificados
Registros de datos DR0 hasta --- ---
DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin IOWR(223) escribe el nmero de canales designado (D) desde el primer


canal fuente en adelante y los entrega a la Unidad de E/S especial o Unidad
de bus de CPU cuyo nmero de Unidad es designado por D. Slo pueden
designarse Unidades de E/S especial o Unidades de bus de CPU montadas
en bastidores de CPU o en bastidores de E/S expansores.

D
D+1
Nmero de Unidad de Unidad de E/S
especial o Unidad de bus de CPU

Nmero
designado
de canales
escritos.

Restricciones Existen las siguientes restricciones para lectura desde Unidad de bus de
CPU.
Restricciones en la CPU
CPUs CS1-H
La escritura en una Unidad de bus de CPU es posible solamente para los
siguientes modelos de CPU y solamente para CPUs fabricadas a partir del 18
de abril de 2003 inclusive (nmero de lote 030418 o posterior).
CS1G-CPU@@H
CS1H-CPU@@H
La fecha de fabricacin puede confirmarse mediante el nmero de lote del
lateral o la parte inferior de la CPU. Los nmeros de lote indican la fecha de
fabricacin como sigue:
AAMMDD nnnn
AA = dos dgitos de la derecha del ao, MM = el mes como valor numrico,
DD = da del mes, nnnn = nmero de serie
CPUs CJ1-H, CJ1M y CS1D
La escritura en una Unidad de bus de CPU solamente es posible para CPUs
Ver. 2.0 posterior.
Nota Si IOWR(223) se ejecuta para una Unidad de bus de CPU funcionando
subordinada a una CPU que no soporta la utilizacin de IOWR(223) para
Unidades de bus de CPU se producir un error y el indicador ER se pondr
en ON.
Restricciones para CX-Programmer
Los nmeros de Unidad para Unidades de bus de CPU pueden especificarse
para S con CX-Programmer versin 3.0 o superior.

919
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si el nmero de canales a transferir (D) est fuera del
de error rango de 0001 hasta 0080 hexadecimal.
ON si el nmero de Unidad (D) est fuera del rango de 0000
hasta 005F hexadecimal o bien 8000 hasta 800F hexadecimal.
ON si S es designada por una constante cuando el nmero de
canales a transferir (D+1) no es 0001 hexadecimal.
ON si la Unidad de E/S especial designada est en SYSMAC
BUS.
ON si se designa una Unidad de E/S especial o una Unidad de
bus de CPU no afectada por IOWR(223).
ON si se designa una Unidad de E/S especial con un error de
configuracin de Unidad de E/S especial o con un error de
Unidad de E/S especial.
ON si se designa una Unidad de bus de CPU con un error de
configuracin de Unidad de bus de CPU o un error de Unidad
de bus de CPU.
Con las CPUs CS1D: ON si las CPUs activas y en reposo no
han podido ser sincronizadas.
OFF en el resto de los casos.
Indicador = ON si la operacin de escritura se completa normalmente.
de igual OFF si la operacin de escritura no se completa normalmente.

Precauciones Cuando se designa 0001 para el nmero de canales a transferir (D+1), los
datos para S pueden designarse mediante una constante. Si se designa una
constante para S cuando el nmero de canales a transferir no es 0001, se
producir un error y el indicador de error se pondr en ON.
El indicador de igual se pondr en ON si la operacin de escritura se
completa normalmente.
El indicador de igual se pondr en OFF si la operacin de escritura no puede
completarse normalmente debido a que la Unidad de E/S especial o la
Unidad de bus de CPU est ocupada.
Siempre que se produzca uno de los siguientes casos, se producir un error y
el indicador de error se pondr en ON.
Hay un error de verificacin de Unidad de E/S especial, un error de
configuracin de Unidad de E/S especial o un error de de Unidad de E/S
especial en la Unidad de E/S especial.
Hay un error de verificacin de Unidad de E/S, un error de configuracin
de Unidad de bus de CPU o un error de Unidad de bus de CPU en la
Unidad de bus de CPU.
El nmero de canales a transferir (D) est fuera del rango de 0001 hasta
0080 hexadecimal.
El nmero de Unidad (D) est fuera del rango de 0000 hasta 005F
hexadecimal o bien 8000 hasta 800F hexadecimal.
La Unidad de E/S especial designada est en SYSMAC BUS.
Se designa una Unidad de E/S especial o una Unidad de bus de CPU no
afectada por IOWR(223).
Se designa una Unidad de E/S especial con un error de configuracin de
Unidad de E/S especial o con un error de Unidad de E/S especial.
Se designa una Unidad de bus de CPU con un error de configuracin de
Unidad de bus de CPU o un error de Unidad de bus de CPU.
Cuando se ejecuta IOWR(223), los resultados de ejecucin se reflejan en los
indicadores de condicin. En particular, el indicador de igual de pone en ON
cuando se completa la lectura. Introduzca los indicadores de condicin como
el indicador de igual con ramificacin de salida desde las mismas condiciones
de entrada que la instruccin IOWR(223).

920
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Si la Unidad de E/S especial o la Unidad de bus de CPU estn ocupadas, la


operacin de escritura no se ejecutar. Utilice el indicador de igual para crear
un programa de autorretencin como se muestra a continuacin, de tal
manera que IOWR(223) se ejecute cada ciclo hasta que la operacin de
escritura sea ejecutada.
B
IOWR
C
S
D

A = B

Cuando se cumple la condicin de entrada, la autorretencin es ejecutada


por la salida A y IOWR(223) se ejecuta con cada ciclo hasta que el indicador
de igual se ponga en ON. Cuando completa la escritura y el indicador de igual
se pone en ON, la salida B se pone en ON y la autorretencin se elimina.
Asegrese de colocar los indicadores de condicin directamente despus de
las instrucciones IOWR(223), y no despus de otras instrucciones. Si se
coloca un indicador de condicin despus de otra instruccin, esto afectar a
los resultados de ejecucin de esa instruccin.
Ejemplo En este ejemplo, IOWR(223) se utiliza para escribir datos.
Cuando CIO 000000 se pone en ON, los 10 canales de D00100
hasta D00109 se escriben en la Unidad de E/S especial.

D+1 D

Nmero de Nmero de unidad: 3


canales a
transferir: 10

El cdigo de control (C) vara dependiendo de la Unidad de E/S especial.

CPU Unidad de E/S especial (Unidad #3)

10 canales

3-23-10 CPU BUS UNIT I/O REFRESH: DLNK(226)


Empleo Ejecuta refresco de E/S inmediatamente para la Unidad de bus de CPU con
el nmero de Unidad especificado. Se refrescan los siguientes datos:
Los canales asignados a la Unidad de bus de CPU en las reas de
Unidad de bus de CPU del PLC (25 canales en el rea CIO y 100 canales
en el rea DM)
Refresco de datos especficos para Unidades como Unidades compati-
bles con Data Link
921
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de
DLNK(226)
rels N
N: Nmero de unidad

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DLNK(226)
Se ejecuta una vez en el diferencial ascendente @DLNK(226)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de unidad


Especifica el nmero de Unidad de la Unidad de bus de CPU (0000 hasta
000F hexadecimal o bien 0 hasta 15 decimal).

Especificaciones del
operando rea N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #000F (binario) o bien 0 hasta 15 (decimal)
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin DLNK(226) realiza refresco de E/S inmediato para la Unidad de bus de CPU
con el nmero de Unidad especificado. Se refrescan los datos relacionados a
continuacin. Consulte en lasPrecauciones descritas a continuacin detalles
sobre las condiciones de ejecucin para utilizar refresco inmediato.

922
Instrucciones de Unidades de E/S bsicas Seccin 3-23

1. Los canales asignados a la Unidad de bus de CPU en las reas de Unidad


de bus de CPU del PLC (25 canales en el rea CIO y 100 canales en el
rea DM)
2. Los datos especficos de Unidades de bus de CPU como datos data link o
datos de comunicaciones remotas DeviceNet (se refrescan conjuntamen-
te con los datos de las reas de Unidad de bus de CPU)
Unidad de bus de CPU Refresco de datos especficos de
Unidad
Unidad Controller Link o Unidad Refresco de data link
SYSMAC LINK
Unidad DeviceNet Refresco de comunicaciones de E/S
(No incluye las unidades maestras remotas
C200H DeviceNet).

CPU
Unidad de bus de CPU
reas de datos utilizadas por la con nmero de unidad N
Unidad de bus de CPU con el
nmero de Unidad N
Canales asignados en el
rea CIO

Refrescar
Canales asignados en el
rea DM

rea de data link

La siguente tabla muestra cmo DLNK(226) difiere de IORF(097).


Instruccin Operacin
DLNK(226) Refresco de E/S del rea de Unidad de bus de CPU CS1 en el
rea CIO (25 canales)
Refresco de E/S del rea de Unidad de bus de CPU CS1 en el
rea DM (100 canales)
Refresco de datos especficos de la Unidad de bus de CPU,
como datos data link o datos de comunicaciones de E/S
remotas DeviceNet
IORF(097) Refresco de E/S de los canales utilizados por Unidades de E/S
bsicas
Refresco de E/S de los 10 canales CIO asignados a una Unidad
de E/S especial

DLNK(226) refresca los datos entre la CPU y la Unidad de bus de CPU


especificada. Hay dos factores especiales a considerar cuando se utiliza
DLNK(226):

1,2,3... 1. Cuando se intercambian datos mediante data link o comunicaciones de E/


S remotas DeviceNet, el intercambio de datos no se lleva a cabo con las
otras Unidades al mismo tiempo que se ejecuta DLNK(226). El
intercambio de datos puede realizarse cuando el ciclo de comunicaciones
de red alcanza la Unidad en cuestin y los datos se intercambian con esa
Unidad. Consecuentemente, el intercambio actual de datos puede
retardarse tanto como el tiempo de ciclo de comunicaciones de la red.
2. DLNK(226) no puede llevar a cabo refresco de E/S con una Unidad de bus
de CPU cuando esa Unidad est intercambiando datos en ese momento.
Si DLNK(226) se ejecuta con demasiada frecuencia no se realizar
refresco de E/S. Recomendamos establecer un retardo entre las
ejecuciones de DLNK(226) que sea ms largo que el tiempo de ciclo de
comunicaciones

923
Instrucciones de Unidades de E/S bsicas Seccin 3-23

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el nmero de Unidad especificado no est entre 0000
error y 000F hexadecimal (entre 0 y 15 decimal).
ON si el PLC no tiene una Unidad de bus de CPU con el
nmero de Unidad especificado.
Con las CPUs CS1D: ON si las CPUs activas y en reposo
no han podido ser sincronizadas.
OFF en el resto de los casos.
Indicador de = OFF si el refresco de E/S no ha podido realizarse porque la
igual Unidad de bus de CPU estaba refrescando datos.
OFF si existe un error de Unidad de bus de CPU o un error
de configuracin de Unidad de bus de CPU en la Unidad de
bus de CPU especificada.
OFF si DLNK(226) se ha ejecutado en una tarea de
interrupcin, se ha presentado un conflicto con el refresco
de E/S normal y se ha producido un solapamiento de los
procesos de refresco.
ON si el refresco de E/S se ha completado normalmente.

Precauciones El refresco de E/S no se llevar a cabo si se ha producido un error de Unidad


de bus de CPU (A40207) o un error de configuracin de Unidad de bus de
CPU (A40203) en la Unidad de bus de CPU especificada.
El refresco de E/S se detendr si se produce un error de bus de E/S mientras
se est realizando refresco de E/S mediante DLNK(226).
DLNK(226) refresca los datos entre la CPU y la Unidad de bus de CPU espe-
cificada. Es necesario algn tiempo para el intercambio de datos con la Uni-
dad de bus de CPU (por ejemplo, un data link con una Unidad Controller
Link).
Si la Unidad de bus de CPU especificada est intercambiando datos,
DLNK(226) no se ejecutar y el indicador de igual se pondr en OFF. Reco-
mendamos programar las condiciones de ejecucin mostradas a continua-
cin para que la ejecucin de DLNK(226) vuelva a intentarse
automticamente.
Condicin de
ejecucin b
DLNK
N

Indicador de igual
a a

Indicador de igual b

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, DLNK(226) realiza


refresco de E/S inmediato (en este caso, refresco de data link en el PLC) para
la Unidad de bus de CPU con el nmero de Unidad 1 (en este caso, una
Unidad Controller Link). Si el refresco de E/S no puede realizarse porque la
Unidad Controller Link est refrescando datos, el indicador de igual se pondr
en OFF causando que W001se ponga en ON, de tal manera que la ejecucin
de la instruccin se intente de nuevo en el siguiente ciclo. Cuando el refresco
de E/S se completa normalmente, el indicador de igual se pone en ON y no
volver a intentarse la ejecucin de la instruccin en el siguiente ciclo.
924
Instrucciones de Unidades de E/S bsicas Seccin 3-23

000000 W000
DLNK
&1

Indicador de igual
W001 W001

Indicador de igual
W000

Unidad Controller Link con el


000000 nmero de Unidad 1
DLNK
Refrescar
&1

Refresco
de data link
rea de data link

Controller Link

La temporizacin real para el refresco del rea de data link es este ejemplo
es como sigue:
Al transmitir: Se transmiten datos por la red la siguiente vez que se
adquiere el testigo. (Los datos transmitidos se retardan hasta como
mximo el tiempo de 1 ciclo de comunicaciones).
Al recibir: Los datos introducidos fueron recibidos de la red la ltima vez
que se tuvo el testigo. (Los datos recibidos se retardan hasta como
mximo el tiempo de 1 ciclo de comunicaciones).
Ejemplos de procesamiento de transferencia de datos:
Transferencia de datos del refresco de E/S previo
Tiempo de ciclo Refresco de data
link en el PLC

Procesamiento de transferencia de datos


Data link

Tiempo de un ciclo de
comunicaciones

925
Instrucciones de comunicaciones serie Seccin 3-24

Transferencia de datos con ejecucin de DLNK(226)


Tiempo de ciclo
Refresco de data
link en el PLC

Procesamiento de transferencia de datos


Data link

Tiempo de un ciclo de
comunicaciones

3-24 Instrucciones de comunicaciones serie


Esta seccin describe las instrucciones utilizadas para las comunicaciones
serie.
Instruccin Nemnico Cdigo de Pgina
funcin
PROTOCOL MACRO PMCR 260 928
TRANSMIT TXD 236 937
RECEIVE RXD 235 944
TRANSMIT VIA SERIAL TXDU 256 952
COMMUNICATIONS UNIT
RECEIVE VIA SERIAL RXDU 255 960
COMMUNICATIONS UNIT
CHANGE SERIAL PORT SETUP STUP 237 968

3-24-1 Comunicaciones serie


Hay dos tipos de instruccin de comunicaciones serie. las instrucciones
TXD(236), RXD(235), TXDU(256) y RXDU(255) envan y reciben datos en
comunicaciones sin protocolo (usuario) con un dispositivo externo.
PMCR(260) enva y recibe datos utilizando protocolos definidos por el usua-
rio con un dispositivo exteno. La diferencia se muestra en las siguientes
tablas.

Nota 1. Las instrucciones TXD(236) y RXD(235) transfieren datos solamente a


travs del puerto serie incorporado en la CPU o de un puerto serie de la
tarjeta de comunicaciones serie (Ver. 1.2 posterior).
2. Las instrucciones TXDU(256) y RXDU(255) transfieren datos solamente a
travs de una Unidad de comunicaciones serie (Ver. 1.2 posterior).

926
Instrucciones de comunicaciones serie Seccin 3-24

Instruc- Tramas de comunicaciones Funcin


ciones
TXD(236), Envan o reciben datos en una direccin
Se puede utilizar cualquiera de las siguientes opciones.
RXD(235), solamente.
TXDU(256) Sin cdigo de inicio ni de fin Cdigo de inicio y de fin
Puede configurarse un retardo de envo.
y Datos Datos
RXDU(255)
Slo cdigo de inicio Cdigo de fin CR+LF
Datos Datos

Slo cdigo de fin Cdigo de inicio y de fin CR+LF


Datos Datos

PMCR(260) Pueden definirse hasta 16 pasos para enviar


Pueden crearse los siguientes tipos de tramas (mensajes)
para cumplir los requisitos del dispositivo externo. y recibir.
Comprobacin Los pasos pueden modificarse y el proceso
Encabezado Direccin Datos Terminacin
de errores
de reintento se ejecuta basndose en
Pueden crearse pasos respuestas.
de comunicaciones. Pueden configurarse tiempos de
Memoria de E/S
monitorizacin de comunicaciones.
Pueden leerse/escribirse smbolos para el
Leer/Escribir PLC.
Pueden utilizarse smbolos repetidos.
Otros.

Instruc- Modo Puertos de comunicaciones


ciones
TXD(236) y Sin protocolo Puerto serie de la CPU o de la tarjeta de comunicaciones serie
RXD(235) (usuario)
CPU
TXD(236)/
RXD(235) TXD(236) y RXD(235)
utilizan los puertos serie
de la CPU o de las
tarjetas de
RXD(235) comunicaciones serie
(Ver. 1.2 posterior).
TXD(236)
TXDU(256) Sin protocolo Puerto serie de la Unidad de comunicaciones serie (versin 1.2 posterior)
y (usuario) Unidad de
RXDU(255) comunicaciones serie CPU
TXDU/RXDU

RXD

TXD

PMCR(260) Macro de Tarjeta de comunicaciones serie (Serie CS Unidad de comunicaciones serie


protocolo solamente)
Unidad de comunicaciones serie
Tarjeta de
comunicaciones
serie
Recibir

Enviar Recibir

Enviar

927
Instrucciones de comunicaciones serie Seccin 3-24

3-24-2 PROTOCOL MACRO: PMCR(260)


Empleo Llama y ejecuta una secuencia de comunicaciones registrada en una tarjeta o
Unidad de comunicaciones serie (slo serie CS).

Smbolo de diagrama de
rels PMCR(260)

C1 C1: Canal de control 1

C2 C2: Canal de control 2

S S: Primer canal de envo

R R: Primer canal de recepcin

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON PMCR(260)
Se ejecuta una vez en el diferencial ascendente @PMCR(260)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos C1: Canal de control 1 y C2: Canal de control 2


Los contenidos de los dos canales de control se muestran a continuacin.
15 12 11 8 7 4 3 0

C1

Direccin de Unidad de pareja de


comunicaciones de la Unidad de bus de CPU
CS1: Nmero de unidad +10 hexadecimal.
Tarjeta interna: E1 hexadecimal (Slo serie CS)
Nmero de puerto serie (puerto fsico)
1 hasta 2 hexadecimal (1 hexadecimal:
Puerto 1, 2 hexadecimal: Puerto 2)
Nmero de puerto de comunicaciones (puerto lgico) 0 hasta
7 hexadecimal (F hexadecimal: Asignacin automtica)

15 0

C2

Nmero de secuencia de comunicaciones


0000 hasta 03E7 hexadecimal (000 hasta 999 decimal)

Nota Consulte en Asignacin automtica de puerto de comunicaciones en la


pgina 979 ms detalles sobre la utilizacin de la asignacin automtica del
nmero de puerto de comunicaciones (puerto lgico).
S: Primer canal de envo y rea de envo
Se especifica el primer canal de los canales requeridos para enviar datos. S
contiene el nmero de canales a enviar +1 (es decir, incluyendo el canal S) y
el envo de datos comienza en S+1. Pueden enviarse canales entre 0000 y
00FA hexadecimal (0 y 250 decimal).
Si no hay operando especificado en la secuencia de ejecucin, como un
canal directo o enlazado, especifique la constante #0000 para S. Si se
especifica una direccin de canal o registro, los datos del canal o registro

928
Instrucciones de comunicaciones serie Seccin 3-24

deben ser siempre 0000. Se producir un error y el indicador de error se


pondr en ON si se da cualquier otra constante o direccin de canal y
PMCR(260) no se ejecutar.
Nmero de canales de
envo + 1

Deben prepararse por


hasta adelantado n canales
de datos.

R: Primer canal de recepcin y rea de recepcin


Los datos recibidos se almacenan automticamente en los canales
comenzando por R+1 y el nmero de canales recibido ms R (es decir,
incluyendo R) se escribe automticamente en R entre 0000 y 00FA
hexadecimal (0 y 250 decimal).
Configuracin antes de ejecutar PMCR
Configure los datos especificados por m (empezando por D) como los datos
iniciales del bfer de recepcin (copia de seguridad para fallos de recepcin).
Los datos m pueden configurarse como de 0002 hasta 00FA (hexadecimal) (2
hasta 255). Si se especifica 0000 (hexadecimal) 0001 (hexadecimal) para
m, el valor inicial del bfer de recepcin se establecer en 0.
Configure siempre una direccin de canal para R incluso si no existen datos
de recepcin. Si se configura una constante se producir un error, el
indicador de error se pondr en ON, y PMCR(260) no se ejecutar. Si no hay
datos de recepcin, R no se utilizar y podr entonces utilizarse para otros
fines.
Si no hay operando especificado en la secuencia de ejecucin, como un
canal directo o enlazado, especifique la constante #0000 para R. Si se
especifica una direccin de canal o registro, los datos del canal o registro
deben ser siempre 0000.
Nmero de canales
recibidos +1
R
Los m canales de datos
hasta que se reciben se
almacenan aqu.

Especificaciones del
operando rea C1 C2 S R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 a A447 A448 hasta
A448 hasta A959 A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

929
Instrucciones de comunicaciones serie Seccin 3-24

rea C1 C2 S R
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores 0000 hasta #0000 (binario)
especificados 03E7Hex
(0 hasta 999)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin PMCR(260) ejecutar la secuencia de comunicaciones especificada en C2


utilizando el puerto lgico especificado en los bits 12 hasta 15 de C1 y el
puerto fsico especificado en los bits 8 hasta 11 de C1 para la direccin de
Unidad especificada en los bits 0 hasta 7 de C1.
Si se especifica un smbolo como el operando para un mensaje de envo, el
nmero de canales de envo especificado en S y empezando por S+1 se
utilizar como el rea de envo. Si se especifica un smbolo como el operando
para un mensaje de recepcin, los datos de recepcin se colocan en la
memoria empezando por R+1 y el nmero de canales recibidos se escribe
automticamente en R si la transmisin se realiza con xito.
Si la transmisin falla, los datos (de R+1 hacia arriba) configurados antes de
que se ejecutara PMCR(260) se leern del bfer de recepcin y se
almacenarn en desde R+1 hacia arriba de nuevo.

CPU Unidad de comunicaciones serie


Puerto

hasta

R
Dispositivo
hasta
externo

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si el indicador de habilitacin de puerto de
de error comunicaciones est en OFF para el puerto lgico
especificado cuando se ejecuta PMCR(260).
ON si C1 no est dentro de los rangos especificados.
(El indicador de error no se pondr en ON si los datos de C2
estn fuera de los rangos especificados. El cdigo de fin se
almacenar en el cdigo de finalizacin de puerto de
comunicaciones (A203 hasta A210) del rea auxiliar).
ON si el nmero de canales de S o R es mayor de 249
(cuando se especifican canales).
OFF en el resto de los casos.

930
Instrucciones de comunicaciones serie Seccin 3-24

Precauciones Los datos de rea de envo especificada con S se envan realmente


utilizando la opcin de lectura de smbolo, R( ), en un mensaje de envo.
Los datos se reciben realmente en el rea de recepcin especificada por R
utilizando la opcin de escritura de smbolo, W( ), en un mensaje de
recepcin.
Consulte en el Manual de operacin de CX-Protocol (W344) los
procedimientos para designar los smbolos R( ) y W( ).
PMCR(260) puede ejecutarse para un puerto de comunicaciones serie de
una tarjeta de comunicaciones serie (slo serie CS) o una Unidad de
comunicaciones serie. Pueden montarse hasta 16 Unidades de
comunicaciones serie en el bastidor de la CPU y en los bastidores
expansores de E/S. La direccin de Unidad de la pareja de comunicaciones
debe configurarse en los bits 0 hasta 7 de C1 para especificar qu Unidad/
Tarjeta debe usarse y qu nmero de puerto serie debe configurarse en los
bits 8 hasta 11. Las direcciones de unidad se especifican como se muestra
en la siguiente tabla..
Unidad/tarjeta Direccin de Unidad
Tarjeta de comunicaciones serie E1 hexadecimal
(Slo serie CS)
Unidad de comunicaciones serie Nmero de Unidad + 10 hexadecimal

Unidades de Comunicaciones Serie


Tarjeta de comunicaciones serie
(Slo serie CS)

E1 hexadecimal
Direccin
(Slo serie CS)
de Unidad
Unidad n + 10

El indicador de ejecucin de macro de protocolo se pondr en ON al


comienzo de la ejecucin de PMCR(260). Se pondr en OFF una vez que la
secuencia de comunicaciones haya sido completada y se hayan escrito datos
en el rea de recepcin especificada. Debe utilizarse una entrada N.C. para
el correspondiente indicador de ejecucin de macro de protocolo como parte
de la condicin de ejecucin siempre que se ejecute PMCR(260) para
asegurarse de que slo se ejecuta una secuencia de comunicaciones cada
vez para el mismo puerto fsico. A continuacin se muestra un ejemplo.
Condicin de Indicador de Indicador de habilitacin de
ejecucin de macro
ejecucin de protocolo puerto de comunicaciones

PMCR(260)

SEND(090), RECV(098) y CMND(490) tambin usan los puertos lgicos 0


hasta 7 para la ejecucin de las secuencias de comunicaciones mediante
Unidades y tarjetas de comunicaciones serie (internamente mediante
comandos FINS). PMCR(260) no puede ejecutarse para un puerto lgico que
ya est siendo utilizado por SEND(090), RECV(098), CMND(490) o
PMCR(260). Para prevenir que se ejecute ms de una secuencia de
comunicaciones para el mismo puerto lgico, debe utilizarse el
correspondiente indicador de habilitacin de puerto de comunicaciones

931
Instrucciones de comunicaciones serie Seccin 3-24

(A20200 hasta A20207) como entrada N.A. en la condicin de ejecucin para


PMCR(260), tal y como se muestra en el diagrama anterior.
CPU

PMCR(260)

PMCR(260)

El indicador de error se pondr en ON en los siguientes casos.


El correspondiente indicador de habilitacin de puerto de comunicacio-
nes est en OFF para el puerto lgico (0 hasta 7) especificado cuando se
ejecuta PMCR(260).
C1 no est dentro de los rangos especificados.
Designacin del rea de recepcin
Antes de ejecutar PMCR(260), el usuario debe configurar una copia de datos
de seguridad en el rea de recepcin para el caso de que se produzca un
fallo de procesamiento. Una vez se haya ejecutado PMCR(260), los datos del
bfer de recepcin se almacenan automticamente en el rea de recepcin.
Un ejemplo de la aplicacin de copia de datos de seguridad es: Se configura
un valor concreto (copia de datos de seguridad) por adelantado de tal manera
que el valor actual no sea ledo como cero cuando se produzca un fallo de
transmisin mientras el protocolo est siendo ejecutado para la lectura del
valor actual de un controlador.

Indicadores y canales Los siguientes indicadores y canales pueden utilizarse segn sea necesario
relacionados cuando se ejecute PMCR(260).
rea auxiliar
Nombre Direccin Contenido
Indicador de A20200 hasta ON cuando se habilitan comunicaciones de
habilitacin de puerto A20207 red (incluso PMCR(260).
de comunicaciones Los bits 00 a 07 se corresponden con los
puertos lgicos 0 a 7 respectivamente.
Un indicador de habilitacin de puerto de
comunicaciones se pondr en OFF cuando
se inicien las comunicaciones de red y se
pondr en ON cuando se hayan completado
(sin tener en cuenta si las comunicaciones
finalizan normalmente o en error).

932
Instrucciones de comunicaciones serie Seccin 3-24

Nombre Direccin Contenido


Indicador de error del A21900 hasta ON cuando se produce un error en las
puerto de A21907 comunicaciones de red.
comunicaciones Los bits 00 a 07 se corresponden con los
puertos lgicos 0 a 7 respectivamente.
El estado del indicador se mantendr hasta
que comiencen las siguientes
comunicaciones de red. El indicador se
pondr en OFF cuando vuelvan a comenzar
las comunicaciones, incluso si se produce un
error en la ltima ejecucin.
Cdigos de A203 a A210 Contiene el cdigo de finalizacin
finalizacin de puerto almacenado cuando se realizan
de comunicaciones comunicaciones de red.
Los canales A203 a A210 se corresponden
con los puertos lgicos 0 a 7.
El cdigo de finalizacin ser 00 mientras la
instruccin de comunicaciones est siendo
ejecutada. El nuevo cdigo de respuesta se
almacenar cuando se haya completado la
ejecucin.
Los contenidos de estos canales se borrarn
cuando se inicie la operacin.

Respuestas de comunicaciones
Cdigo Contenido
1106 (hexadecimal) Nmero de programa no correspondiente
Nmero de secuencia de envo/recepcin especificada
que no ha sido registrada
Modifique el nmero de secuencia de envo/recepcin
o aada el nmero usando CX-Programmer.
2201 (hexadecimal) No operable debido a ejecucin de protocolo
Ya que la macro de protocolo ya ha sido ejecutada no
se acepta otra ejecucin.
Aada condicin NC al programa para el indicador de
ejecucin de macro de protocolo.
2202 (hexadecimal) No operable debido a detencin
Ya que se est alternando el protocolo no se acepta
otra ejecucin.
Aada condicin NC al programa para el indicador de
cambio de configuracin serie.
2401 (hexadecimal) No hay tabla de registro
Se ha producido un error en los datos de macro de
protocolo o se estn transmitiendo datos.
Transmita los datos de macro de protocolo mediante
CX-Programmer.
Otros Para obtener ms informacin sobre otros cdigos de
respuesta, consulte el Manual de referencia de los
comandos de comunicaciones de la serie CS/CJ
(W342).

933
Instrucciones de comunicaciones serie Seccin 3-24

rea de la tarjeta interna (Slo serie CS)


Nombre Direccin Contenido
Indicador de ejecucin de CIO 190915 ON cuando se ejecuta PMCR(260).
macro de protocolo de El indicador se mantendr en OFF si la
puerto 1 ejecucin falla.
Indicador de ejecucin de CIO 191915 El indicador se pondr en OFF cuando
macro de protocolo de la secuencia de comunicaciones se
puerto 2 haya completado (bien un final o una
cancelacin).

rea de unidad de bus de CPU


n = 1500 + 25 x nmero de Unidad
Nombre Direccin Contenido
Indicador de ejecucin de Bit 15 de ON cuando se ejecuta PMCR(260).
macro de protocolo de CIO n+9 El indicador se mantendr en OFF si la
puerto 1 ejecucin falla. El indicador se pondr en
Indicador de ejecucin de Bit 15 de OFF cuando la secuencia de
macro de protocolo de CIO n+19 comunicaciones se haya completado
puerto 2 (bien un final o una cancelacin).

Ejemplos Cuando CIO 0000 est en ON en el siguiente ejemplo, la secuencia de


comunicaciones N. 101 (0065 hexadecimal) se ejecutar siempre que el
indicador de habilitacin de puerto de comunicaciones para el puerto 7
(A20207) est en ON y el indicador de ejecucin de macro de protocolo 1
(CIO 190915) est en OFF.
Si se especifica un operando para el smbolo en un mensaje de envo, se
usarn 2 canales de datos empezando por D00101 como el rea de envo
(porque el contenido de D00100 es #0003).
Si se especifica un operando para el smbolo en un mensaje de recepcin, se
almacenarn 2 canales de datos empezando por D00201 y el nmero de
canales recibidos +1 se escribir en D00200.

934
Instrucciones de comunicaciones serie Seccin 3-24

Indicador de Indicador de
ejecucin de habilitacin de
macro de puerto de
protocolo comunicaciones
R

Direccin de Unidad de la pareja de


comunicaciones E1 hexadecimal:
Tarjeta interna
Nmero de puerto serie (puerto fsico)
2 hexadecimal: Puerto 2
Nmero de puerto de comunicaciones (puerto lgico)
7 hexadecimal: Puerto lgico 7

Nmero de secuencia de comunicaciones


0065 hexadecimal: 101

3 0 1 0 0 Enviado
R(1),2: 2 bytes enviados
Utilizada desde D00101
2 canales como rea
de envo

2 0 2 0 0 Recibido

Datos W(1),2: 2 bytes recibidos


1 canal empezando por D00201
recibidos

Nota Como se muestra a continuacin, la opcin de lectura de


smbolo, R( ), del mensaje de envo o la opcin de lectura
de smbolo, W( ), enva/recibe datos realmente.

Retencin del rea de El bfer de recepcin se pone entero en ceros inmediatamente antes de que
recepcin se ejecute una secuencia de comunicaciones para PMCR(260). Si una
programacin como la que se muestra a continuacin se usa para leer
peridicamente datos PV u otros valores, y los datos no pueden leerse
debido a un error de recepcin u otra causa, los datos que se estn leyendo
se borrarn hasta la siguiente lectura exitosa.
Hay disponible una funcin para mantener los datos en el rea de recepcin
incluso cuando se produce un error de recepcin. Si se usa esta funcin, los
datos se transferirn desde los primeros canales m del rea de recepcin al
bfer de recepcin despus de que el bfer se ponga entero en ceros, pero
antes de que se ejecute la secuencia de comunicaciones. Esto previene que
el rea de recepcin se ponga en ceros temporalmente escribiendo los datos
de recepcin ms recientes cuando lo nuevos datos de recepcin no se
obtienen con xito.
Especifique el nmero de canales del rea de recepcin a mantener como
valor el m. Si se especifica 0 1, la funcin de retencin se deshabilitar y el
rea de recepcin se pondr entera en ceros.

935
Instrucciones de comunicaciones serie Seccin 3-24

El siguiente ejemplo de programacin muestra las instrucciones utilizadas


para ejecutar constante o peridicamente PMCR(260) para leer datos
mediante una operacin de recepcin simple.
Indicador de Indicador de
habilitacin de ejecucin de
Indicador de puerto de macro de
siempre ON comunicaciones protocolo

Seleccionar
Bfer de
recepcin

Se transferirn los datos que


fueron seleccionados si no se
reciben nuevos datos con xito.

No retener rea de recepcin

Secuencia de
comunicaciones
Recv
Bfer de Borrado
recepcin Error
Datos borrados
rea de recepcin (todo ceros)
(comenzando por R+1) alamacenados.

Retener rea de recepcin

Secuencia de
comunicaciones

Bfer de Datos borrados


y datos Recv
recepcin almacenados
previamente Error Seleccione los datos
rea de recepcin almacenados si no se
(comenzando por R+1) han recibido datos
nuevos

936
Instrucciones de comunicaciones serie Seccin 3-24

3-24-3 TRANSMIT: TXD(236)


Empleo Entrega el nmero especificado de bytes de datos desde el puerto RS-232C
incorporado en la CPU o uno de los puertos serie de la tarjeta de
comunicaciones serie. (La tarjeta de comunicaciones serie debe ser de la ver.
1.2 posterior).

Smbolo de diagrama de
rels TXD(236)

S S: Primer canal fuente

C C: Canal de control
N: Nmero de bytes
N 0000 hasta 0100
hexadecimal (0 hasta 256)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TXD(236)
Se ejecuta una vez en el diferencial ascendente @TXD(236)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos Los contenidos del canal de control, C, son como se muestra a continuacin.

15 12 11 8 7 4 3 0
C

Orden de bytes
0: Los bytes ms significativos primero
1: Los bytes menos significativos
primero
Control de seal RS y ER
0: Sin control de seal RS y ER
Siempre 0 1: Control de seal RS
2: Control de seal ER
3: Control de seal RS y ER
Especificador de puerto serie
0: Puerto RS-232C de la CPU
1: Puerto 1 de tarjeta de
comunicaciones serie
2: Puerto 2 de tarjeta de
comunicaciones serie

Especificaciones del
operando rea S C N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 a A447
A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767

937
Instrucciones de comunicaciones serie Seccin 3-24

rea S C N
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores #0000 hasta
especificados #0100
(binario) o &0
hasta &256
(decimal)
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin TXD(236) lee N bytes de datos de los canales S hasta S+(N2)1 y enva los
datos en bruto en modo sin protocolo desde el puerto RS-232C integrado en
la CPU o desde uno de los puertos en serie de la unidad de comunicaciones
serie (SCU). (El puerto de salida se especifica con los bits 8 hasta 11 de C.)
Los cdigos de inicio y de fin especificados para el modo sin protocolo se
aaden a los datos antes de entregar los datos. Los cdigos de inicio y de fin
se especifican en la configuracin del PLC (para el puerto RS-232C de la
CPU) o en el rea de configuracin DM asignada (para los puertos de la
tarjeta de comunicaciones serie).
Los datos solamente pueden enviarse cuando el indicador de listo para envo
del puerto est en ON. Los indicadores de listo para envo son A39205 para
el puerto RS-232C de la CPU, A39605 para el puerto 1 de la tarjeta de
comunicaciones serie, o bien A39613 para el puerto 2 de la tarjeta de
comunicaciones serie.
Pueden enviarse hasta 259 bytes, incluyendo los datos enviados (N = 256
bytes mx.), el cdigo de inicio, y el cdigo de fin.

938
Instrucciones de comunicaciones serie Seccin 3-24

El siguiente diagrama muestra el orden en el que se envan los datos y los


contenidos de la trama de envo para varias configuraciones de cdigo de
inicio y de fin.

Se envan N bytes de datos en el siguiente orden


1 2 cuando se especifica enviar los bytes ms
3 4 significantes primero: 1, 2, 3, 4, 5, 6
5 6

Sin cdigo de inicio ni de fin


Datos
N bytes de envo: 256 mx.
Slo cdigo de inicio
Datos
Bytes de envo antes
Slo cdigo de fin de ST: 256 mx.
Datos
Bytes de envo antes
de ED: 256 mx.
Cdigo de inicio y de fin
Datos
Bytes de envo entre
ST y ED: 256 mx.
Cdigo de fin CR+LF
Datos CR LF
Bytes de envo antes
de CR+LF: 256 mx.
Cdigo de inicio y de fin CR+LF
Datos
Bytes de envo entre ST
y CR+LF: 256 mx.

Puerto RS-232C de la CPU

Datos enviados.

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si se especifica el puerto RS-232C de la CPU como el
de error puerto de envo, pero no se selecciona el modo sin protocolo
en la configuracin del PLC.
ON si se especifica uno de los puertos serie de la tarjeta de
comunicaciones serie como el puerto de envo, pero no se
selecciona el modo sin protocolo en el rea de configuracin
DM asignada al puerto.
ON si el valor de C no est dentro del rango.
ON si el valor de N no est entre 0000 y 0100 hexadecimal.
ON si se intenta realizar un envo cuando el indicador de listo
para envo est en OFF. (Los indicadores de listo para envo
son A39205 para el puerto RS-232C de la CPU, A39605 para
el puerto 1 de la tarjeta de comunicaciones serie, o bien
A39613 para el puerto 2 de la tarjeta de comunicaciones
serie).
ON (indicador ER en tareas de interrupcin) si se est
ejecutando una instruccin TXD(236) o RXD(235) para la
tarjeta de comunicaciones serie en la tarea cclica, la tarea
cclica se interrumpe, y se ejecuta otra instruccin TXD(236)
o RXD(235) para la tarjeta de comunicaciones serie en la
tarea de interrupcin. (Ver nota).
Nota El indicador de error (ER) se pondr en ON
inmediatamente despus de otra instruccin
TXD(236) o RXD(235) en la tarea de interrupcin.
OFF en el resto de los casos.

939
Instrucciones de comunicaciones serie Seccin 3-24

Precauciones TXD(236) puede utilizarse solamente para el puerto RS-232C de la CPU o


para uno de los puertos serie de la tarjeta de comunicaciones serie. Adems,
el puerto debe estar configurado en modo sin protocolo.
Puede configurarse el siguiente formato de trama para mensaje de envo en
la configuracin del PLC (para el puerto RS-232C de la CPU) o en el rea de
configuracin DM asignada (para los puertos de la tarjeta de comunicaciones
serie).
Cdigo de inicio: Ninguno o de 00 hasta FF hexadecimal.
Cdigo de fin: Ninguno, CR+LF, o de 00 hasta FF hexadecimal.
Los datos se enviarn con los cdigos de inicio y/o fin especificados en la
configuracin del PLC o en el rea de configuracin DM asignada. Si se
especifican cdigos de inicio y de fin, los cdigos se aadirn a los datos
enviados (N). En este caso, el nmero mximo de bytes que pueden
especificarse para N es de 256 bytes.
Los datos solamente pueden enviarse cuando el indicador de listo para envo
del puerto est en ON. (Los indicadores de listo para envo son A39205 para
el puerto RS-232C de la CPU, A39605 para el puerto 1 de la tarjeta de
comunicaciones serie, o bien A39613 para el puerto 2 de la tarjeta de
comunicaciones serie).
Los datos se envan en el orden especificado en C.
No se enviar nada si se especifica 0 para N.
Si se especifica control de seal RS en C, se usar el bit 15 de S como la
seal RS.
Si se especifica control de seal ER en C, se usar el bit 15 de S como la
seal ER.
Si se especifica control de seal RS y ER en C, se usar el bit 15 de S como
la seal RS y el 14 de S como la seal ER.
Si se especifica 1, 2 3 hexadecimal para el control de seal RS y ER en C,
TXD(236) se ejecutar sin tener en cuenta el estado del indicador de listo
para envo (A39205, A39605 o A39613 dependiendo del puerto utilizado).
Si se ejecuta la instruccin TXD(236) para una tarjeta que no es compatible
con el modo sin protocolo (una tarjeta de comunicaciones serie sin nmero
de versin), el indicador de inhabilitacin para el servicio de tarjeta de
comunicaciones (A42404) y el indicador de error se pondrn en ON.
Se producir un error y el indicador de error se pondr en ON en los
siguientes casos.
Se especifica el puerto RS-232C de la CPU, pero no se selecciona el
modo sin protocolo para el puerto en la configuracin del PLC.
Se especifica uno de los puertos serie de la tarjeta de comunicaciones
serie, pero no se selecciona el modo sin protocolo para el puerto en el
rea de configuracin DM asignada.
Se especifica uno de los puertos serie de la tarjeta de comunicaciones,
pero la tarjeta no es compatible con el modo sin protocolo (la tarjeta no
tiene un nmero de versin).
El valor de C no est dentro del rango.
El valor para N no est entre 0000 y 0100 hexadecimal.
Se ha intentado un envo cuando el indicador de listo para envo estaba
en OFF. (Los indicadores de listo para envo son A39205 para el puerto
RS-232C de la CPU, A39605 para el puerto 1 de la tarjeta de
comunicaciones serie, o bien A39613 para el puerto 2 de la tarjeta de
comunicaciones serie).
Se estaba ejecutando una instruccin TXD(236) o RXD(235) para la
tarjeta de comunicaciones serie en la tarea cclica, la tarea cclica se ha
interrumpido, y se ha ejecutado otra instruccin TXD(236) o RXD(235)
para la tarjeta de comunicaciones serie en la tarea de interrupcin.
Nota No programe TXD(236)/RXD(235) para un puerto de una tarjeta de
comunicaciones serie (puerto 1 2) en la tarea cclica y en la tarea de
interrupcin. Una instruccin TXD(236)/RXD(235) no puede ejecutarse para

940
Instrucciones de comunicaciones serie Seccin 3-24

la tarjeta de comunicaciones serie en la tarea de interrupcin si se est


ejecutando una instruccin TXD(236)/RXD(235) para la tarjeta de
comunicaciones serie en la tarea cclica. Se producir un error y el indicador
ER se pondr en ON si se ejecuta una instruccin TXD(236)/RXD(235) para
la tarjeta de comunicaciones serie en la tarea de interrupcin cuando se
estaba ejecutando otra instruccin (236)/RXD(235) para la tarjeta de
comunicaciones serie en la tarea cclica. (Estas instrucciones no pueden
programarse en la tarea cclica y en la tarea de interrupcin a la vez, incluso
si se ejecutan para diferentes puertos de la tarjeta de comunicaciones serie).
Indicadores y canales Pueden utilizarse las siguientes configuraciones del PLC e indicadores de
relacionados rea auxiliar segn sea necesario cuando se ejecuta TXD(236).
Configuraciones del PLC para el puerto RS-232C de la CPU
Direccin de la Nombre Configuracin
consola de
programacin
Canal Bit
162 0 a 15 Retardo de envo del modo 0000 hasta 210F hexadecimal,
sin protocolo 0 hasta 99.990 ms decimal (en
unidades de 10 ms)
164 8 hasta 15 Cdigo de inicio del modo sin 00 hasta FF hexadecimal
protocolo
0a7 Cdigo de fin del modo sin 00 hasta FF hexadecimal
protocolo
165 12 Especificador de cdigo de 0: Ninguno
inicio del modo sin protocolo 1: Usar cdigo de inicio.
8y9 Especificador de cdigo de 0: Ninguno
fin del modo sin protocolo 1: Usar cdigo de fin.
2: Usar CR+LF.
0a7 Nmero de bytes de datos del 00: 256 bytes
modo sin protocolo 01 a FF: 1 hasta 255 bytes

Configuraciones de rea de configuracin DM para puertos de tarjeta de


comunicaciones serie
Canal de rea de Bit Nombre Configuracin
configuracin
Puerto 1 Puerto 2
D32002 D32012 15 Especificador de retardo 0: Predeterminado (0 ms)
de envo del modo sin 1: Usar retardo en los bits
protocolo 0 hasta 14.
0 hasta Tiempo de retardo de 0000 hasta 7530
14 envo del modo sin hexadecimal
protocolo 0 hasta 300.000 ms
decimal (en unidades de
10 ms)
D32004 D32014 8 hasta Cdigo de inicio del 00 hasta FF hexadecimal
15 modo sin protocolo
0 hasta Cdigo de fin del modo 00 hasta FF hexadecimal
7 sin protocolo
D32005 D32015 12 Especificador de cdigo 0: Ninguno
hasta de inicio del modo sin 1: Usar cdigo de inicio.
15 protocolo
8 hasta Especificador de cdigo 0: Ninguno
11 de fin del modo sin 1: Usar cdigo de fin.
protocolo 2: Usar CR+LF.

941
Instrucciones de comunicaciones serie Seccin 3-24

rea auxiliar
Indicadores de listo para envo
Puerto Direccin Contenido
Puerto RS-232C incorporado en la A39205 ON cuando los datos pueden
Unidad de bus de CPU enviarse en el modo sin
Puerto 1 de tarjeta de A39605 protocolo.
comunicaciones serie
Puerto 2 de tarjeta de A39613
comunicaciones serie

Indicadores de tarjeta interna para la tarjeta de comunicaciones serie


(Puertos 1 y 2)
Nombre Direccin Contenido
Indicador de inhabilitacin A42404 ON cuando se ejecuta TXD(236) para
de servicio de la tarjeta una tarjeta de comunicaciones serie
interna que no es compatible con el modo sin
protocolo (una tarjeta sin nmero de
versin).

942
Instrucciones de comunicaciones serie Seccin 3-24

Ejemplo: Envo de datos Cuando CIO 000001 y el indicador de listo para envo del puerto RS-232C
(A39205) estn en ON en el siguiente ejemplo, la seal RS se ajusta de
acuerdo al estado de D00300 bit 15 y la seal ER se ajusta de acuerdo al
estado de D00300 bit 14.
000001 A39205
TXD
Indicador de listo
para envo del S D00300
puerto RS-232C
C D00400
N &0

15 12 11 8 7 4 3 0
C: D00400 0 0 3 0

Orden de bytes
0: Del byte ms significativo al byte menos significativo

Control de seal RS y ER
Siempre 0 3: Control de seal RS y ER
0 de puerto serie
Especificador
0: Puerto RS-232C de la CPU

15 14 13 12
S: D00300 1 0 0 0

La seal ER se ajusta como 0


La seal RS se ajusta como 1

Bytes ms Bytes menos


significativos significativos

S:

Enviados en
el orden
especificado.
5 bytes

Se han aadido los cdigos de inicio y fin de


acuerdo a la configuracin del PLC (es este
ejemplo se asume que se han configurado
un cdigo de inicio y un cdigo de fin)
ST 12 34 AB CD EF ED
ST: Cdigo de inicio (p. ej., 02 hexadecimal)
ED: Cdigo de fin (p. ej., 03 hexadecimal)

Enviado

943
Instrucciones de comunicaciones serie Seccin 3-24

Ejemplo: Ejecucin de Cuando CIO 000001 y el indicador de listo para envo del puerto RS-232C
control de seal (A39205) estn en ON en el siguiente ejemplo, la seal RS se ajusta de
acuerdo al estado de D00300 bit 15 y la seal ER se ajusta de acuerdo al
estado de D00300 bit 14.

000001 A39205
TXD
Indicador de listo
para envo del S D00300
puerto RS-232C
C D00400
N &0

C: D00400 0 0 3 0

Orden de bytes
0: Del byte ms significativo al byte menos significativo
Siempre 0 Control de seal RS y ER
3: Control de seal RS y ER.
Especificador de puerto serie
15 14 13 12 0: Puerto RS-232C de la CPU
S: D00300 1 0 0 0

La seal ER se ajusta como 0


La seal RS se ajusta como 1

3-24-4 RECEIVE: RXD(235)


Empleo Lee el nmero especificado de bytes de datos desde el puerto RS-232C
incorporado en la CPU o uno de los puertos serie de la tarjeta de
comunicaciones serie. (La tarjeta de comunicaciones serie debe ser de la ver.
1.2 posterior).

Smbolo de diagrama de
rels RXD(235)

D D: Primer canal de destino

C C: Canal de control
N: Nmero de bytes a almacenar
N 0000 hasta 0100 hexadecimal
(0 hasta 256 decimal)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RXD(235)
Se ejecuta una vez en el diferencial @RXD(235)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

944
Instrucciones de comunicaciones serie Seccin 3-24

Operandos Los contenidos del canal de control, C, son como se muestra a continuacin.
15 12 11 8 7 4 3 0
C

Orden de bytes
0 hexadecimal.: Del byte ms significativo al byte menos significativo
1 hexadecimal.: Del byte menos significativo al byte ms significativo
Siempre 0

Monitorizacin de seal CS y DR
0: Sin monitorizacin de seal CS y DR
1: Monitorizacin de seal CS
2: Monitorizacin de seal DR
3: Monitorizacin de seal CS y DR.
Especificador de puerto serie
0: Puerto RS-232C de la CPU
1: Puerto 1 de tarjeta de comunicaciones serie
2: Puerto 2 de tarjeta de comunicaciones serie

Especificaciones del
operando rea D C N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959 A000 a A447
A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores #0000 hasta #0100
especificados (binario) o bien &0
hasta &256
(decimal)
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin RXD(235) lee los datos que han sido recibidos en modo sin protocolo en el
puerto RS-232C integrado en la CPU o en uno de los puertos en serie de la
tarjeta de comunicaciones en serie (el puerto se especifica con los bits 8 a 11
de C) y almacena N bytes de datos en los canales D hasta D+(N2)1. Si no
han sido recibidos N bytes de datos en el puerto, entonces solamente se
almacenarn los datos recibidos.

945
Instrucciones de comunicaciones serie Seccin 3-24

Los datos solamente pueden recibirse cuando el indicador de listo para


recepcin del puerto est en ON. Los indicadores de listo para recepcin son
A39206 para el puerto RS-232C de la CPU, A39606 para el puerto 1 de la
tarjeta de comunicaciones, o bien A39614 para el puerto 2 de la tarjeta de
comunicaciones. Ejecute RXD(235) solamente cuando el indicador de listo
para recepcin est en ON.
Pueden recibirse hasta 259 bytes, incluyendo los datos recibidos (N = 256
bytes mx.), el cdigo de inicio, y el cdigo de fin.
El siguiente diagrama muestra el orden en el que se reciben los datos y los
contenidos de la trama de recepcin para varias configuraciones.
Sin cdigo de inicio ni de fin
1 2 3 4 5 6 0...
Bytes de recepcin: Especificado
en la configuracin del PLC
Slo cdigo de inicio
1 2 3 4 5 6 0...
Bytes de recepcin despus de
ST: Especificado en la
Slo cdigo de fin configuracin del PLC
1 2 3 4 5 6 0...
Bytes de recepcin
antes de ED: 256 mx.
Cdigo de inicio y de fin
1 2 3 4 5 6 0...
Bytes de recepcin entre
Cdigo de fin CR+LF ST y ED: 256 mx.

1 2 3 4 5 6 0... CR LF
Bytes de recepcin antes
Cdigo de inicio y de fin CR+LF de CR+LF: 256 mx.

1 2 3 4 5 6 0...
Bytes de recepcin entre
ST y CR+LF: 256 mx.

Recibido

Puerto RS-232C de la CPU


Cuando est especificada la recepcin
primero de los bytes ms significativos (0):

Bytes Bytes ms Bytes menos


1 significativos significativos
2 N bytes
almacenados
3 en el orden 1 2
4 especificado.
Mx.: 3 4
5 256 bytes
5 6
6
Cuando est especificada la recepcin
primero de los bytes menos significativos (0):
Bytes ms Bytes menos
significativos significativos

1 2
3 4
5 6

946
Instrucciones de comunicaciones serie Seccin 3-24

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si se especifica el puerto RS-232C de la CPU como el
de error puerto de envo, pero no se selecciona el modo sin protocolo
en la configuracin del PLC.
ON si se especifica uno de los puertos serie de la tarjeta de
comunicaciones serie como el puerto de envo, pero no se
selecciona el modo sin protocolo en el rea de configuracin
DM asignada al puerto.
ON si el valor de C no est dentro del rango.
ON si el valor de N no est entre 0000 y 0100 hexadecimal.
ON si se intenta realizar un envo cuando el indicador de listo
para envo est en OFF. (Los indicadores de listo para envo
son A39205 para el puerto RS-232C de la CPU, A39605 para
el puerto 1 de la tarjeta de comunicaciones serie, o bien
A39613 para el puerto 2 de la tarjeta de comunicaciones
serie).
ON (indicador ER en tareas de interrupcin) si se est
ejecutando una instruccin TXD(236) o RXD(235) para la
tarjeta de comunicaciones serie en la tarea cclica, la tarea
cclica se interrumpe, y se ejecuta otra instruccin TXD(236)
o RXD(235) para la tarjeta de comunicaciones serie en la
tarea de interrupcin. (Ver nota).
Nota El indicador de error (ER) se pondr en ON
inmediatamente despus de otra instruccin
TXD(236) o RXD(235) en la tarea de interrupcin.
OFF en el resto de los casos.

Precauciones RXD(235) puede utilizarse solamente para el puerto RS-232C de la CPU o


para uno de los puertos serie de la tarjeta de comunicaciones serie. Adems,
el puerto debe estar configurado en modo sin protocolo.
Puede configurarse el siguiente formato de trama para mensaje de recepcin
en la configuracin del PLC (para el puerto RS-232C de la CPU) o en el rea
de configuracin DM asignada (para los puertos de la tarjeta de
comunicaciones serie).
Cdigo de inicio: Ninguno o de 00 hasta FF hexadecimal
Cdigo de fin: Ninguno, CR+LF, o de 00 hasta FF hexadecimal. Si no se
especifica cdigo de fin, el nmero de bytes a recibir se configura entre
00 y FF hexadecimal (1 hasta 256 decimal; 00 especifica 256 bytes).
El indicador de recepcin completa (nota 1) se pondr en ON cuando el
nmero de bytes especificado en la configuracin del PLC (para el puerto
RS-232C de la CPU) o el rea de configuracin DM asignada (for the Serial
Communications Boards ports) haya sido recibido. Cuando el indicador de
recepcin completa se pone en ON, el nmero de bytes del contador de
recepcin (nota 2) tendr el mismo valor que el nmero de bytes de
recepcin especificado en la configuracin del PLC o en el rea de
configuracin DM asignada. Si se reciben ms bytes de los especificados, el
indicador de desbordamiento de recepcin (nota 3) se pondr en ON.
Si se especifica un cdigo de fin en la configuracin del PLC o en el rea de
configuracin DM asignada, el indicador de recepcin completa (nota 1) se
pondr en ON cuando se reciba el cdigo de fin o cuando se hayan recibido
256 bytes de datos. Si se reciben ms datos despus de que el indicador de
recepcin completa (nota 1) se haya puesto en ON, el indicador de
desbordamiento de recepcin (nota 3) se pondr en ON.
La recepcin se detendr si se reciben 259 bytes de datos. Si se introducen
ms datos posteriormente, el indicador de error de sobrecarga (nota 5) y el
indicador de error de transmisin (nota 6) se pondrn en ON.
Cuando se introducen ms datos en el puerto serie de la tarjeta de
comunicaciones serie de los especificados en N, los datos se ignorarn
cuando se ejecute RXD(235). En cambio, no se ignorar una introduccin de
datos extra en el puerto RS-232C de la CPU cuando se ejecute RXD(235).
947
Instrucciones de comunicaciones serie Seccin 3-24

Cuando se ejecuta RXD(235), los datos se almacenan en la memoria


empezando por D, el indicador de recepcin completa (nota 1) se pone en
OFF (incluso si el indicador de desbordamiento de recepcin (nota 3) est en
ON), y el contador de recepcin (nota 2) se pone a 0.
En el caso del puerto RS-232C incorporado en la CPU, si el bit de reinicio del
puerto RS-232C (nota 4) se pone en ON, el indicador de recepcin completa
(nota 1) se pondr en OFF (incluso si el indicador de desbordamiento de
recepcin est en ON), y el contador de recepcin (nota 2) se pondr a 0.
Los datos se almacenarn en la memoria en el orden especificado en C.
Si se especifica 0 para N, el indicador de recepcin completa (nota 1) se
pondr en OFF, el contador de recepcin (nota 2) se pondr a 0 y no se
almacenar nada en la memoria.
Si se especifica monitorizacin de seal CS en C, el estado de la seal CS se
almacenar en el bit 15 de D.
Si se especifica monitorizacin de seal DR en C, el estado de la seal DR se
almacenar en el bit 15 de D.
Si se especifica monitorizacin de seal CS y DR en C, el estado de la seal
CS se almacenar en el bit 15 de D y el estado de la seal DR se almacenar
en el bit 14 de D.
Los datos de recepcin no se almacenarn si se especifica monitorizacin de
seal CS o DR.
Si se especifica 1, 2 3 hexadecimal para el control de seal RS y ER en C,
RXD(235) se ejecutar sin tener en cuenta el estado del indicador de
recepcin completa (nota 1).
Si se ejecuta la instruccin RXD(235) para una tarjeta que no es compatible
con el modo sin protocolo (una tarjeta de comunicaciones serie sin nmero
de versin), el indicador de inhabilitacin para el servicio de tarjeta de comu-
nicaciones (A42404, error no fatal) y el indicador de error se pondrn en ON.
Nota 1. Indicadores de recepcin completa
Puerto RS232C incorporado: A39206
Puerto 1 de tarjeta de comunicaciones serie: A35606
Puerto 2 de tarjeta de comunicaciones serie: A35614
2. Contadores de recepcin
Puerto RS232C incorporado: A393
Puerto 1 de tarjeta de comunicaciones serie: A357
Puerto 2 de tarjeta de comunicaciones serie: A358
3. Indicadores de desbordamiento de recepcin
Puerto RS232C incorporado A39207
Puerto 1 de tarjeta de comunicaciones serie: A35607
Puerto 2 de tarjeta de comunicaciones serie: A35615
4. Bit de reinicio del puerto RS-232C
Puerto RS232C incorporado: A52600
5. Indicadores de error de sobrecarga
Puerto 1 de tarjeta de comunicaciones serie: CIO 190804
Puerto 2 de tarjeta de comunicaciones serie: CIO 191804
6. Indicadores de error de transmisin
Puerto 1 de tarjeta de comunicaciones serie: CIO 190815
Puerto 2 de tarjeta de comunicaciones serie: CIO 191815
7. Indicador de inhabilitacin de servicio de la tarjeta interna
Puerto 1 y 2 de tarjeta de comunicaciones serie: A42404
Se producir un error y el indicador de error se pondr en ON en los
siguientes casos.

948
Instrucciones de comunicaciones serie Seccin 3-24

Se especifica el puerto RS-232C de la CPU, pero no se selecciona el


modo sin protocolo para el puerto en la configuracin del PLC.
Se especifica uno de los puertos serie de la tarjeta de comunicaciones
serie, pero no se selecciona el modo sin protocolo para el puerto en el
rea de configuracin DM asignada.
Se especifica uno de los puertos serie de la tarjeta de comunicaciones,
pero la tarjeta no es compatible con el modo sin protocolo (la tarjeta no
tiene un nmero de versin).
El valor de C no est dentro del rango.
El valor para N no est entre 0000 y 0100 hexadecimal.
Se estaba ejecutando una instruccin TXD(236) o RXD(235) para la
tarjeta de comunicaciones serie en la tarea cclica, la tarea cclica se ha
interrumpido, y se ha ejecutado otra instruccin TXD(236) o RXD(235)
para la tarjeta de comunicaciones serie en la tarea de interrupcin.
No pueden recibirse ms datos hasta que los datos recibidos sean ledos
del bfer con RXD(235). Cuando el indicador de recepcin completa se
ponga en ON, lea esos datos con la mayor rapidez posible con RXD(235)
antes de que se entreguen ms datos al puerto.
Cuando se utiliza RXD(235) para leer datos que fueron recibidos en el
puerto RS-232C de la CPU, los datos restantes del bfer de recepcin
del puerto no se eliminan, as que RXD(235) puede ejecutarse
repetidamente para leer un bloque de datos en partes.
Por otro lado, cuando se utiliza RXD(235) para leer datos que fueron
recibidos en uno de los puertos serie de la tarjeta de comunicaciones
serie (tarjeta de comunicaciones serie versin 1.2 posterior), el bfer de
recepcin del puerto se borra despus de ejecutar RXD(235). Por lo
tanto, RXD(235) no puede ejecutarse repetidamente para leer un bloque
de datos por partes.
Indicadores y canales Pueden utilizarse las siguientes configuraciones del PLC e indicadores de
relacionados rea auxiliar segn sea necesario cuando se ejecuta RXD(235).
Configuraciones del PLC para el puerto RS-232C de la CPU
Direccin de la Nombre Configuracin
consola de
programacin
Canal Bit
162 0 hasta Retardo de envo del modo 0000 hasta 210F hexadecimal,
15 sin protocolo 0 hasta 99.990 ms decimal (en
unidades de 10 ms)
164 8 hasta Cdigo de inicio del modo sin 00 hasta FF hexadecimal
15 protocolo
0 hasta 7 Cdigo de fin del modo sin 00 hasta FF hexadecimal
protocolo
165 12 Especificador de cdigo de 0: Ninguno
inicio del modo sin protocolo 1: Usar cdigo de inicio.
8y9 Especificador de cdigo de 0: Ninguno
fin del modo sin protocolo 1: Usar cdigo de fin.
2: Usar CR+LF.
0a7 Nmero de bytes de datos del 00: 256 bytes
modo sin protocolo 01 a FF: 1 hasta 255 bytes
Configuraciones de rea de configuracin DM para puertos de tarjeta de
comunicaciones serie
Canal de rea de Bit Nombre Configuracin
configuracin
Puerto 1 Puerto 2
D32004 D32014 8 hasta Cdigo de inicio del modo 00 hasta FF hexadecimal
15 sin protocolo
0a7 Cdigo de fin del modo 00 hasta FF hexadecimal
sin protocolo

949
Instrucciones de comunicaciones serie Seccin 3-24

Canal de rea de Bit Nombre Configuracin


configuracin
Puerto 1 Puerto 2
D32005 D32015 12 a 15 Especificador de cdigo 0: Ninguno
de inicio del modo sin 1: Usar cdigo de inicio.
protocolo
8 hasta Especificador de cdigo 0: Ninguno
11 de fin del modo sin 1: Usar cdigo de fin.
protocolo 2: Usar CR+LF.

Indicadores de rea auxiliar para el puerto RS-232C de la CPU


Nombre Direccin Contenido
Indicador de recepcin A39206 ON cuando se completa recepcin sin
completa de puerto protocolo.
RS-232C Nmero de bytes de recepcin
especificado El indicador se pondr en
ON cuando se haya recibido el nmero
de bytes de recepcin especificado.
Cdigo de fin especificado: El indicador
se pondr en ON cuando se reciba el
cdigo de fin o cuando se hayan
recibido 256 bytes.
Indicador de A39207 ON cuando se hayan recibido ms del
desbordamiento de nmero de bytes de recepcin
recepcin de puerto esperados.
RS-232C Nmero de bytes de recepcin
especificado El indicador se pondr en
ON cuando se reciba cualquier dato
despus de haberse completado la
recepcin y haberse ejecutado la
siguiente RXD(235).
Cdigo de fin especificado: El indicador
se pondr en ON cuando se reciba
cualquier dato despus de haberse
recibido el cdigo de fin y haberse
ejecutado la siguiente RXD(235) o
cuando se reciba en 257 byte de datos
antes de recibir el cdigo final.
Contador de recepcin del A393 Cuenta en hexadecimal el nmero de
puerto RS-232C bytes recibidos en modo sin protocolo.

950
Instrucciones de comunicaciones serie Seccin 3-24

Indicadores de rea auxiliar para puertos de tarjeta de comunicaciones


serie
Puerto Nombre Direccin Contenido
Puerto Indicador de A35606 ON cuando se completa recepcin sin
1 recepcin protocolo.
completa Nmero de bytes de recepcin especificado
El indicador se pondr en ON cuando se
haya recibido el nmero de bytes de
recepcin especificado.
Cdigo de fin especificado: El indicador se
pondr en ON cuando se reciba el cdigo
de fin o cuando se hayan recibido 256 bytes.
Indicador de A35607 ON cuando se hayan recibido ms del
desbordamiento nmero de bytes de recepcin esperados en
de recepcin modo sin protocolo.
Nmero de bytes de recepcin especificado
El indicador se pondr en ON cuando se
reciban ms datos despus de completarse
la recepcin, pero antes de que los datos
recibidos hayan sido ledos del bfer con
RXD(235).
Cdigo de fin especificado: El indicador se
pondr en ON cuando se reciban 257 o ms
bytes de datos sin cdigo final.
Contador de A357 Cuenta en hexadecimal el nmero de bytes
recepcin recibidos en modo sin protocolo (0 hasta
256 decimal).
Indicador de CIO 1908 ON cuando se reciben 260 o ms bytes de
error de bit 04 datos en el bfer antes de ejecutarse
sobrecarga RXD(235).
Puerto Indicador de A35614 ON cuando se completa recepcin sin
2 recepcin protocolo.
completa Nmero de bytes de recepcin especificado:
El indicador se pondr en ON cuando se
haya recibido el nmero de bytes
especificado.
Cdigo de fin especificado: El indicador se
pondr en ON cuando se reciba el cdigo
de fin o cuando se hayan recibido 256 bytes.
Indicador de A35615 ON cuando se hayan recibido ms del
desbordamiento nmero de bytes de recepcin esperados en
de recepcin modo sin protocolo.
Nmero de bytes de recepcin especificado:
El indicador se pondr en ON cuando se
reciban ms datos despus de completarse
la recepcin, pero antes de que los datos
recibidos hayan sido ledos del bfer con
RXD(235).
Cdigo de fin especificado: El indicador se
pondr en ON cuando se reciban 257 o ms
bytes de datos sin cdigo final.
Contador de A358 Cuenta en hexadecimal el nmero de bytes
recepcin recibidos en modo sin protocolo (0 hasta
256 decimal).
Indicador de CIO 1918 ON cuando se reciben 260 o ms bytes de
error de bit 04 datos en el bfer antes de ejecutarse
sobrecarga RXD(235).
Puerto Indicador de A42404 ON cuando se ejecuta RXD(235) para una
s1y2 inhabilitacin de tarjeta de comunicaciones serie que no es
servicio de la compatible con el modo sin protocolo (una
tarjeta interna tarjeta sin nmero de versin).

951
Instrucciones de comunicaciones serie Seccin 3-24

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, se reciben datos


desde el puerto RS-232C y se almacenan 10 bytes de datos empezando por
D00100.

&10
C: D00200 0 0

Orden de bytes
1: Los bytes menos
significativos primero
Siempre 0 Monitorizacin de seal CS y DR
0: Sin monitorizacin de seal CS y DR
Especificador de puerto serie
0: Puerto RS-232C de la CPU

En este ejemplo se asume que se han Bytes ms Bytes menos


especificado un cdigo de inicio y un significativos significativos
cdigo de fin en la configuracin del PLC.
Almacenado
D:
ST: Cdigo de inicio (p. ej., 02 hexadecimal)
ED: Cdigo de fin (p. ej., 03 hexadecimal)

3-24-5 TRANSMIT VIA SERIAL COMMUNICATIONS UNIT: TXDU(256)


Empleo Entrega el nmero de bytes de datos especificado desde uno de los puertos
serie de la Unidad de comunicaciones serie. (La Unidad de comunicaciones
serie debe ser de la ver. 1.2 posterior).

Smbolo de diagrama de
rels
TXDU(256)

S S: Primer canal fuente

C C: Primer canal de control


N: Nmero de bytes
N 0000 hasta 0100 hexadecimal
(0 hasta 256)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TXDU(256)
Se ejecuta una vez en el diferencial @TXDU(256)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

952
Instrucciones de comunicaciones serie Seccin 3-24

Operandos Los contenidos de los canales de control, C y C+1, son como se muestra a
continuacin.
15 12 11 8 7 4 3 0
C

Orden de bytes
0: Los bytes ms significativos primero
1: Los bytes menos significativos primero
Control de seal RS y ER
0: Sin control de seal RS y ER
Siempre 00 1: Control de seal RS
2: Control de seal ER
3: Control de seal RS y ER

15 12 11 8 7 4 3 0
C+1

Direccin de Unidad de destino (ver nota).


Dureccin de Unidad de la Unidad de
comunicaciones serie (nmero de Unidad
+ 10 hexadecimal)
Nmero de puerto serie
0: Especifquelo directamente. (Ver nota).
1: Puerto 1
2: Puerto 2
Especificador de nmero de
puerto (puerto lgico interno)
Especifique 0 hasta 7 o bien F.
(F: Asignacin automtica)

Nota La direccin de la Unidad del puerto serie puede especificarse directamente


configurando el nmero del puerto serie como 0 y configurando la direccin
de la Unidad de destino como la direccin de la Unidad del puerto serie.
(Configure la direccin de la Unidad de destino como nmero de unidad 80
hexadecimal + 4 para el puerto 1 o como nmero de Unidad 81 hexadeci-
mal + 4 para el puerto 2).

Especificaciones del
operando rea S C D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6142 CIO 6143
rea de Trabajo W000 hasta W000 hasta W000 hasta
W511 W510 W511
rea de bit en Espera H000 hasta H511 H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A000 hasta A958 A000 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4095 T4094 T4095
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4095 C4094 C4095
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32766 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32766 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32766 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

953
Instrucciones de comunicaciones serie Seccin 3-24

rea S C D
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores #0000 hasta
especificados #0100
(binario) o bien &0
hasta &256
(decimal)
Registros de datos --- --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin TXDU(256) lee N bytes de datos de los canales S hasta S+(N2)1 y entrega
los datos en bruto en modo sin protocolo desde la Unidad de comunicaciones
serie con la direccin de Unidad especificada en los bits 0 hasta 7 de C+1, a
travs del puerto especificado con los bits bits 8 hasta 11 de C+1. El nmero
de puerto lgico puede configurarse con cualquier valor entre 0 y 7, y se
especifica con los bits 12 hasta 15 de C+1.
Los cdigos de inicio y de fin especificados para el modo sin protocolo en el
rea de configuracin DM se aaden a los datos antes de entregar los datos.
Pueden enviarse hasta 259 bytes, incluyendo los datos enviados (N = 256
bytes mx.), el cdigo de inicio, y el cdigo de fin.
Solamente pueden enviarse datos cuando el indicador de habilitacin de
puerto de comunicaciones para el puerto lgico especificado (A20200 hasta
A20207 para los puertos 0 hasta 7) est en ON y el indicador de ejecucin de
la instruccin TXDU (del rea de configuracin DM asignada) est en OFF.
Nota El nmero de puerto lgico puede asignarse automticamente configurando
los bits 12 hasta 15 de C+1 como F. Encontrar ms detalles en el apartado
Asignacin automtica de puerto de comunicaciones en la pgina 979.

954
Instrucciones de comunicaciones serie Seccin 3-24

El siguiente diagrama muestra el orden en el que se envan los datos y los


contenidos de la trama de envo para varias configuraciones de cdigo de
inicio y de fin.

Se envan N bytes de datos en el siguiente orden


1 2 cuando se especifica enviar los bytes ms
3 4 significantes primero: 1, 2, 3, 4, 5, 6
5 6

Sin cdigo de inicio ni de fin


Datos
N bytes de envo: 256 mx.
Slo cdigo de inicio
Datos
Bytes de envo despus
Slo cdigo de fin de ST: 256 mx.
Datos
Bytes de envo antes
de ED: 256 mx.
Cdigo de inicio y de fin
Datos
Bytes de envo entre
ST y ED: 256 mx.
Cdigo de fin CR+LF
Datos CR LF
Bytes de envo antes
de CR+LF: 256 mx.
Cdigo de inicio y de fin CR+LF
Datos
Bytes de envo entre ST
y CR+LF: 256 mx.

Puerto serie de la Unidad de comunicaciones serie

Datos enviados.

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si se estn utilizando todos los puertos lgicos o si el
de error indicador de habilitacin de puerto de comunicaciones para
el puerto lgico especificado est en OFF cuando se
ejecuta la instruccin.
ON si el valor de C no est dentro del rango.
ON si el valor de N no est entre 0000 y 0100 hexadecimal.
OFF en el resto de los casos.

Precauciones TXDU(256) solamente puede utilizarse para un puerto serie de Unidad de


comunicaciones serie que ha sido configurado como modo sin protocolo.
Pueden configurarse los siguientes formatos de trama de mensaje de envo
en el rea de configuracin DM asignada.
Cdigo de inicio: Ninguno o de 00 hasta FF hexadecimal.
Cdigo de fin: Ninguno, CR+LF, o de 00 hasta FF hexadecimal.
Los datos se enviarn con cualquier combinacin de cdigos de inicio y/o fin
especificados en el rea de configuracin DM asignada. Si se especifican
cdigos de inicio y de fin, los cdigos se aadirn a los datos enviados (N).
En este caso, el nmero mximo de bytes que pueden especificarse para N
es de 256 bytes.

955
Instrucciones de comunicaciones serie Seccin 3-24

Los datos solamente pueden enviarse cuando el indicador de listo para envo
del puerto est en ON. (Los indicadores de listo para envo son A39205 para
el puerto RS-232C de la CPU, A39605 para el puerto 1 de la Unidad de
comunicaciones serie, o bien A39613 para el puerto 2 de la Unidad de
comunicaciones serie).
Los datos se envan en el orden especificado en C.
No se enviar nada si se especifica 0 para N.
Si se especifica control de seal RS en C, se usar el bit 15 de S como la
seal RS.
Si se especifica control de seal ER en C, se usar el bit 15 de S como la
seal ER.
Si se especifica control de seal RS y ER en C, se usar el bit 15 de S como
la seal RS y el 14 de S como la seal ER.
TXDU(256) usa un puerto lgico (porque enva un comando FINS interno)
para entregar un comando de secuencia de envo a la Unidad de
comunicaciones serie (nmero de versin 1.2 posterior). Ya que
SEND(090), RECV(098), CMND(490), PMCR(260) y RXDU(255) tambin
usan los puertos lgicos 0 hasta 7, TXDU(256) no puede ejecutarse para un
puerto lgico si ese puerto lgico ya est siendo utilizado por una de esas
instrucciones u otra instruccin TXDU(256).
Para asegurarse de que TXDU(256) no se ejecuta mientras el puerto lgico
est ocupado, programe el indicador de habilitacin de puerto de
comunicaciones del puerto (A20200 hasta A20207) como una condicin de
normalmente abierto.
CPU

TXDU
TXDU

TXDU(256) no puede ejecutarse mientras el indicador de ejecucin de la


instruccin TXDU (bit 5 de n+9 o bien n+19, donde n = CIO 1500 + 25
nmero de Unidad) est en ON. Para segurarse de que no se ejecuta otra
instruccin TXDU(256) para el puerto antes de que la primera TXDU(256) se
haya completado, programe el indicador de ejecucin de la instruccin TXDU
como una condicin de normalmente cerrado.
Se producir un error y el indicador de error se pondr en ON en los
siguientes casos.
Si el indicador de habilitacin de puerto de comunicaciones est en OFF
para el puerto lgico especificado cuando se ejecuta TXDU(256).
El valor de C no est dentro del rango.
El valor para N no est entre 0000 y 0100 hexadecimal.
Nota Dependiendo del dispositivo externo, es posible que sea necesario configurar
un retardo de envo cuando se enven datos con TXDU(256). Si se requiere
un retardo de envo, configure o ajuste el tiempo de retardo en el rea de
configuracin DM asignada.

956
Instrucciones de comunicaciones serie Seccin 3-24

Indicadores y canales Pueden utilizarse las siguientes configuraciones del PLC e indicadores de
relacionados rea auxiliar segn sea necesario cuando se ejecuta TXD(236).
Configuraciones del rea de configuracin DM
(m = D30000 + 100 nmero de Unidad)
Canal de rea de Bit Nombre Configuracin
configuracin
Puerto 1 Puerto 2
m+2 m+12 15 Especificador de retardo 0: Predeterminado (0 ms)
de envo del modo sin 1: Usar retardo en los bits
protocolo 0 hasta 14.
0 hasta Tiempo de retardo de 0000 hasta 7530
14 envo del modo sin hexadecimal
protocolo 0 hasta 300.000 ms
decimal (en unidades de
10 ms)
m+4 m+14 8 hasta Cdigo de inicio del 00 hasta FF hexadecimal
15 modo sin protocolo
0 hasta Cdigo de fin del modo 00 hasta FF hexadecimal
7 sin protocolo
m+5 m+15 12 Especificador de cdigo 0: Ninguno
hasta de inicio del modo sin 1: Usar cdigo de inicio.
15 protocolo
8 hasta Especificador de cdigo 0: Ninguno
11 de fin del modo sin 1: Usar cdigo de fin.
protocolo 2: Usar CR+LF.

rea auxiliar
Nombre Direccin Descripcin
Indicadores de A20200 ON cuando una instruccin de comunicaciones
habilitacin de hasta (incluyendo TXDU(256)) puede ejecutarse con el
puerto de A20207 nmero de puerto correspondiente. Los bits 00 hasta
comunicaciones 07 se corresponden con los puertos 0 hasta 7.
El indicador est en OFF cuando se est ejecutando
una instruccin de comunicaciones y en ON cuando se
ha completado la instruccin (final normal o final con
error).
Cdigos de A203 a Estos canales contienen los cdigos de finalizacin
finalizacin de A210 para los nmeros de puerto correspondientes cuando
puerto de se han ejecutado instrucciones de comunicaciones.
comunicaciones Los canales A203 a A210 se corresponden con los
puertos de comunicaciones 0 a 7.
El cdigo es 00 mientras la instruccin est siendo
ejecutada y contiene el cdigo relevante cuando se
completa la ejecucin.
Estos canales se ponen en 0000 cuando se inicia la
operacin del PLC.
Indicadores de A219 ON cuando se produce un error durante la ejecucin
error del puerto de una instruccin de comunicaciones. Cuando un
de indicador est en ON, compruebe el cdigo de
comunicaciones finalizacin en de A203 hasta A210 para eliminar el
problema que causa el error.
OFF cuando ha finalizado la ejecucin normalmente.
Los bits 00 hasta 07 se corresponden con los puertos 0
hasta 7.
El estado del indicador se retiene hasta que se ejecuta
la siguiente instruccin de comunicaciones. Un
indicador se resetear a 0 incluso si se ha producido
un error la siguiente vez que se ejecute una instruccin
para ese puerto.

957
Instrucciones de comunicaciones serie Seccin 3-24

Cdigos de finalizacin
Cdigo Significado
0205 hexadecimal Tiempo de espera de respuesta (este error puede ocurrir cuando
el modo de comunicaciones se configura como modo host link).
0401 hexadecimal Comando no identificado (este error puede ocurrir cuando el
modo de comunicaciones se configura como macro de
protocolo, NT Link, comprobacin de retorno de eco o modo
Gateway serie).
1001 hexadecimal El comando es demasiado largo.
1002 hexadecimal El comando es demasiado corto.
1003 hexadecimal El nmero de elementos de datos especificado no coincide con
la cantidad real de datos enviados.
1004 hexadecimal El formato de comando es incorrecto.
110C hexadecimal Otro error de parmetros
2201 hexadecimal La operacin no ha podido realizarse en operacin. (Operacin
inhabilitada porque la Unidad est ocupada ejecutando un
envo).
2202 hexadecimal La operacin no ha podido realizarse en parada. (Operacin
deshabilitada porque la Unidad est alternando protocolos).

Indicadores relacionados en el rea de la Unidad de bus de CPU


(n = CIO 1500 + 25 nmero de Unidad)
Canal Bit Nombre Estado
Puerto 1 Puerto 2
n+9 n+19 05 Indicador de 0: TXDU(256) no se est ejecutando.
ejecucin de 1: TXDU(256) se est ejecutando.
instruccin TXDU

Ejemplo: Operacin de los El siguiente diagrama muestra la operacin del indicador de habilitacin de
indicadores puerto de comunicaciones y del indicador de ejecucin de la instruccin
TXDU.

Ejecucin
TXDU(256) de instruccin

Indicador de habilitacin de
CPU puerto de comunicaciones ON
(A20200 hasta A20207 se
orresponden con los puertos
de comunicaciones 0 hasta 7).
OFF

Indicador de ejecucin ON
de TXDU
(Bit 5 de n+9 o bien n+19,
Unidad de n = CIO 1500 + 25 x nmero
de Unidad) OFF
comunicaciones
serie
Procesa-
Procesamiento de envo miento
de envo

Comienza el envo. Envo finalizado.

Ejemplo: Envo de datos Cuando CIO 000000 est en ON, A20203 (indicador de habilitacin de puerto
de comunicaciones) est en ON, y CIO 155905 (indicador de ejecucin de la
instruccin TXDU para el puerto 1) est en OFF en el siguiente ejemplo,
TXDU(256) entrega los datos a travs del puerto serie 1 de la Unidad de
comunicaciones serie con el nmero de Unidad 2. Los 5 bytes de datos de
salida se leen del rea DM empezando por el byte de la derecha de D00100 y
se entregan a travs del puerto lgico 3 a un dispositivo de empleo general,
como puede ser una impresora.

958
Instrucciones de comunicaciones serie Seccin 3-24

000000 A20203 155905


TXDU
Puerto de Instruccin TXDU S D00100
comunicaciones Indicador de
Indicador de habilitacin ejecucin C D00200
N &5

15 12 11 8 7 4 3 0
C+0: D00200 0 0 0 1

Orden de bytes
1: Los bytes menos significativos primero

Control de seal RS y ER
0: Sin control de seal RS y ER
Siempre 00

15 12 11 8 7 4 3 0
C+1: D00201 3 1 1 2

Direccin de Unidad de la Unidad de comunicaciones serie


(direccin de Unidad como la Unidad de bus de CPU)
12 hexadecimal = Nmero de unidad + 10 hexadecimal

Nmero de puerto serie


1: Puerto 1

Especificador de nmero de puerto


3: Puerto lgico 3
Nota:
La direccin de la Unidad del puerto serie puede especificarse directamente configurando el nmero del puerto serie como 0
y configurando la direccin de Unidad de la Unidad de comunicaciones serie como la direccin de la Unidad del puerto serie.
(Configure la direccin de la Unidad como 80 hexadecimal + 4 x nmero de Unidad para el puerto 1 o como 81 hexadecimal
+ 4 x nmero de Unidad para el puerto 2).
15 12 11 8 7 43 0
C+1: 3 0 8 8

Direccin de Unidad de la Unidad de comunicaciones serie


88 hexadecimal = 80 hexadecimal + 4 x nmero de unidad
Nmero de puerto serie
0: Especificar puerto directamente.
Especificador de nmero de puerto
3: Puerto lgico 3

Bytes ms Bytes menos


significativos significativos

15 8 7 0
S: D00100 3 4 1 2

D00101 C D A B

D00102 E A Orden de 1234ABCDEF

Ejemplo de configuraciones de rea de configuracin DM asignada: 5 bytes

Valores de cdigo de inicio y cdigo de fin


En este ejemplo se ha especificado un cdigo de inicio y
15 12 11 8 7 4 3 0 un cdigo de fin en el rea de configuracin DM asignada
D30204 0 2 0 3

ST 12 34 AB CD EF ED
Cdigo de fin ST: Cdigo de inicio
(03 hexadecimal) (p. ej., 02 hexadecimal)
Cdigo de inicio
(02 hexadecimal)
Especificadores de cdigo de inicio y cdigo de fin Datos enviados.
15 12 11 8 7 4 3 0
D30205: 1 1

Especificador de cdigo de fin


(1: Usar cdigo de fin).
Especificador de cdigo de inicio
(1: Usar cdigo de inicio).

959
Instrucciones de comunicaciones serie Seccin 3-24

3-24-6 RECEIVE VIA SERIAL COMMUNICATIONS UNIT: RXDU(255)


Empleo Lee el nmero de bytes de datos especificado de uno de los puertos serie de
la Unidad de comunicaciones serie. (La Unidad de comunicaciones serie
debe ser de la ver. 1.2 posterior).

Smbolo de diagrama de
rels
RXDU(255)

D D: Primer canal de destino

C C: Primer canal de control


N: Nmero de bytes
N 0000 hasta 0100 hexadecimal
(0 hasta 256)
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RXDU(255)
Se ejecuta una vez en el diferencial ascendente @RXDU(255)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos Los contenidos de los canales de control, C y C+1, son como se muestra a
continuacin.
15 12 11 8 7 4 3 0
C

Orden de bytes
0: Los bytes ms significativos primero
1: Los bytes menos significativos primero
Control de seal RS y ER
0: Sin control de seal RS y ER
Siempre 00 1: Control de seal RS
2: Control de seal ER
3: Control de seal RS y ER

15 12 11 8 7 4 3 0
C+1

Direccin de Unidad de destino (ver nota).


Dureccin de Unidad de la Unidad de
comunicaciones serie (nmero de Unidad
+ 10 hexadecimal)
Nmero de puerto serie
0: Especifquelo directamente. (Ver nota).
1: Puerto 1
2: Puerto 2
Especificador de nmero de
puerto (puerto lgico interno)
Especifique 0 hasta 7 o bien F.
(F: Asignacin automtica)

Nota La direccin de la Unidad del puerto serie puede especificarse directamente


configurando el nmero del puerto serie como 0 y configurando la direccin
de la Unidad de destino como la direccin de la Unidad del puerto serie.
(Configure la direccin de la Unidad de destino como nmero de unidad 80
hexadecimal + 4 para el puerto 1 o como nmero de Unidad 81 hexadeci-
mal + 4 para el puerto 2).

960
Instrucciones de comunicaciones serie Seccin 3-24

Especificaciones del
operando rea D C D
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6143 CIO 6142 CIO 6143
rea de Trabajo W000 hasta W511 W000 hasta W510 W000 hasta W511
rea de bit en Espera H000 hasta H511 H000 hasta H510 H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A000 hasta A958 A000 hasta A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta T4095
T4095 T4094
rea Contador C0000 hasta C0000 hasta C0000 hasta C4095
C4095 C4094
rea DM D00000 hasta D00000 hasta D00000 hasta
D32767 D32766 D32767
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32767 E32766 E32767
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32767 En_32766 En_32767
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores #0000 hasta #0100
especificados (binario) o bien &0
hasta &256
(decimal)
Registros de datos --- --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin RXDU(255) lee datos que han sido recibidos en modo sin protocolo en la Uni-
dad de comunicaciones serie con la direccin de Unidad especificada en los
bits 0 hasta 7 de C+1 a travs del puerto especificado con los bits 8 hasta 11
de C+1, y almacena los datos empezando por D. Si se han recibido menos de
N bytes de datos en el puerto, entonces solamente se almacenarn los datos
que han sido recibidos. El nmero de puerto lgico puede configurarse con
cualquier valor entre 0 y 7, y se especifica con los bits 12 hasta 15 de C+1.
Ejecute RXDU(255) para leer los datos recibidos del bfer cuando el
indicador de recepcin completa (del rea de configuracin DM asignada)
est en ON.
Pueden recibirse hasta 259 bytes, incluyendo los datos recibidos (N = 256
bytes mx.), el cdigo de inicio, y el cdigo de fin.
El siguiente diagrama muestra el orden en el que se reciben los datos y los
contenidos de la trama de recepcin para varias configuraciones.
Nota El nmero de puerto lgico puede asignarse automticamente configurando
los bits 12 hasta 15 de C+1 como F. Encontrar ms detalles en el apartado
Asignacin automtica de puerto de comunicaciones en la pgina 979.

961
Instrucciones de comunicaciones serie Seccin 3-24

El siguiente diagrama muestra el orden en el que se envan los datos y los


contenidos de la trama de envo para varias configuraciones de cdigo de
inicio y de fin.
Sin cdigo de inicio ni de fin
Datos
Nmero de bytes
(especificado en el rea de
Slo cdigo de inicio configuracin DM asignada)
ST Datos
Nmero de bytes
Slo cdigo de fin (especificado en el rea de
configuracin DM asignada)
Datos ED
Nmero de bytes hasta
ED: 256 mx.
Cdigo de inicio y de fin
ST Datos ED
Nmero de bytes entre
ST y ED: 256 mx.
Cdigo de fin CR+LF
Datos LF CR
Nmero de bytes hasta
CR+LF: 256 mx.
Cdigo de inicio y de fin CR+LF
ST Datos CR LF
Nmero de bytes entre ST
y CR+LF: 256 mx.

Datos recibidos.

Puerto serie de la Unidad de comunicaciones serie


Orden de bytes
0: Los bytes ms significativos primero
Bytes Bytes ms Bytes menos
1 significativos significativos
2
15 87 0
3 1 2
N Orden de D
4 almacenamiento 3 4
D+1
5 (256 bytes mx.)
D+2 5 6
6
Orden de bytes
1: Los bytes menos significativos primero
Bytes ms Bytes menos
significativos significativos

15 87 0
D 2 1
D+1 4 3
D+2 6 5

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se estn utilizando todos los puertos lgicos o si el
error indicador de habilitacin de puerto de comunicaciones para
el puerto lgico especificado est en OFF cuando se
ejecuta la instruccin.
ON si el valor de C no est dentro del rango.
ON si el valor de N no est entre 0000 y 0100 hexadecimal.
OFF en el resto de los casos.

Precauciones RXDU(255) solamente puede utilizarse para un puerto serie de Unidad de


comunicaciones serie que ha sido configurado como modo sin protocolo.

962
Instrucciones de comunicaciones serie Seccin 3-24

Pueden configurarse los siguientes formatos de trama de mensaje de


recepcin en el rea de configuracin DM asignada.
Cdigo de inicio: Ninguno o de 00 hasta FF hexadecimal.
Cdigo de fin: Ninguno, CR+LF, o de 00 hasta FF hexadecimal. Si no se
especifica cdigo de fin, el nmero de bytes a recibir se configura entre
00 y FF hexadecimal (1 hasta 256 decimal; 00 especifica 256 bytes).
El indicador de recepcin completa (nota 1) se pondr en ON cuando el
nmero de bytes especificado en el rea de configuracin DM haya sido
recibido. Cuando el indicador de recepcin completa se pone en ON, el
nmero de bytes del contador de recepcin (nota 2) tendr el mismo valor
que el nmero de bytes de recepcin especificado en el rea de
configuracin DM asignada. Si se reciben ms bytes de los especificados, el
indicador de desbordamiento de recepcin (nota 3) se pondr en ON.
Si se especifica un cdigo de fin en el rea de configuracin DM asignada, el
indicador de recepcin completa (nota 1) se pondr en ON cuando se reciba
el cdigo de fin o cuando se hayan recibido 256 bytes de datos. Si se reciben
ms datos despus de que el indicador de recepcin completa (nota 1) se
haya puesto en ON, el indicador de desbordamiento de recepcin (nota 3) se
pondr en ON.
La recepcin se detendr si se reciben 259 bytes de datos. Si se introducen
ms datos posteriormente, el indicador de error de sobrecarga (nota 4) y el
indicador de error de transmisin (nota 5) se pondrn en ON.
Cuando se introducen ms datos en el puerto serie de la tarjeta de
comunicaciones serie de los especificados en N, los datos se ignorarn
cuando se ejecute la siguiente instruccin RXDU(255).
Cuando se ejecuta RXDU(255), los datos se almacenan en la memoria
empezando por D, el indicador de recepcin completa (nota 1) se pone en
OFF (incluso si el indicador de desbordamiento de recepcin (nota 3) est en
ON), y el contador de recepcin (nota 2) se pone a 0.
Los datos se almacenarn en la memoria en el orden especificado en C.
Si se especifica 0 para N, el indicador de recepcin completa (nota 1) y el
indicador de desbordamiento de recepcin se pondrn en OFF (nota 3), el
contador de recepcin (nota 2) se pondr a 0 y no se almacenar nada en la
memoria.
Si se especifica monitorizacin de seal CS en C, el estado de la seal CS se
almacenar en el bit 15 de D.
Si se especifica monitorizacin de seal DR en C, el estado de la seal DR se
almacenar en el bit 15 de D.
Si se especifica monitorizacin de seal CS y DR en C, el estado de la seal
CS se almacenar en el bit 15 de D y el estado de la seal DR se almacenar
en el bit 14 de D.
Los datos de recepcin no se almacenarn si se especifica monitorizacin de
seal CS o DR.
Si se especifica 1, 2 3 hexadecimal para el control de seal RS y DR en C,
RXDU(255) se ejecutar sin tener en cuenta el estado del indicador de
recepcin completa (nota 1).
RXDU(255) usa un puerto lgico (porque enva un comando FINS interno)
para entregar un comando de secuencia de recepcin a la Unidad de
comunicaciones serie o a la tarjeta de comunicaciones serie de la serie CS.
Ya que SEND(090), RECV(098), CMND(490), PMCR(260) y TXDU(256)
tambin usan los puertos lgicos 0 hasta 7, RXDU(255) no puede ejecutarse
para un puerto lgico si ese puerto lgico ya est siendo utilizado por una de
esas instrucciones u otra instruccin RXDU(255).
Para asegurarse de que RXDU(255) no se ejecuta mientras el puerto lgico
est ocupado, programe el indicador de habilitacin de puerto de
comunicaciones del puerto (A20200 hasta A20207) como una condicin de
normalmente abierto.

963
Instrucciones de comunicaciones serie Seccin 3-24

CPU

RXDU
RXDU

RXDU(255) no puede ejecutarse mientras el indicador de recepcin completa


(bit 6 de n+9 o bien n+19, donde n = CIO 1500 + 25 nmero de Unidad)
est en ON. Programe el indicador de recepcin completa como una
condicin de normalmente abierto de RXDU(255).
Se producir un error y el indicador de error se pondr en ON en los
siguientes casos.
Si el indicador de habilitacin de puerto de comunicaciones est en OFF
para el puerto lgico especificado cuando se ejecuta RXDU(255).
El valor de C no est dentro del rango.
El valor para N no est entre 0000 y 0100 hexadecimal.

Nota 1. Indicadores de recepcin completa (n = CIO 1500 + 25 nmero de


Unidad)
Puerto 1: Bit 6 de n+9
Puerto 2: Bit 6 de n+19
2. Contadores de recepcin (n = CIO 1500 + 25 nmero de Unidad)
Puerto 1: n+10
Puerto 2: n+20
3. Indicadores de desbordamiento de recepcin (n = CIO 1500 + 25
nmero de Unidad)
Puerto 1: Bit 7 de n+9
Puerto 2: Bit 7 de n+19
4. Indicadores de error de sobrecarga (n = CIO 1500 + 25 nmero de
Unidad)
Puerto 1: Bit 4 de n+8
Puerto 2: Bit 4 de n+18
5. Indicadores de error de transmisin (n = CIO 1500 + 25 nmero de
Unidad)
Puerto 1: Bit 15 de n+8
Puerto 2: Bit 15 de n+18
6. No pueden recibirse ms datos hasta que los datos recibidos sean ledos
del bfer con RXDU(255). Cuando el indicador de recepcin completa se
ponga en ON, lea esos datos con la mayor rapidez posible con RXDU(255)
antes de que se entreguen ms datos al puerto.
7. Cuando se utiliza RXDU(255) para leer datos que han sido recibidos en
uno de los puertos de la Unidad de comunicaciones serie, el bfer de
recepcin del puerto se borra despus de ejecutar RXDU(255). Por lo
tanto, RXDU(255) no puede ejecutarse repetidamente para leer un bloque
de datos por partes.

964
Instrucciones de comunicaciones serie Seccin 3-24

Indicadores y canales Los siguientes canales estn relacionados con la operacin de RXDU(255).
relacionados
Configuraciones del rea de configuracin DM
(m = D30000 + 100 nmero de Unidad)
Canal de rea de Bit Nombre Configuracin
configuracin
Puerto 1 Puerto 2
m+4 m+14 8 hasta Cdigo de inicio del modo 00 hasta FF hexadecimal
15 sin protocolo
0 hasta Cdigo de fin del modo 00 hasta FF hexadecimal
7 sin protocolo
m+5 m+15 12 Especificador de cdigo 0: Ninguno
hasta de inicio del modo sin 1: Usar cdigo de inicio.
15 protocolo
8 hasta Especificador de cdigo 0: Ninguno
11 de fin del modo sin 1: Usar cdigo de fin.
protocolo 2: Usar CR+LF.

rea auxiliar
Nombre Direccin Descripcin
Indicadores de A20200 ON cuando una instruccin de comunicaciones
habilitacin de hasta (incluyendo RXDU(255)) puede ejecutarse con el
puerto de A20207 nmero de puerto correspondiente. Los bits 00 hasta
comunicaciones 07 se corresponden con los puertos 0 hasta 7.
El indicador est en OFF cuando se est ejecutando
una instruccin de comunicaciones y en ON cuando
se ha completado la instruccin (final normal o final
con error).
Cdigos de A203 a Estos canales contienen los cdigos de finalizacin
finalizacin de A210 para los nmeros de puerto correspondientes cuando
puerto de se han ejecutado instrucciones de comunicaciones.
comunicaciones Los canales A203 a A210 se corresponden con los
puertos de comunicaciones 0 a 7.
El cdigo es 00 mientras la instruccin est siendo
ejecutada y contiene el cdigo relevante cuando se
completa la ejecucin.
Estos canales se ponen en 0000 cuando se inicia la
operacin del PLC.
Indicadores de A219 ON cuando se produce un error durante la ejecucin
error del puerto de una instruccin de comunicaciones. Cuando un
de indicador est en ON, compruebe el cdigo de
comunicaciones finalizacin en de A203 hasta A210 para eliminar el
problema que causa el error.
OFF cuando ha finalizado la ejecucin normalmente.
Los bits 00 hasta 07 se corresponden con los puertos
0 hasta 7.
El estado del indicador se retiene hasta que se
ejecuta la siguiente instruccin de comunicaciones.
Un indicador se resetear a 0 incluso si se ha
producido un error la siguiente vez que se ejecute una
instruccin para ese puerto.

Cdigos de finalizacin
Cdigo Significado
0205 Tiempo de espera de respuesta (este error puede ocurrir cuando el
hexadecimal modo de comunicaciones se configura como modo host link).
0401 Comando no identificado (este error puede ocurrir cuando el modo
hexadecimal de comunicaciones se configura como macro de protocolo, NT Link,
comprobacin de retorno de eco o modo Gateway serie).
1001 El comando es demasiado largo.
hexadecimal

965
Instrucciones de comunicaciones serie Seccin 3-24

Cdigo Significado
1002 El comando es demasiado corto.
hexadecimal
1004 El formato de comando es incorrecto.
hexadecimal
110C Otro error de parmetros
hexadecimal
2201 La operacin no ha podido realizarse en operacin. (Operacin
hexadecimal inhabilitada porque la Unidad est ocupada ejecutando un envo).
2202 La operacin no ha podido realizarse en parada. (Operacin
hexadecimal deshabilitada porque la Unidad est alternando protocolos).

Indicadores relacionados en el rea de la Unidad de bus de CPU


(n = CIO 1500 + 25 nmero de Unidad)
Canal Bit Funcin
Puerto 1 Puerto 2
n+8 n+18 04 Indicador de error de sobrecarga
1: El bfer de recepcin contena ms de 259 bytes
de datos antes de ejecutar RXDU(255).
Nota: Una vez que este indicador de error se pone en
ON solamente puede ponerse en OFF
desconectando la alimentacin y volvindola a
conectar o reiniciando la tarjeta.
n+9 n+19 06 Indicador de recepcin completa
0: No se han recibido datos o se estn recibiendo datos
1: Recepcin finalizada
0 1: La tarjeta o la Unidad ha recibido el nmero de
bytes especificado.
1 0: Se ha ejecutado RXD(235) o RXDU(255) para
escribir los datos del bfer en un rea de datos
de la CPU.
n+9 n+19 07 Indicador de desbordamiento de recepcin
0: La tarjeta o Unidad no ha recibido ms del
nmero de bytes especificado.
1: La tarjeta o Unidad ha recibido ms del nmero
de bytes especificado.
0 1: La tarjeta o Unidad ha recibido ms datos
despus de finalizar la recepcin.
1 0: Se ha ejecutado RXD(235) o RXDU(255) para
escribir los datos del bfer en un rea de datos
de la CPU.
n+10 n+20 05 Contador de recepcin
Indica el nmero de bytes recibidos en hexadecimal,
entre 0000 y 0100 hexadecimal (0 hasta 256 decimal).

966
Instrucciones de comunicaciones serie Seccin 3-24

Ejemplo: Operacin de los El siguiente diagrama muestra la operacin de RXDU(255) y los indicadores
indicadores relacionados.

Recibido cdigo final


nmero de bytes especificado.
Procesamiento de
Procesamiento
recepcin de
recepcin
Unidad
de Indicador de recepcin
comunicaciones completa ON
serie (Bit 6 de n+9 o bien n+19,
n = CIO 1500 + 25 x nmero
de unidad)
OFF

Ejecucin
RXDU(255) de instruccin

Puerto de comunicaciones ON
Indicador de habilitacin
CPU (A20200 hasta A20207
se corresponden con
los puertos de OFF
comunicaciones 0 hasta 7).

Procesamiento
Escritura de datos en el rea de escritura
de datos de la CPU

Ejemplo: Recepcin de Cuando CIO 000000 est en ON, A20203 (el indicador de habilitacin de
datos puerto de comunicaciones) est en ON y CIO 155906 (el indicador de recep-
cin completa para el puerto 1) est en OFF en el siguiente ejemplo,
RXDU(255) lee los datos recibidos a travs del puerto serie 1 de la Unidad de
comunicaciones serie con el nmero de Unidad 2. (El puerto lgico de comu-
nicaciones 3 se utiliza para recibir los datos desde un dispositivo de empleo
general, como puede ser un lector de cdigo de barras). Los 10 bytes de
datos recibidos se escriben en el rea DM empezando por el byte de la dere-
cha de D00100.

967
Instrucciones de comunicaciones serie Seccin 3-24

000000 A20203 155906


RXDU
Indicador de Indicador D D00100
habilitacin de de
puerto de recepcin C D00200
comunicaciones completa N &10

15 12 11 8 7 4 3 0
C: D00200 0 0 0 1

1: Del byte menos significativo al byte ms significativo

Control de seal RS y ER
0: Sin control de seal RS y ER

Siempre 0

15 12 11 8 7 4 3 0
C+1: D00201 3 1 1 2

Direccin de Unidad de la Unidad de comunicaciones serie


(direccin de Unidad de la Unidad de bus de CPU)
12: Direccin de Unidad + 10 hexadecimal

Especificador de puerto serie de la Unidad de


1: Puerto serie N 1

Especificador de N de puerto de comunicaciones


3: Puerto de comunicaciones N 3

Nota: La direccin de Unidad del puerto serie de la Unidad de comunicaciones


serie puede tambin especificarse directamente en C+1.

15 12 11 8 7 4 3 0
C+1 3 0 8 8

Especificador de direccin de Unidad del puerto serie de la Unidad de


comunicaciones serie 88: 80 + (04 Unidad N 2)
0: Direccin de Unidad del puerto serie directamente especificada
Especificador de N de puerto de comunicaciones (puerto lgico interno)
3: Puerto de comunicaciones N 3

Bytes ms significativos Bytes menos significativos

15 8 7 0
D: D00100 3 4 1 2

D00101 7 8 5 6
Recibidos en
D00102 C D A B 12345678ABCDEFGHIJKL
el orden
D00103 G H E A especificado:
10 bytes
D00104 K L I J
Se aaden los cdigos de inicio y fin de
Nota: Configuraciones del rea DM asignada acuerdo a la configuracin del PLC

Cdigo de inicio / cdigo de fin ST 12 34 56 78 AB CD EF GH IJ KL ED


15 12 11 8 7 4 3 0
D30204: 0 2 0 3 ST: Cdigo de inicio (p. ej., 02 hexadecimal)
ED: Cdigo de fin (p. ej., 03 hexadecimal)
Cdigo de fin (p. ej., 03 hexadecimal)
Cdigo de inicio (p. ej., 02 hexadecimal) Datos recibidos

Especificador de cdigo de inicio / cdigo de fin


15 12 11 8 7 43 0
D30205: 1 1

Nmero de bytes de datos de recepcin


00: Ilimitado (256 bytes mx.)
Especificador de cdigo de fin
1: Usar cdigo de fin
Especificador de cdigo de inicio
1: Usar cdigo de inicio

3-24-7 CHANGE SERIAL PORT SETUP: STUP(237)


Empleo Cambia los parmetros de comunicaciones de un puerto serie de la CPU, de
la tarjeta de comunicaciones serie (slo serie CS) o de la Unidad de
comunicaciones serie (Unidad de bus de CPU). STUP(237) habilita as el
modo de protocolo para que se pueda cambiar durante el funcionamiento del
PLC.

968
Instrucciones de comunicaciones serie Seccin 3-24

Smbolo de diagrama de
rels STUP(237)

C C: Canal de control (puerto)

S S: Primer canal fuente

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON STUP(237)
Se ejecuta una vez en el diferencial ascendente @STUP(237)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK No se admite

Operandos Los contenidos del canal de control, C, son como se muestra a continuacin.
15 12 11 8 7 0
C

Direccin de Unidad del dispositivo del puerto


CPU: 00 hexadecimal
Unidad de bus de CPU: Nmero de unidad +10 hexadecimal.
Tarjeta interna: E1 hexadecimal (Slo serie CS)
Nmero de puerto serie
1 hexadecimal: Puerto perifrico de la CPU o Puerto 1 de la Unidad de bus de CPU
o tarjeta interna
2 hexadecimal: Puerto RS-232C incorporado en la CPU o Puerto 2 de la Unidad de
bus de CPU o tarjeta interna (las configuraciones 3 y 4 hexadecimal estn
reservadas).
Defnalo siempre en 0.

Especificaciones del
operando rea C S
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta CIO 6134
rea de Trabajo W000 hasta W511 W000 hasta W502
rea de bit en Espera H000 hasta H511 H000 hasta H502
rea Bit Auxiliar A000 hasta A438 A000 hasta A438
A448 hasta A959 A448 hasta A950
rea Temporizador T0000 hasta T4095 T0000 hasta T4086
rea Contador C0000 hasta C4095 C0000 hasta C4086
rea DM D00000 hasta D32767 D00000 hasta D32758
rea EM sin banco E00000 hasta E32767 E00000 hasta E32758
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta En_32758
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)

969
Instrucciones de comunicaciones serie Seccin 3-24

rea C S
Constantes Slo valores especificados #0000
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin STUP(237) escribe 10 canales de datos desde S hasta S+9 en el rea de


configuracin de comunicaciones de la Unidad con la direccin de Unidad
especificada, tal y como se muestra en la siguiente tabla. Cuando se designa
la constante #0000 para S, las configuraciones de comunicaciones del puerto
correspondiente se configuran en el valor predeterminado.
Direccin de Unidad N de Puerto serie rea de configuracin de
Unidad puerto comunicaciones del puerto serie
00 CPU 1 hexa- Puerto 1 Parmetros de comunicaciones
hexadecimal decimal para el puerto perifrico en la
configuracin del PLC
2 hexa- Puerto 2 Parmetros de comunicaciones
decimal para el puerto RS-232C en la
configuracin del PLC
Unidad n + 10 Unidad de 1 hexa- Puerto 1 10 canales comenzando por
hexadecimal comunicaciones serie decimal D30000 + 100 x Unidad N.
(Unidad de bus de CPU) 2 hexa- Puerto 2 10 canales comenzando por
decimal D30000 + 100 x Unidad N. + 10
E1 Tarjeta de 1 hexa- Puerto 1 10 canales empezando por
hexadecimal comunicaciones serie decimal D32000
(tarjeta interna) (slo 2 hexa- Puerto 2 10 canales empezando por
serie CS) decimal D32010

Cuando se ejecuta STUP(237), el correspondiente indicador de cambio de


parmetros de puerto (A61901, A61902, o bien A619 hasta A636) se pondr
en ON. El indicador se mantendr en ON hasta que se haya completado el
cambio de parmetros.
Use STUP(237) para cambiar los parmetros de comunicaciones de un
puerto durante la operacin basndose en condiciones especificadas. Por
ejemplo, STUP(237) puede usarse para cambiar a comunicaciones Host Link
para monitorizar y programar desde un ordenador host cuando se cumples
unas condiciones especificadas mientras se ejecuta una secuencia de
comunicaciones para una conexin de mdem.
Diferencias entre CPUs
Si el PLC de desconecta y se vuelve a conectar despus de haber usado
STUP(237) para cambiar los parmetros de comunicaciones, los nuevos
parmetros se retendrn o se volver a los parmetros anteriores depen-
diendo de la CPU.
CPU Estado de los parmetros de comunicaciones
CS1-H, CJ1-H, Si el PLC de desconecta y se vuelve a conectar, los parmetros de
CJ1M o CS1D comunicaciones volvern a las configuraciones que existan antes
de haber sido cambiadas mediante STUP(237).
CS1 Si el PLC de desconecta y se vuelve a conectar, se retienen los
parmetros de comunicaciones configurados mediante
STUP(237).

970
Instrucciones de comunicaciones serie Seccin 3-24

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los valores de C no estn dentro del rango.
error ON si STUP(237) se ejecuta para un puerto cuyo indicador
de cambio de parmetros de comunicaciones ya est en
ON.
ON si STUP(237) se ejecuta en una tarea de interrupcin.
OFF en el resto de los casos.

Precauciones Los parmetros de comunicaciones consisten en el modo de protocolo,


velocidad de transmisin, formato de datos (mtodo de transmisin de macro
de protocolo y longitud mxima de comunicaciones de macro de protocolo) y
otros parmetros. Consulte ms detalles sobre el puerto serie a configurar en
el Manual de operacin de controladores lgicos de la serie CS/CJ (W339) o
en el Manual de operacin de tarjetas de comunicaciones serie y Unidades
de comunicaciones serie de la serie CS/CJ (W336).

Indicadores y canales Los siguientes indicadores pueden utilizarse segn sea necesario cuando se
relacionados ejecute STUP(237). Estos indicadores se encuentran en el rea auxiliar.
Nombre Direccin Contenido
Indicador de cambio de A61901 ON cuando se cambian los
parmetros del puerto de parmetros de comunicaciones del
perifricos puerto de perifricos.
Indicador de cambio de A61902 ON cuando se cambian los
parmetros de puerto parmetros de comunicaciones del
RS-232C puerto RS-232C.
Indicadores de cambio de A620 bit 01 a ON cuando se cambian los
parmetros de puerto para bit 04 parmetros de comunicaciones para
los puertos 1 hasta 4 de las hasta A635 bit un puerto de una Unidad de
Unidades de comunica- 01 a bit 04 comunicaciones serie.
ciones serie 1 hasta 15.
Indicadores de cambio de A63601 hasta ON cuando se cambian los
parmetros de puerto para A63604 parmetros de comunicaciones para
los puertos 1 hasta 4 de la un puerto de una tarjeta de
tarjeta de comunicaciones comunicaciones serie.
serie (slo serie CS).

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, los parmetros


de comunicaciones para el puerto serie 1 de la tarjeta de comunicaciones
serie (tarjeta interna) se cambian a las configuraciones contenidas en los 10
canales de D00100 hasta D00109. En este ejemplo, las configuraciones se
cambian del modo de protocolo al modo de macro de protocolo.

971
Instrucciones de comunicaciones serie Seccin 3-24

6
Configuracin de puerto: Predeterminada, Modo
S: D00100 protocolo 6 hexadecimal (macro de protocolo).
S+1: D00101 Velocidad de transmisin:
Predeterminada (9.600 bps)
S+2: D00102
hasta hasta
S+9: D00109

Transferido

Canales DM asignados a la configuracin de


comunicaciones de la tarjeta de comunicaciones serie.
6

hasta hasta

972
Instrucciones de red Seccin 3-25

3-25 Instrucciones de red


3-25-1 Acerca de las operaciones SYSMAC NET Link/SYSMAC LINK
Las instrucciones de red pueden dividirse en dos tipos, SEND(090)/
RECV(098) y CMND(490). Estas instrucciones se transmiten entre Unidades
(CPUs, Unidades de bus de CPU y ordenadores) de una red para transferir
datos y realizar operaciones de control, como cambiar el modo de operacin.
Instruccin Contenido de Operacin
mensaje
SEND(090)/ Comandos para trans- CPU Otro dispositivo
RECV(098) mitir/recibir datos Transmisin de datos
(comando FINS) SEND(090) o CPU,
RECV(098) Unidad de bus de CPU
Recepcin de datos CS1 u ordenador

CMND(490) Comandos arbitrarios CPU Otro dispositivo


(Comando FINS)
Comando enviado CPU,
CMND(490) Unidad de bus de CPU
Respuesta devuelta CS1 u ordenador

Los comandos ejecutados por las instrucciones de red se conocen como


comandos FINS y se utilizan para comunicaciones entre dispositivos de
control FA. (Consulte el Manual de referencia de los comandos de comunica-
ciones de la serie CS/CJ para obtener informacin ms detallada sobre los
comandos FINS). Con los comandos FINS es posible establecer comunica-
ciones (en formato comando/respuesta) con cualquier Unidad de cualquier
red o del bastidor de la CPU simplemente especificando la direccin de red,
el nmero de nodo y el nmero de Unidad de la Unidad de destino.
En el siguiente ejemplo se enva un comando FINS a la CPU a travs del
nmero de nodo 2 de la direccin de red 00.
Nmero de nodo 1

Nmero de nodo 2
CPU (bastidor)

Direccin de red 00
(red local)

Direccin de red 01

1,2,3... 1. Direccin de red:


Direccin de la red (red local = 00)
2. N de nodo
Direccin lgica de la red
3. Nmero de unidad
Nmero de Unidad de la Unidad de destino
a) CPU: 00
b) Unidad de bus de CPU:Nmero de Unidad +10 hexadecimal
c) Unidad de E/S especial (excepto para Unidades de E/S especiales de
la serie C200H):
Nmero de Unidad + 20 hexadecimal

973
Instrucciones de red Seccin 3-25

d) Tarjeta interna (slo serie CS):


E1 hexadecimal
e) Ordenador: 01
Nmero de Unidad Dispositivo de destino
(hexadecimal)
00 N de nodo

Nmero de Unidad N de nodo


+10

E1 N de nodo

01

N de nodo

Nota Tambin es posible especificar directamente un puerto serie (direccin de


Unidad) del dispositivo de destino.

Unidad de comunicaciones serie


Tarjeta interna CPU
Puerto serie 1 Puerto serie 1 Puerto serie 2 (perifricos)
Puerto serie 2 Puerto serie 2 Puerto serie 1 (RS-232C)

Direcciones de Unidad del puerto serie:


Puertos de Unidad de comunicaciones serie
Puerto 1: 80 hexadecimal + 4 nmero de Unidad
Nmero de unidad 0 1 2 3 4 5 6 7 8 9 A B C D E F
Hexadecimal 80 84 88 8C 90 94 98 9C A0 A4 A8 c.a. B0 B4 B8 BC
Decimal 128 132 136 140 144 148 152 156 160 164 168 172 176 180 184 188

Puerto 2: 81 hexadecimal + 4 nmero de Unidad


Nmero de unidad 0 1 2 3 4 5 6 7 8 9 A B C D E F
Hexadecimal 81 85 89 8D 91 95 99 9D A1 A5 A9 AD B1 B5 B9 BD
Decimal 129 133 137 141 145 149 153 157 161 165 169 173 177 181 185 189

Puertos de tarjeta de comunicaciones serie


Puerto 1: E4 hexadecimal (228 decimal)
Puerto 2: E5 hexadecimal (229 decimal)
Puertos de CPU
Puerto de perifricos: FD hexadecimal (253 decimal)
Puerto RS-232C: FC hexadecimal (252 decimal)
Esquemas de Los siguientes ejemplos muestran tres tipos de comunicaciones de red:
comunicaciones de red comunicaciones desde un PLC con otros dispositivos de una red, comunica-

974
Instrucciones de red Seccin 3-25

ciones desde un PLC con puertos serie de otros dispositivos de una red y
comunicaciones con un ordenador host conectado a un Host Link.
Comunicaciones con otro dispositivo de la red
El siguiente ejemplo muestra comunicaciones desde un PLC a dispositivos
de otro PLC (la CPU, la Unidad de bus de CPU o la tarjeta interna). Para ms
detalles consulte el manual de operacin de la red (Controller Link o Ether-
net) que se est utilizando.
A la Unidad de A la tarjeta
PLC a PLC bus de CPU interna

A la CPU

Este ejemplo muestra comunicaciones desde un PLC a un ordenador personal.

PLC a ordenador

Comunicaciones a un puerto serie de la red


Estos ejemplos muestran comunicaciones desde un PLC a puertos serie de los
dispositivos de la red. El primero muestra comunicaciones con puertos serie de
dispositivos de otro PLC (la CPU, la Unidad de bus de CPU o la tarjeta interna) y
el segundo muestra comunicaciones con un puerto serie del bastidor de la CPU.
A travs de la red

En el bastidor de la CPU

Nota Las comunicaciones pueden extenderse hasta 8 niveles de red, incluyendo la


red local. (La red local es la red en la que se originan las comunicaciones).

SEND(090),
RECV(098) o
CMND(490)
Puente o Gateway Puente o Gateway

Red 1 Red 2 Red 3


(red local)

Para establecer comunicaciones por la red es necesario registrar una tabla


de rutas en cada CPU de cada PLC que indique la ruta por la que se trasferi-

975
Instrucciones de red Seccin 3-25

rn los datos al nodo deseado. Cada tabla de rutas se compone de una tabla
de red local y una tabla de red de rels.

1,2,3... 1. Tabla de red local


Esta tabla muestra los nmeros de Unidades y las direcciones de red de
los nodos conectados al PLC local.
2. Tabla de red de retransmisin
Esta tabla muestra los nmeros de nodo y las direcciones de red de los
primeros nodos de conmutacin a las redes de destino que no estn co-
nectados al PLC local.
Comunicaciones con un ordenador host (Host Link)
Cuando se entrega una instruccin SEND(090), RECV(098) o CMND(490) a
un puerto serie configurado en modo Host Link, la cabecera y la terminacin
Host Link necesarias se incorporan al comando FINS y el comando se enva
al ordenador host.
Ordenador host conectado al Ordenador host conectado a una Ordenador host conectado a
puerto incorporado de la CPU tarjeta de comunicaciones serie una Unidad de puerto serie
(Slo serie CS)
Ordenador host Ordenador host Ordenador host
Al puerto Al puerto Al puerto
CPU
Host Link Host Link Host Link

Comando
FINS FCS y terminacin
Host Link
Tarjeta de comunica- Unidad de comunica-
ciones serie ciones serie
Cabecera de Host Link

Nota Las comunicaciones Host Link pueden enviarse a travs de la red. En este caso
el comando FINS viaja a travs de la red con normalidad. Cuando el comando
llega al sistema Host Link, la cabecera y la terminacin Host Link necesarias se
incorporan al comando FINS y el comando se enva al ordenador host.

Ordenador host

Host Link

Comando FCS y termina-


FINS cin Host Link
Comando FINS
Cabecera de Host Link

Comunicaciones con Gateway serie con un componente o Host Link


esclavo
Es posible enviar comandos FINS (o enviar/recibir datos) a un componente o
Host Link esclavo conectado al PLC a travs de su puerto serie con la funcin
de Gateway serie.
Envo a un componente
Cuando se ejecuta una instruccin CMND(490) para un puerto serie com-
patible con la funcin Gateway serie, la funcin Gateway serie convierte el
comando en un comando CompoWay/F, Modbus-RTU o Modbus-ASCII.

976
Instrucciones de red Seccin 3-25

CMND

PLC

Modbus RTU

Cable serie

Dispositivo esclavo Modbus-RT

Envo a un PLC operando como esclavo Host Link


Cuando se ejecuta una instruccin CMND(490), SEND(090) o RECV(098)
para un puerto serie compatible con la funcin Gateway serie, la funcin Ga-
teway serie puede enviar cualquier comando FINS o enviar/recibir datos.

CMND

PLC

FINS Host Link


Cable serie

PLC
Esclaco Host
Link

Comunicaciones desde un ordenador host (Host Link)


Es posible enviar comandos FINS desde un ordenador host al PLC al que
est conectado, as como a otros dispositivos de la red (CPUs, Unidades de
E/S especiales, ordenadores, etc.). En este caso, la cabecera y terminacin
Host Link necesarias deben incorporarse al comando FINS cuando se enva.

Ordenador host

Host Link

Comando FCS y terminacin


FINS Host Link Comando FINS

Cabecera de Host Link

977
Instrucciones de red Seccin 3-25

Indicadores de A continuacin se resume la operacin de los indicadores de comunicaciones.


comunicaciones El indicador de habilitacin de puerto de comunicaciones se resetea a 0
cuando las comunicaciones estn en progreso y se configura como 1
cuando se completan las comunicaciones (normalmente o no).
El estado del indicador de error de puerto de comunicaciones se man-
tiene hasta la siguiente vez que se transmiten o reciben datos.
El indicador de error de puerto de comunicaciones se resetea a 0 la
siguiente vez que se transmiten o reciben datos, incluso si se produce un
error en la operacin anterior.
Indicador de habilitacin de
puerto de comunicaciones
Ejecutando Ejecutando Ejecutando
Instruccin de red (SEND, instruccin 1 instruccin 2 instruccin 3
RECV o CMND)

Indicador de error del puerto


de comunicaciones

Cdigo de finalizacin de 0204 0000 (finalizacin normal)


puerto de comunicaciones Finalizacin 0000
anterior (finalizacin normal) Ocupado

Nmeros de puerto de Se facilitan 8 puertos de comunicaciones lgicos, as que pueden ejecutarse


comunicaciones 8 instrucciones de comunicaciones simultneamente.. Slo puede ejecutarse
una instruccin de cada vez para cada puerto de comunicaciones. Debe utili-
zarse control exclusivo cuando se ejecutan ms de 8 instrucciones.
Estos 8 nmeros de puerto de comunicaciones son compartidos por las ins-
trucciones de red (SEND(090), RECV(098) y CMND(490)), las instrucciones
de comunicaciones serie (TXDU(256) y RXDU(255)), y la instruccin PRO-
TOCOL MACRO (PMCR(260)). Asegrese de no especificar el mismo
nmero de puerto en dos instrucciones al mismo tiempo.
Unidad Controller Link,
Unidad Ethernet o Unidad
de comunicaciones serie CPU
Puerto
Instruccin 1

Instruccin 2

Instruccin 3

Instruccin 4

Instruccin 5

Instruccin 6

Instruccin 7

Instruccin 8

978
Instrucciones de red Seccin 3-25

El siguiente diagrama muestra un ejemplo de control exclusivo.

El bit A se mantiene en ON mientras se


Condicin Indicador de KEEP A ejecuta la instruccin de comunicaciones.
de habilitacin de puerto
ejecucin de comunicaciones

Reset B

Crea datos Copia el operando y los datos de control en


Indicador de Indicador de
de operando el rea de datos deseada.
o de control
nodo local nodo de con @MOV o
activo destino activo @XFER.

@SEND, Ejecuta la instruccin de comunicaciones.


@RECEIVE,
@CMND

Escribe la entrada de reset. (El reset B se


Indicador de habilitacin de DIFU B pone en ON cuando la instruccin de
puerto de comunicaciones comunicaciones se completa).

Para visualizacin de indicador de error de


transmisin (recomendable si se
Indicador de error del puerto
de comunicaciones retransmiten datos).

Control exclusivo para prevenir


Condicin de Indicador de habil- KEEP C
ejecucin simultnea:
ejecucin tacin de puerto de El control exclusivo previene que se
comunicaciones ejecute otra instruccin de
comunicaciones hasta que la
Idntico.
Reset D instruccin anterior sea completada.

Asignacin automtica de
puerto de comunicaciones
Introduccin
Las siguientes instrucciones utilizan un puerto de comunicaciones (puerto
lgico) entre los puertos 0 hasta 7.
Instrucciones de comunicaciones de red: SEND(090), RECV(098) y
CMND(490)
Instrucciones de comunicaciones serie: PMCR(260), TXDU(256) y
RXDU(255)
En esta seccin se refiere a todas las instrucciones anteriores como instruc-
ciones de comunicaciones.
Cada puerto de comunicaciones puede ser utilizado solamente por una ins-
truccin cada vez. Los siguientes pasos eran anteriormente necesarios para
utilizar los puertos de comunicaciones.
Cuando se programaba era necesario mantener un seguimiento de los
puertos de comunicaciones que se estaban utilizando para designarlos
como operandos.
En el programa de diagrama de rels era necesario confirmar la disponi-
bilidad de los puertos de comunicaciones antes de utilizarlos.

979
Instrucciones de red Seccin 3-25

Ejemplo de requisitos anteriores de programacin


El usuario necesitaba control exclusivo cuando se utilizaba el mismo puerto de comunicaciones ms de una vez.
Era necesaria la confirmacin de la disponibilidad de un puerto de comunicaciones utilizando
el correspondiente indicador de habilitacin de puerto de comunicaciones, aqu para el puerto 0.

Condicin de b
ejecucin (en ejecucin) A20200
KEEP
a
(en ejecucin)
d (ejecucin finalizada)

a (en ejecucin)
@Instruccin de
comunicaciones

Puerto de comu-
nicaciones: 0

El usuario necesitaba control exclusivo cuando se


b (en ejecucin) utilizaba el mismo puerto de comunicaciones ms de una vez.
@Instruccin de
comunicaciones

Era necesario mantener un seguimiento del puerto de


Puerto de comu-
comunicaciones utilizado por cada instruccin.
nicaciones: 0

c (en ejecucin)
@Instruccin de
comunicaciones

Puerto de comu-
nicaciones: 1

Ahora, para CPUs CS1-H, CJ1-H, CJ1M y CS1D con nmero de lote 020601
o posterior (fabricadas el 1 de junio de 2002 o posteriormente), el nmero de
puerto puede especificarse comoF en lugar de como de 0 hasta 7 para sig-
nar automticamente el puerto de comunicaciones, es decir, el siguiente
puerto de comunicaciones abierto se utiliza automticamente.
@Instruccin de
comunicaciones

Cuando se especifica F se utiliza el


Puerto de com- siguiente puerto de comunicaciones
unicaciones: F disponible automticamente.

Esto ahorra al programador tener que mantener un seguimiento de los puer-


tos de comunicaciones al programar. Las diferencias entre asignar nmeros
de puerto especficos y asignar nmeros de puerto automticamente se rela-
cionan en la siguiente tabla.
Elemento Asignacin de n- Asignacin automtica
meros especficos
Especificacin del nmero 0 hasta 7 F
de puerto de comunicacio-
nes en los datos de control
Control exclusivo Obligatoria. No es necesario a no ser que se
requieran ms de 8 puertos de
comunicaciones al mismo tiempo.
Aplicaciones de indicado- LD o LD NOT se utili- TST(350) o TSTN(351) se utilizan
res zan con el indicador con A218 (nmero de puerto de
correspondiente al comunicaciones utilizado).
puerto de comunica-
ciones especificado.
Cdigos de finalizacin de Se accede al cdigo A los cdigos de finalizacin se
comunicaciones de red de finalizacin del accede utilizando la direccin de
puerto de comunica- memoria de E/S almacenada en
ciones especificado A216 y A217 (direccin de almace-
por el usuario. namiento del cdigo de finalizacin
de comunicaciones de red) y el
direccionamiento indirecto del
registro de ndices.

980
Instrucciones de red Seccin 3-25

Bits y canales del rea auxiliar utilizados al asignar automticamente


puertos de comunicaciones
Direccin Bits Nombre Descripcin
A202 15 Indicador activado de asigna- ON cuando hay un puerto de comunicaciones disponible para asig-
cin de puerto de comunica- nacin automtica. Este indicador puede utilizarse para confirmar si
ciones de red ya han sido asignados los ocho puertos de comunicaciones antes
de ejecutar las instrucciones de comunicaciones.
A214 00 Indicadores de primer ciclo Cada indicador se activar durante un solo ciclo una vez concluidas
hasta despus de la finalizacin de las comunicaciones. Los bits 00 hasta 07 se corresponden con los
07 comunicaciones de red puertos 0 hasta 7. Utilice el nmero de puertos de comunicaciones
utilizado guardado en A218 para determinar a qu indicador acceder.
Nota: Estos indicadores no surtirn efecto hasta el siguiente ciclo
posterior a la instruccin de comunicaciones. Retardan el
acceso a los mismos durante al menos un ciclo.
08 No usar.
hasta
15
A215 00 Indicadores de primer ciclo Cada indicador se activar durante un solo ciclo despus de produ-
hasta despus de un error de comu- cirse un error de comunicaciones. Los bits 00 hasta 07 se corres-
07 nicaciones de red ponden con los puertos 0 hasta 7. Utilice el nmero de puertos de
comunicaciones utilizado guardado en A218 para determinar a qu
indicador acceder.
Nota: Estos indicadores no surtirn efecto hasta el siguiente ciclo
posterior a la instruccin de comunicaciones. Retardan el
acceso a los mismos durante al menos un ciclo.
08 No usar.
hasta
15
A216 y --- Direccin de almacenamiento El cdigo de finalizacin de una instruccin de comunicaciones se
A217 del cdigo de finalizacin de guarda automticamente en la direccin con la direccin de memo-
comunicaciones de red ria de E/S especificada en estos canales. Coloque esta direccin en
un registro de ndices y utilice el direccionamiento indirecto de dicho
ndice para leer el cdigo de finalizacin de comunicaciones.
A218 --- Nmeros de puerto de comu- Cuando se ejecuta una instruccin de comunicaciones, el nmero
nicaciones utilizados del puerto de comunicaciones utilizado se almacena en este canal.
Los valores 0000 hasta 0007 hexadecimal se corresponden con los
puertos de comunicaciones 0 hasta 7.

Nota 1. Use el siguiente organigrama para determinar si utilizar o no el indicador


de habilitacin de asignacin de puerto de comunicaciones (A20215) y la
direccin de almacenamiento del cdigo de finalizacin de comunicacio-
nes de red (A216 y A217).

Se utilizan ms de 8 puer- S Use A20215 y lleve a cabo control


tos de comunicaciones? exclusivo.

NO

Son necesarios cdigos S Use A216 y A217 con direccionamien-


de finalizacin de comuni- to indirecto mediante un registro de
caciones? ndices para comprobar el cdigo.

NO

Use asignacin automtica de


puerto de comunicaciones

981
Instrucciones de red Seccin 3-25

2. Los bits y canales de rea auxiliar usados para puertos de comunicacio-


nes especificados por el usuario se relacionan en la siguiente tabla.
Direccin Bits Nombre Descripcin
A202 00 Indicadores de habilitacin de ON cuando una instruccin de comunicaciones puede ejecutarse
hasta puerto de comunicaciones con el nmero de puerto correspondiente. Los bits 00 hasta 07 se
07 corresponden con los puertos 0 hasta 7.
La finalizacin de las comunicaciones puede confirmarse monitori-
zando cundo un indicador se pone en ON. El indicador se pone en
OFF cuando se inicia una instruccin de comunicaciones.
A203 --- Cdigos de finalizacin de Estos canales contienen los cdigos de finalizacin para los nme-
hasta puerto de comunicaciones ros de puerto correspondientes cuando se han ejecutado instruccio-
A210 nes de comunicaciones. Los canales A203 hasta A210 se
corresponden con los puertos de comunicaciones 0 hasta 7.
A219 00 Indicador de error del puerto ON cuando se produce un error durante la ejecucin de una instruc-
hasta de comunicaciones cin de comunicaciones. Cuando un indicador est en ON, com-
07 pruebe el cdigo de finalizacin en de A203 hasta A210 para
eliminar el problema que causa el error.
Se pondr en OFF si la ejecucin finaliza con normalidad. Los bits
00 hasta 07 se corresponden con los puertos 0 hasta 7.

Operacin de indicador / canal


Instruccin de
comunicaciones Comunicacio-
ejecutada. nes finalizadas.

Indicadores de habilitacin de
puerto de comunicaciones
(A20200 hasta A20207)

Finalizacin normal:
Indicadores de primer ciclo
despus de finalizacin de
comunicaciones de red
(A21400 hasta A2407) ON para un ciclo

Cdigos de finalizacin de Puertos a ceros Respuesta almacenada


puerto de comunicaciones
(A203 hasta A210)

Finalizacin con error:


Indicadores de error de
puerto de comunicaciones
(A21900 hasta A21907)

Indicadores de primer ci-


clo despus de error de
comunicaciones de red
(A21500 hasta A21507) ON para un ciclo

982
Instrucciones de red Seccin 3-25

Mtodos de aplicacin
Para utilizar asignacin automtica de puertos de comunicaciones, configure
el nmero de puerto de comunicaciones como "F", y posteriormente pro-
grame como se muestra a continuacin.
Procesamiento de finalizacin y error de despus de ejecutar
instrucciones de comunicaciones

Condicin de ejecucin
KEEP
a (en
ejecucin)
d (ejecucin finalizada)

Cuando a (en ejecucin) se pone en ON, se ejecuta una instruccin de


a (en ejecucin) comunicaciones
Instrucciones de
comunicaciones (SEND(090), RECV(098), CMND(490) o PMCR(260)) con el puerto de
comunicaciones especificado como F.

Puerto: F

El nmero de puerto de comunicaciones que fue asignado


automticamente se almacena en un canal de trabajo b (puerto utilizado)
MOV de A218 (nmero de puerto de comunicaciones utilizado).
A218
b Confirma que el indicador de primer ciclo despus de finalizacin de comunicaciones
(puerto utilizado)
de red para el nmero de puerto asignado automticamente (bit correspondiente para
el canal b en A214) est en ON.
c (en espera) Confirma que el indicador de primer ciclo despus de
error de comunicaciones de red para el nmero de
puerto asignado automticamente (bit correspondiente
para el canal b en A215) est en OFF.
a (en ejecucin) c (en espera) d (ejecucin finalizada)
TST
A214
b
(puerto utilizado)

TSTN Procesamiento de
A215 finalizacin de
comunicaciones de red
b
(puerto utilizado)

TST
Procesamiento de error
A215 de comunicaciones de
b red
(puerto utilizado)

El bit c pone en OFF el ciclo


despus de que la instruccin de
comunicaciones haya sido ejecutada Confirma que el indicador de primer ciclo despus de error
para habilitar la comprobacin de de comunicaciones de red para el nmero de puerto
finalizacin de las comunicaciones o de asignado automticamente (bit correspondiente para el
errores de comunicaciones. canal b en A215) est en OFF.

983
Instrucciones de red Seccin 3-25

Acceso al cdigo de finalizacin despus de ejecutar instrucciones de


comunicaciones
Los cdigos de finalizacin se utilizan generalmente para solucionar errores
cuando estos se producen. Un cdigo de finalizacin 0000 hexadecimal
puede, no obstante, utilizarse tambin para confirmar que las comunicacio-
nes han finalizado con normalidad.
Condicin de ejecucin
KEEP
a
(ejecutando)
d (ejecucin finalizada)

a (en ejecucin) Cuando a (en ejecucin) se pone en ON, se ejecuta una instruccin de
Instrucciones de comunicaciones (SEND(090), RECV(098), CMND(490) o PMCR(260))
comunicaciones
con el puerto de comunicaciones especificado como F.

Puerto: F

El nmero de puerto de comunicaciones que fue asignado automtica-


mente se almacena en un canal de trabajo b (puerto utilizado) de A218
MOV (nmero de puerto de comunicaciones utilizado).
A218
b
(puerto utilizado)

Coloca la direccin de memoria de E/S (A216) que contiene el cdigo de


finalizacin para la instruccin de comunicaciones ejecutada con asigna-
MOVL cin automtica del puerto de comunicaciones en el canal de trabajo e
A216 (ubicacin de almacenamiento de cdigo).
e (ubicacin de
almacenamiento Confirma que el indicador de primer ciclo despus de finalizacin de co-
de cdigo)
municaciones de red para el nmero de puerto asignado automticamen-
te (bit correspondiente para el canal b en A214) est en ON.
c (en espera)

Coloca la direccin de memo-


a (en ejecucin) c (en espera) d (ejecucin finalizada) ria de E/S del cdigo de res-
puesta de comunicaciones del
TST canal de trabajo e (ubicacin
de almacenamiento del cdigo)
A214
en el registro de ndices IR0.
b
(puerto utilizado) MOVL
e (ubicacin de
almacenamiento
de cdigo)

IR0

<>
Procesamiento de error de
,IR0 comunicaciones de red
#0000

El bit c pone en OFF el ciclo


despus de que la instruccin de Si el cdigo de finalizacin direccionado indirec-
comunicaciones haya sido ejecutada tamente mediante IR0 no es igual a #0000, se
para habilitar la comprobacin del cdi- ejecuta un procesamiento de error de comunica-
go de finalizacin de comunicaciones. ciones.

Nota En el mismo programa pueden utilizarse tanto nmeros de puerto de comuni-


caciones especificados por el usuario como nmeros de puerto de comunica-
ciones especificados automticamente. No obstante es posible que los
nmeros de puerto de comunicaciones especificados por el usuario sean uti-
lizados para asignacin autimtica. Es por ello importante comprobar el pro-
grama cuidadosamente al aadir instrucciones de comunicaciones que
utilicen asignacin automtica de puertos de comunicaciones a un programa
existente, como se muestra en el siguiente ejemplo.

984
Instrucciones de red Seccin 3-25

Ejemplo de programacin
W00000 A20201

Puerto: 1

Anteriormente las comunicaciones se habilitaban


W00001 A20201 exclusivamente mediante operacin de control
utilizando W00000 y W00001.

Se ha aadido
al programa la
Puerto: 1 asignacin au-
tomtica de
puertos.

Es posible que esta instruccin, a veces, utilice


el puerto de comunicaciones 1. Incluso si
W00000 o W00001 se ponen en ON, A20201 se
pondr en OFF ejecutando esta instruccin
Puerto: F PMCR(260), as que no se ejecutar ninguna de
las instrucciones CMND(490).

Temporizacin de la Una instruccin de red inicia el procesamiento de comunicaciones en el


ejecucin de momento en que se establece su condicin de ejecucin. El proceso real de
instrucciones de red comunicaciones se ejecuta en segundo plano en la parte de "servicio de
puerto serie de comunicaciones" del servicio de perifricos.
Procesamiento de comunicaciones
en segundo plano
Slo dirige el
Condicin de Indicador de habilitacin de inicio del Tiempo
ejecucin puerto de comunicaciones procesamiento. de ciclo Compone un comando
FINS basado en los datos
de comando y lo enva.
CMND
S Tiempo
de ciclo El procesamiento de las comunica-
D ciones (transmisin y recepcin) se
C lleva a cabo en porciones de tiempo
a lo largo de varios ciclos durante la
parte del ciclo "servicio de puerto de
comunicaciones serie" del servicio
de perifricos.
Almacena los resultados
cuando finaliza el proce-
samiento de las comuni-
caciones. Recibe la respuesta y almacena la
informacin como datos de res-
puesta. Los resultados de comunica-
ciones se reflejan en los indicadores
del rea auxiliar asignada.

El procesamiento de las comunicaciones se lleva a cabo como sigue:


1. Si el correspondiente indicador de habilitacin de puerto de comunicacio-
nes (A20200 hasta A20207) est en ON cuando se establece la condicin
de ejecucin, el sistema lleva a cabo los siguientes procesos:
Pone en OFF el indicador de habilitacin de puerto de comunicacio-
nes y el indicador de error de puerto de comunicaciones (A21900 has-
ta A21907).
Establece el cdigo de finalizacin de puerto de comunicaciones
(A203 hasta A210) como 0000.
Lee los canales de control (empezando por C) e inicia el procesamien-
to de comunicaciones (enviando un comando FINS o recibiendo una
respuesta).
2. En la parte del ciclo de servicio de perifricos servicio de puerto de co-
municaciones serie, el sistema compone un comando FINS basado en
los operandos (ver nota) y enva el comando FINS a la Unidad de comu-
nicaciones o a otro nodo de destino.

985
Instrucciones de red Seccin 3-25

Nota Cuando se est ejecutando SEND(090), se leen los contenidos de S


y D y se compone un comando FINS para la transmisin de datos.
Cuando se est ejecutando RECV(098), se leen los contenidos de S
y se compone un comando FINS para la recepcin de datos.
Cuando se est ejecutando CMND(490), se leen los contenidos de
S y se compone el comando FINS correspondiente.
3. Si el procesamiento de envo no puede completarse en el tiempo disponi-
ble en el periodo servicio de puerto de comunicaciones serie, el proce-
samiento continuar en el servicio de puerto de comunicaciones serie del
siguiente ciclo.
4. Cuando se devuelve una respuesta el sistema lleva a cabo los siguientes
procesos:
Refresca los canales de destino especificados en la instruccin de red
con los datos de respuesta.
Pone en ON el indicador de habilitacin de puerto de comunicaciones
del puerto.
Refresca el indicador de error de puerto de comunicaciones del puerto
(A21900 hasta A21907) y el cdigo de finalizacin del puerto de co-
municaciones (A203 hasta A210).
3. El procesa-
miento se divide
a lo largo de
Tiempo de ciclo (primer ciclo) varios ciclos. Tiempo de ciclo (segundo ciclo)

Ejecucin del programa Ejecucin del programa

END(001) ejecutada. END(001) ejecutada.


1. SEND(090),
RECV(098) o
CMND(490) Refresco de E/S Refresco de E/S
ejecutada.

Servicio de Servicio de
perifricos perifricos
Enva el comando. Recibe la
respuesta.

2. Procesamiento de las comunica- 4. Procesamiento de las comuni-


ciones durante el "servicio de puerto caciones durante el "servicio de
de comunicaciones serie" (compone puerto de comunicaciones serie"
y enva el comando FINS). (recibe la respuesta).

3-25-2 Instrucciones de mensaje explcito


Mtodos de utilizacin de Hay dos mtodos que pueden utilizarse para enviar mensajes explcitos
comunicaciones de desde un PLC.
mensaje explcito Utilice CMND(490) para enviar un cdigo de comando FINS de 2801
hexadecimal (EXPLICIT MESSAGE SEND).
Utilice las siguientes instrucciones de mensaje explcito. (Ver nota).
Nota Estas instrucciones slo son admitidas por las CPUs de la serie CS/
CJ Ver. 2.0 posterior.

986
Instrucciones de red Seccin 3-25

Instrucciones de mensaje Las siguientes instrucciones, que se utilizan especialmente para mensajes
explcito explcitos, se denominan instrucciones de mensaje explcito.
Instruccin Nombre Contorno
EXPLT (720) EXPLICIT MES- Enva un mensaje explcito con cualquier cdigo de
SAGE SEND servicio. Nota: Funcionalmente esta instruccin es
lo mismo que enviar CMND(490) con un cdigo de
comando FINS de 2801 hexadecimal
EGATR EXPLICIT GET Enva un mensaje explcito con un cdigo de servi-
(721) ATTRIBUTE cio de 0E hexadecimal (GET ATTRIBUTE SINGLE).
ESATR EXPLICIT SET Enva un mensaje explcito con un cdigo de servi-
(721) ATTRIBUTE cio de 10 hexadecimal (SET ATTRIBUTE SINGLE).
EGATR EXPLICIT WORD Utiliza un mensaje explcito para leer datos de una
(721) READ CPU.
EGATR EXPLICIT WORD Utiliza un mensaje explcito para escribir datos en
(721) WRITE una CPU.

Caractersticas de las Las instrucciones de mensaje explcito no requieren entregar un comando


instrucciones de mensaje FINS de 2801 hexadecimal y son mucho ms sencillas de programar que
explcito CMND(490).
En el caso de las instrucciones EXPLICIT GET/SET ATTRIBUTE no es
necesario introducir el cdigo de servicio y solamente debe introducirse infor-
macin del ID de categora hacia adelante.
En el caso de las instrucciones EXPLICIT WORD READ/WRITE la direccin
de memoria de E/S de las CPUs local y remotas puede especificarse directa-
mente.
No se necesitan especificaciones de cdigos para tipos de rea ni direcciones
de canal hexadecimales. (Estas son necesarias para instrucciones
CMND(490) con cdigo de servicio 1E (lectura de datos de canal) o 1F hexa-
decimal (escritura de datos de canal)). Esto posibilita una sencilla lectura y es-
critura de datos entre CPUs utilizando comunicaciones de mensaje explcito
(como instrucciones SEND/RECV para comandos FINS).
Operacin El indicador de error de comunicaciones de mensaje explcito se utiliza para
determinar si las comunicaciones finalizan normalmente o en error.
En el caso de finalizacin con error (es decir, cuando el indicador est en ON), se
utiliza el indicador de error de puerto de comunicaciones para comandos FINS
para determinar si el mensaje explcito no fue enviado (es decir, cuando el indica-
dor est en ON) o si se ha producido un error en el mensaje explcto enviado (es
decir, cuando el indicador est en OFF).
El cdigo de finalizacin de puerto de comunicaciones contendr 0000 hexadeci-
mal despus de una finalizacin normal, un cdigo de error de mensaje explcito
despus de una finalizacin con error de comunicaciones de mensaje explcito y
un cdigo de finalizacin de mensaje FINS despus de una finalizacin con error
FINS.
Estado Indicador de error de comu- Indicador de error de Cdigo de finalizacin
nicaciones de mensaje puerto de comunicacio- de puerto de comunica-
explcito (A21300 hasta nes (A21900 hasta ciones (A203 hasta
A21307: Puerto de comuni- A21907: Puerto de comu- A210: Puerto de comu-
caciones N 0 hasta 7) nicaciones N 0 hasta 7) nicaciones N 0 hasta 7)
1) Finalizacin normal OFF OFF 0000 hexadecimal
2) Finaliza- a) Cuando no fue posi- ON ON Cdigo de finalizacin de
cin con error ble enviar el mensaje mensajes FINS
explcito
b) Cuando se ha en- OFF Cdigo de error de men-
viado el mensaje expl- saje explcito
cito pero se ha de-
vuelto una respuesta
de error explcito

987
Instrucciones de red Seccin 3-25

1) Finalizacin normal Se enva un mensaje explcito y se devuelve una respuesta normal.


El correspondiente indicador de error de comunicaciones de mensaje expl-
cito (A21300 hasta A21307: Puerto de comunicaciones N 0 hasta 7) estar
en OFF y el cdigo de respuesta de comunicaciones de red (A203 hasta
A210: Puerto de comunicaciones N 0 hasta 7) contendr el cdigo de res-
puesta normal de mensaje explcito de 0000 hexadecimal
Red DeviceNet
Bastidor del PLC

OK Enviado mensaje explcito


OK
CPU Encabezado Unidad de Mensaje explcito
FINS Mensaje explcito
bus de CPU
(p.ej.,
OK Unidad OK
Encabezado DeviceNet)
Respuesta FINS Respuesta Respuesta explcita
FINS explcita
Recibida respuesta
explcita normal Procesado normalmente

Nodo
DeviceNet
(p.ej., esclavo)

Puerto de comunicaciones 1
Indicador de habilitacin 0
Instruccin Instruccin
Instruccin de en en
mensaje explcito ejecucin ejecucin
Comunicaciones de mensaje 1
explcito
0
Indicador de error
Puerto de comunicaciones 1
Indicador de error 0

Cdigo de finalizacin de
puerto de comunicaciones Antes 0000 hexadecimal 0000 hexadecimal 0000 hexadecimal
(finalizacin normal)

2) Finalizacin con error Hay dos posibilidades de finalizacin con error, tal y como se describe en las
siguientes dos subsecciones.
a) Cuando no fue posible enviar el mensaje explcito
En este caso, el mensaje explcito no fue enviado por la red, por ejemplo, por-
que la red no estaba funcionando. En este caso, tanto el indicador de error de
comunicaciones de mensaje explcito (A21300 hasta A21307: Puerto de
comunicaciones N 0 hasta 7) como el indicador de error de puerto de comu-
nicaciones (A21900 hasta A21907: Puerto de comunicaciones N 0 hasta 7)
se pondrn en ON.
Despus de la finalizacin, el cdigo de finalizacin de puerto de comunica-
ciones (A203 hasta A210: Puerto de comunicaciones 0 hasta 7) contendr el
cdigo de error de mensaje FINS.
Red DeviceNet
Bastidor del PLC
Error FINS Mensaje explcito no enviado
OK
CPU Encabezado Unidad de
FINS Mensaje explcito
bus de CPU
(p.ej.,
Error Unidad
Encabezado Respuesta DeviceNet)
FINS Respuesta FINS explcita

La red no funciona, etc.

Respuesta de error FINS Sin respuesta explcita Nodo


DeviceNet
(p.ej., esclavo)

988
Instrucciones de red Seccin 3-25

Puerto de comunicaciones 1
Indicador de habilitacin 0
Instruccin Instruccin
Instruccin de en en
mensaje explcito ejecucin ejecucin
Comunicaciones de 1
mensaje explcito 0
Indicador de error
1
Puerto de comunicaciones
Indicador de error 0

Cdigo de finalizacin de
Antes 0000 hexadecimal Cdigo de fin FINS 0000 hexadecimal
puerto de comunicaciones

b) Cuando se ha enviado el mensaje explcito pero se ha devuelto una


respuesta de error explcito
En este caso, el mensaje explcito fue enviado pero exista un error en la
trama de comando del mensaje explcito (cdigo no compatible, tamao no
vlido, etc.). En este caso el indicador de error de comunicaciones de men-
saje explcito (A21300 hasta A21307: Puerto de comunicaciones N 0 hasta
7) se pondr en ON y el indicador de error de comunicaciones de red
(A21900 hasta A21907: Puerto de comunicaciones N 0 hasta 7) se manten-
dr en OFF.
Despus de la finalizacin, el cdigo de respuesta de comunicaciones de red
(A203 hasta A210: Puerto de comunicaciones 0 hasta 7) contendr el cdigo
de error de mensaje explcito.
Red DeviceNet
Bastidor del PLC

OK Enviado mensaje explcito


OK
CPU Encabezado Unidad de Mensaje explcito
Mensaje explcito
FINS bus de CPU
(p.ej.,
Error Unidad Error
DeviceNet)
Encabezado Respuesta Respuesta de Respuesta explcita
FINS FINS error explcito
Recibida respuesta
de error normal Error explcito

Nodo
DeviceNet
(p.ej., esclavo)

Puerto de comunicaciones 1
Indicador de habilitacin 0
Instruccin Instruccin
Instruccin de en en
mensaje explcito ejecucin ejecucin
Comunicaciones de 1
mensaje explcito
0
Indicador de error
1
Puerto de comunicaciones
Indicador de error 0

Cdigo de finalizacin de Cdigo de error


Antes 0000 hexadecimal explcito 0000 hexadecimal
puerto de comunicaciones

989
Instrucciones de red Seccin 3-25

Ejemplos de programa- Ejemplo 1: Especificacin de usuario de nmero de puerto de comunicacio-


cin de diagrama de rels nes
Puerto de comunicaciones
Indicador de habilitacin
Condicin de A20200 a (en ejecucin) se pone en ON y se mantiene en ON
ejecucin
cuando la condicin de ejecucin y el indicador
KEEP de habilitacin de puerto de comunicaciones (A20200) se pone en ON.
a (en
ejecucin) a (en ejecucin) se pone en OFF cuando d (ejecucin
d (ejecucin finalizada) finalizada) se pone en ON.

a (en ejecucin) La instruccin de mensaje explcito se ejecuta cuando a (en ejecucin)


Instruccin de se pone en ON. Est especificado el nmero de puerto 0.
mensaje
explcito

Puerto: 0 El indicador de habilitacin de puerto de comunicaciones (A20200) est en


OFF durante las comunicaciones de red y se pone en ON cuando estas fi-
nalizan (bien para finalizacin normal o con error).
d (ejecucin finalizada) se pone en ON cuando a (en ejecucin) se pone
en ON y el indicador de habilitacin de puerto de comunicaciones
Puerto de comunicaciones (A20200) se pone en ON.
Indicador de habilitacin
a (en ejecucin) A20200
d (ejecucin finalizada)

Si el indicador de error de comunicaciones de mensaje


A21300 explcito
Procesamiento despus (A21300) est en cuando la ejecucin ha finalizado, las
de finalizar comunicaciones de memoria explcita han finalizado nor-
malmente y se lleva a cabo procesamiento normal des-
comunicaciones de red
pus de realizar comunicaciones de red.
Si el indicador de error de comunicaciones de mensaje
A21300 A21900 explcito (A21300) est en ON cuando finaliza la ejecu-
Procesamiento para error de cin, se ha producido un error en las comunicaciones de
comunicaciones de red: mensaje explcito y se comprueba el indicador de error
Error explcito de puerto de comunicaciones (A21900). Si est en OFF,
se lleva a cabo procesamiento para error de comunica-
ciones de mensaje explcito asumiendo que fue enviado
A21900 un mensaje explcito y que se ha recibido una respuesta
Procesamiento para error de de mensaje explcito.
comunicaciones de red:
Si el indicador de error de comunicaciones de mensaje
Error FINS explcito (A21300) est en ON cuando finaliza la ejecu-
cin, se ha producido un error en las comunicaciones
de mensaje explcito y se comprueba el indicador de
error de puerto de comunicaciones (A21900). Si est
en ON, se lleva a cabo procesamiento para error de
comunicaciones FINS asumiendo que no fue enviado
un mensaje explcito.

990
Instrucciones de red Seccin 3-25

Ejemplo 2: Asignacin automtica de nmero de puerto de comunicaciones


Condicin de
ejecucin
KEEP
a (en ejecucin)
d (ejecucin finalizada)

a (en ejecucin) La instruccin de mensaje explcito se ejecuta cuando a (en ejecucin)


Instruccin se pone en ON. Est especificado el nmero de puerto F.
de mensaje
explcito

Puerto: F
El nmero de puerto asignado automticamente almacenado en A218
MOV (la aplicacin de nmeros de puerto de comunicaciones 0 hasta 7) se
desplaza a un canal de trabajo b (puerto) especificado de usuario.
A218
Detecta cundo el indicador de primer ciclo despus de comunicaciones de red
b (puerto) finalizadas del puerto de comunicaciones asignado automticamente
est en ON en A214, es decir, el bit correspondiente a b (puerto).
c (en espera) Detecta cundo el indicador de error de comunicaciones de
mensaje explcito del puerto de comunicaciones asignado
automticamente est en OFF en A213, es decir, el bit
a (en ejecucin) c (en espera) correspondiente a b (puerto).
TST d (ejecucin finalizada)
A214
b (puerto)
TSTN Procesamiento despus
A213 de comunicaciones de red
b (puerto)

TST TSTN Comunicaciones de red


A213 A219 procesamiento de errores: Explcito
procesamiento de errores
b (puerto) b (puerto)

"c" se pone en OFF en el ciclo


despus de finalizar la ejecucin de TST Comunicaciones de red
instruccin de comunicaciones A219 procesamiento de errores: FINS
y se detecta finalizacin de comunica- procesamiento de errores
b (puerto)
ciones o errores de ese ciclo.

Detecta cundo el indicador de error de comunicaciones de mensaje explcito


del puerto de comunicaciones asignado automticamente
est en ON en A213, es decir, el bit correspondiente a b (puerto).

3-25-3 NETWORK SEND: SEND(090)


Empleo Enva datos a un nodo de la red.

Smbolo de diagrama de
rels SEND(090)

S S: Primer canal fuente (nodo local)

D D: Primer canal de destino (nodo remoto)

C C: Primer canal de control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SEND(090)
Se ejecuta una vez en el diferencial @SEND(090)
ascendente
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

991
Instrucciones de red Seccin 3-25

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos C: Primer canal de control


Los cinco canales de control C hasta C+4 especifican el nmero de canales
que se estn transmitiendo, el destino y otras configuraciones mostradas en
la siguiente tabla.
Canal Bits 00 hasta 07 Bits 08 hasta 15
C Nmero de canales: 0001 hasta el mximo permitido1 (4 dgitos hexadecimal)
C+1 Direccin de red de destino: Bits 08 hasta 11: Nmero de puerto
00 hasta 7F (0 hasta 127)2, 4 serie3 (puerto fsico)
1 hexadecimal:Puerto 1
2 hexadecimal:Puerto 2
(no configurar 0, 3, 4.)
Bits 12 hasta 15: Siempre 0.
C+2 Direccin de Unidad de destino: Direccin de nodo de destino:
00 hasta FE5 00 hasta el mximo permitido6
C+3 N de reintentos: 00 hasta 0F Bits 08 hasta 11:
(0 hasta 15) Nmero de puerto de comunicacio-
nes (puerto lgico interno): 0 hasta 7,
Asignacin automtica: F7
Bits 12 hasta 15: Configuracin de
respuesta
0: Respuesta solicitada.
8: Sin respuesta solicitada.8
C+4 Tiempo de monitorizacin de respuesta: 0001 hasta FFFF (0,1 hasta 6553,5
segundos)
(La configuracin predeterminada de 0000 ajusta un tiempo de monitoriza-
cin de 2 segundos).

Nota 1. El nmero mximo de canales permitidos depende de la red utilizada.


Para Controller Link el rango permitido es de 0001 hasta 03DE (1 hasta
990 canales).
2. Configure la direccin de red de destino como 00 para transmitir dentro de
la red local. Cuando se montan dos o ms Unidades de bus de CPU la di-
reccin de red ser el nmero de Unidad de la Unidad con el nmero de
Unidad ms bajo.
3. Pueden utilizarse los dos mtodos siguientes para enviar datos al ordena-
dor host mediante un puerto serie con el Host Link mientras se inician las
comunicaciones desde el PLC.
a) Configure la direccin de la Unidad de destino (bits 00 hasta 07 de
C+2) como la direccin de Unidad de la CPU o de la Unidad/tarjeta de
comunicaciones serie y configure el nmero del puerto serie (bits 08
hasta 11 de C+1) como 1 para el puerto 1 o bien 2 para el puerto 2.
Direccin de Unidad Nmero de puerto Puerto
Unidad (C+2, serie (C+1, bits 08 serie
bits 00 hasta 07) hasta 11)
00 hexadecimal CPU 1 hexadecimal Puerto RS-
232C incor-
porado
2 hexadecimal Puerto de
perifricos
10 hexadecimal + Unidad de comunica- 1 hexadecimal Puerto 1
nmero de Uni- ciones serie (Unidad de 2 hexadecimal Puerto 2
dad bus de CPU)
E1 hexadecimal Tarjeta de comunicacio- 1 hexadecimal Puerto 1
nes serie (tarjeta 2 hexadecimal Puerto 2
interna) (slo serie CS)

992
Instrucciones de red Seccin 3-25

b) Configure la direccin de la Unidad de destino directamente en los bits


00 hasta 07 de C+2. En este caso configure el nmero de puerto serie
en los bits 08 hasta 11 de C+1 como 0 para especificacin directa.
Puertos de Unidad de comunicaciones serie
Puerto Direccin de unidad del Ejemplo: Nmero de Unidad = 1
puerto
Puerto 1 80 hexadecimal + 4 80 + 4 1 = 84 hexadecimal
nmero de Unidad (132 decimal)
Puerto 2 81 hexadecimal + 4 81 + 4 1 = 85 hexadecimal
nmero de Unidad (133 decimal)

Puertos de tarjeta de comunicaciones serie


Puerto Direccin de unidad del puerto
Puerto 1 E4 hexadecimal (228 decimal)
Puerto 2 E5 hexadecimal (229 decimal)

Puertos de CPU
Puerto Direccin de unidad del puerto
Perifricos FD hexadecimal (253 decimal)
RS-232C FC hexadecimal (252 decimal)

4. Cuando se especifica el puerto serie sin una tabla de rutas para la funcin
de Gateway serie (conversin a FINS Host Link), configure la direccin de
Unidad del puerto serie en el byte de direccin de la red de destino.
5. La direccin de Unidad indica la Unidad, tal y como se muestra en la si-
guiente tabla.
Unidad Configuracin de direccin de unidad
CPU 00 hexadecimal
Unidad de bus de CPU 10 hexadecimal + nmero de Unidad
Unidad de E/S especial 20 hexadecimal + nmero de Unidad
(excepto para Unidades
de E/S especiales de la
serie C200H)
Tarjeta interna (slo E1 hexadecimal
serie CS)
Ordenador 01 hexadecimal
Unidad conectada a la FE hexadecimal
red (no es necesario
especificar la Unidad)
Especificacin directa de Puertos de Unidad de comunicaciones serie
la direccin de Unidad Puerto 1: 80 hexadecimal + 4 nmero de Unidad
del puerto serie Puerto 2: 81 hexadecimal + 4 nmero de Unidad
Puertos de tarjeta de comunicaciones serie
Puerto 1: E4 hexadecimal (228 decimal)
Puerto 2: E5 hexadecimal (229 decimal)
Puertos de CPU
Puerto de perifricos: FD hexadecimal (253 decimal)
Puerto RS-232C: FC hexadecimal (252 decimal)

6. El nmero mximo de nodos depende de la red utilizada. Para Controller


Link el rango permitido es de 00 hasta 20 hexadecimal (0 hasta 32). Con-
figure el nmero de nodo de destino como FF para difundir a todos los
nodos; configrelo como 00 para transmitir en el nodo local.
7. Consulte en Asignacin automtica de puerto de comunicaciones en la
pgina 979 ms detalles sobre la utilizacin de la asignacin automtica
del nmero de puerto de comunicaciones (puerto lgico).
8. Cuando el nmero de nodo de destino se configura como FF (transmisin
de difusin) no se producir respuesta incluso si los bits 12 hasta 15 se
configuran como 0.

993
Instrucciones de red Seccin 3-25

Especificaciones del
operando rea S D C
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6139
rea de Trabajo W000 hasta W511 W000 hasta W507
rea de bit en Espera H000 hasta H511 H000 hasta H507
rea Bit Auxiliar A000 hasta A959 A000 hasta A955
rea Temporizador T0000 hasta T4095 T0000 hasta
T4091
rea Contador C0000 hasta C4095 C0000 hasta
C4091
rea DM D00000 hasta D32767 D00000 hasta
D32763
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32763
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32763
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin SEND(090) transfiere los datos comenzando por el canal S a direcciones


empezando por D del dispositivo designado a travs del bus de la CPU del
PLC o una red. El nmero de canales a transmitir se especifica en C.
Nodo local Nodo de destino

Nmero de
canales a
transmitir, n

Si el nmero de nodo de destino se configura como FF, los datos se difundi-


rn a todos los nodos de la red designada. Esto se conoce como transmisin
de difusin.
Si se requiere una respuesta (bits 12 hasta 15 de C+3 configurados como 0)
pero no se ha recibido una respuesta dentro del tiempo de monitorizacin de
respuesta, los datos se retransmitirn hasta 15 veces (reintentos configura-
dos en los bits 0 hasta 3 de C+3). No habr respuesta ni reintentos para
transmisiones de difusin.
SEND(090) puede utilizarse para transmitir datos a un puerto serie particular
del dispositivo de destino as como al dispositivo mismo.

994
Instrucciones de red Seccin 3-25

Pueden transmitirse datos a un ordenador host conectado al puerto serie del


PLC (cuando est configurado en modo Host Link) as como a un PLC u
ordenador conectado a travs de una red Controller Link o Ethernet.
Si el indicador de habilitacin de puerto de comunicaciones est en ON para el
puerto de comunicaciones especificado en C+3 cuando se ejecuta SEND(090),
el indicador de habilitacin de puerto de comunicaciones correspondiente
(puertos 00 hasta 07: A20200 hasta A20207) y el indicador de error de puerto
de comunicaciones (puerto 00 hasta 07: A21900 hasta A21907) se pondrn en
OFF y 0000 se escribir en el canal que contiene el cdigo de finalizacin
(puertos 00 hasta 07: A203 hasta A210). Se transmitirn datos al nodo de des-
tino una vez que los indicadores hayan sido configurados.

Transmisin a travs de la SEND(090) puede utilizarse para transmitir datos desde el PLC al rea de
red datos especificada en un PLC u ordenador conectado a una red Controller
Link o Ethernet link.

Red
Datos

Transmisin a travs de Cuando el puerto serie incorporado de una CPU, una tarjeta de comunicacio-
Host Link nes serie (slo serie CS) o una Unidad de comunicaciones serie est en
modo Host Link y conectado uno a uno con un ordenador host, puede ejecu-
tarse SEND(090) para transmitir datos del PLC al ordenador host la siguiente
vez que el PLC tenga derecho a transmitir. Tambin es posible transmitir a
otros ordenadores host conectados a otro PLC en otro lugar de la red.

Ordenador
host

Host Link
Datos

Puerto serie

Si se enva SEND(090) al puerto serie de la CPU, una tarjeta de comunicaciones


serie (slo serie CS) o una Unidad de comunicaciones serie, se enva un
comando desde el puerto serie al ordenador host. El comando es un mensaje
FINS incluido entre una cabecera y una terminacin Host Link. El comando FINS
es un comando MEMORY AREA WRITE (cdigo de comando 0102) y el cdigo
de la cabecera Host Link es 0F hexadecimal.
Debe crearse un programa en el ordenador host para procesar el comando reci-
bido (el comando FINS incluido entre la cabecera y la terminacin Host Link).
Si el puerto serie de destino est en el PLC local, configure la direccin de red
como 00 (red local) en C+1, configure la direccin de nodo como 00 (PLC local)
en C+2 y configure la direccin de Unidad como 00 (CPU), E1 (tarjeta interna
(slo serie CS)) o nmero de Unidad + 10 hexadecimal (Unidad de puerto serie).
Envo de datos al PLC Host Link esclavo conectado mediante Gateway serie
La funcin de Gateway serie puede utilizarse para enviar datos a un PLC conec-
tado como esclavo Host Link a una tarjeta o Unidad de comunicaciones serie. En
este caso, la direccin de nodo de destino debe configurarse como el nmero de
Unidad Host Link + 1.

995
Instrucciones de red Seccin 3-25

SEND

PLC
Configure la direccin del nodo de destino como
el nmero de Unidad Host Link + 1 = S+1.

Datos
Cable serie

PLC
Host Link
Nmero de la Unidad Host Link: S

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el nmero de puerto serie especificado en C+1 no
error est dentro del rango de 00 hasta 04.
ON si el indicador de habilitacin de puerto de comunicacio-
nes est en OFF para el nmero de puerto de comunicacio-
nes especificado en C+3.
OFF en el resto de los casos.

La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre Direccin Operacin
Indicador de habilita- A20200 Estos indicadores se ponen en ON para indicar que
cin de puerto de hasta pueden ejecutarse instrucciones de red, incluida
comunicaciones A20207 PMCR(260), para los puertos correspondientes (00
hasta 07).
Un indicador se pone en OFF cuando se est eje-
cutando una instruccin de red para el puerto
correspondiente y en ON cuando se completa la
instruccin.
Indicador de error del A21900 Estos indicadores se ponen en ON para indicar que
puerto de comunica- hasta se ha producido un error en los puertos correspon-
ciones A21907 dientes (00 hasta 07) durante la ejecucin de una
instruccin de red.
El estado del indicador se retiene hasta que se eje-
cuta la siguiente instruccin de red. El indicador se
pondr en OFF cuando se ejecute la siguiente ins-
truccin incluso si se ha producido un error previa-
mente.
Cdigos de finaliza- A203 hasta Estos canales contienen los cdigos de finalizacin
cin de puerto de A210 para los puertos correspondientes (00 hasta 07) a
comunicaciones continuacin de la ejecucin de una instruccin de
red.
El canal correspondiente contendr 0000 mientras
se ejecuta la instruccin de red y se escribir el
cdigo de finalizacin cuando se complete la ins-
truccin. Estos canales se borran cuando se eje-
cuta una instruccin.

Precauciones Si el indicador de habilitacin de puerto de comunicaciones est en OFF para el


nmero de puerto especificado en C+3, la instruccin se tratar como NOP(000)
y no se ejecutar. En este caso el indicador de error se pondr en ON.
Cuando se especifica una direccin del banco actual del rea EM para D, los
datos transmitidos se escribirn en el banco de EM actual del nodo de destino.
Cuando se transmiten datos fuera de la red local, el usuario debe registrar
tablas de rutas en los PLC (CPUs) de cada red. (Las tablas de rutas indican
las rutas a otras redes en las que estn conectados nodos de destino).

996
Instrucciones de red Seccin 3-25

Consulte en los cdigos de respuesta para comandos FINS en el Manual de


referencia de los comandos de comunicaciones de la serie CS/CJ (W342)
ms detalles sobre los cdigos de finalizacin para comunicaciones de red.
Slo puede ejecutarse una instruccin de red para un puerto de comunicacio-
nes cada vez. Para asegurarse de que SEND(090) no se ejecuta mientras un
puerto est ocupado, programe el indicador de habilitacin de puerto de
comunicaciones del puerto (A20200 hasta A20207) como una condicin de
normalmente abierto.
Los nmeros de puerto de comunicaciones 00 hasta 07 son compartidos por
las instrucciones de red y PMCR(260), as que SEND(090) no puede ejecu-
tarse simultneamente con PMCR(260) si las instrucciones estn utilizando
el mismo nmero de puerto.
El ruido y otros factores pueden causar que la transmisin o la respuesta se
corrompa o pierda, as que recomendamos configurar el nmero de reinten-
tos como un valor que no sea cero, lo que causar que SEND(090) se vuelva
a ejecutar si no se recibe la respuesta dentro del tiempo de monitorizacin de
respuesta.

Ejemplo 1 Cuando la condicin de entrada y A20200 (indicador de habilitacin de puerto


de comunicaciones para el puerto 0) estn en ON en el siguiente ejemplo, los
diez canales desde CIO 100 hasta CIO 109 se transmiten al ordenador host
conectado al puerto 1 de la Unidad de comunicaciones serie con direccin de
Unidad 10 (hexadecimal) en el nmero de nodo 3 de la red 0.
Condicin
de entrada A20200
@SEND
0100
C D00200 0 0 0 A Nmero de canales a enviar: 10 canales
0000
C+1 D00201 0 1 0 0 Transmitir a la red 0 y puerto 1 de la tarjeta de comunicaciones serie.
D00200
C+2 D00202 0 0 1 0 Nmero de nodo 0, direccin de unidad 10
C+3 D00203 0 0 0 0 Respuesta solicitada, nmero de puerto 0, sin reintentos
Tiempo de monitorizacin de respuesta: 2 segundos
C+4 D00204 0 0 0 0 (0000: valor predeterminado)

Es necesario crear un programa en el ordenador host para recibir los datos y


enviar la respuesta.

Ejemplo 2 Cuando CIO 000000 y A20207 (indicador de habilitacin de puerto de comu-


nicaciones para el puerto 07) estn en ON en el siguiente ejemplo, los diez
canales desde D00100 hasta D00109 se transmiten al nmero de nodo 3 de
la red local, donde se escriben en los diez canales desde D00200 hasta
D00209. Los datos se retransmitirn hasta 3 veces si no se recibe una res-
puesta en un plazo de diez segundos.

0 Nmero de canales a enviar: 10 canales


0 Transmitir a la red local y al dispositivo mismo
0 Nmero de nodo 3, direccin de Unidad 00 (CPU)
0 Respuesta solicitada, nmero de puerto 7, 3 reintentos
Tiempo de monitorizacin de respuesta:
6 0064 hexadecimal (10 segundos)

3-25-4 NETWORK RECEIVE: RECV(098)


Empleo Solicita la transmisin de datos desde un nodo de la red y recibe los datos.

997
Instrucciones de red Seccin 3-25

Smbolo de diagrama de
rels RECV(098)

S S: Primer canal fuente (nodo remoto)

D D: Primer canal de destino (nodo local)

C C: Primer canal de control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RECV(098)
Se ejecuta una vez en el diferencial ascendente @RECV(098)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos C: Primer canal de control


Los cinco canales de control C hasta C+4 especifican el nmero de canales a
recibir, la fuente de la transmisin y otras configuraciones mostradas en la
siguiente tabla.
Canal Bits 00 hasta 07 Bits 08 hasta 15
C Nmero de canales: 0001 hasta el mximo permitido1 (4 dgitos hexadecimal)
C+1 Direccin de red de origen: Bits 08 hasta 11: Nmero de puerto
00 hasta 7F (0 hasta 127)2, 4 serie (puerto fsico)
1 hexadecimal:Puerto 1
2 hexadecimal:Puerto 2
(no configurar 0, 3, 4.)
Bits 12 hasta 15: Siempre 0.
C+2 Direccin de Unidad de origen 5 Direccin de nodo de origen:
00 hasta el mximo permitido6
C+3 N de reintentos: 00 hasta 0F (0 N de puerto: 00 hasta 07
hasta 15) (F: Asignacin automtica)7
La respuesta est fija como "solicitada".
C+4 Tiempo de monitorizacin de respuesta: 0001 hasta FFFF (0,1 hasta 6553,5
segundos)
(La configuracin predeterminada de 0000 ajusta un tiempo de monitoriza-
cin de 2 segundos).

Nota 1. El nmero mximo de canales permitidos depende de la red utilizada.


Para Controller Link el rango permitido es de 0001 hasta 03DE (1 hasta
990 canales).
2. Configure la direccin de red de origen como 00 para especificar un origen
dentro de la red local. Cuando se montan dos o ms Unidades de bus de
CPU la direccin de red ser el nmero de Unidad de la Unidad con el n-
mero de Unidad ms bajo.
3. Pueden utilizarse los dos mtodos siguientes para recibir datos desde un
ordenador host mediante un puerto serie con el Host Link mientras se ini-
cian las comunicaciones desde el PLC.

998
Instrucciones de red Seccin 3-25

a) Configure la direccin de la Unidad de origen (bits 00 hasta 07 de


C+2) como la direccin de Unidad de la CPU o de la Unidad/tarjeta de
comunicaciones serie y configure el nmero del puerto serie (bits 08
hasta 11 de C+1) como 1 para el puerto 1 o bien 2 para el puerto 2.
Direccin de Unidad Nmero de puerto Puerto
Unidad serie serie
(C+2, bits 00 (C+1, bits 08 hasta
hasta 07) 11)
00 hexadeci- CPU 1 hexadecimal Puerto RS-
mal 232C incor-
porado
2 hexadecimal Puerto de
perifricos
10 hexadeci- Unidad de comunicacio- 1 hexadecimal Puerto 1
mal + nmero nes serie (Unidad de 2 hexadecimal Puerto 2
de Unidad bus de CPU)
E1 hexadeci- Tarjeta de comunicacio- 1 hexadecimal Puerto 1
mal nes serie (tarjeta 2 hexadecimal Puerto 2
interna) (slo serie CS)

b) Configure la direccin de la Unidad de origen directamente en los bits


00 hasta 07 de C+2. En este caso configure el nmero de puerto serie
en los bits 08 hasta 11 de C+1 como 0 para especificacin directa.
Puertos de Unidad de comunicaciones serie
Puerto Direccin de unidad Ejemplo: Nmero de Unidad = 1
del puerto
Puerto 1 80 hexadecimal + 80 + 4 1 = 84 hexadecimal (132
4 nmero de Unidad decimal)
Puerto 2 81 hexadecimal + 81 + 4 1 = 85 hexadecimal (133
4 nmero de Unidad decimal)

Puertos de tarjeta de comunicaciones serie


Puerto Direccin de unidad del puerto
Puerto 1 E4 hexadecimal (228 decimal)
Puerto 2 E5 hexadecimal (229 decimal)

Puertos de CPU
Puerto Direccin de unidad del puerto
Perifricos FD hexadecimal (253 decimal)
RS-232C FC hexadecimal (252 decimal)

4. Cuando se especifica el puerto serie sin una tabla de rutas para la funcin
de Gateway serie (conversin a FINS Host Link), configure la direccin de
Unidad del puerto serie en el byte de direccin de la red de origen.
5. La direccin de Unidad indica la Unidad, tal y como se muestra en la si-
guiente tabla.
Unidad Configuracin de direccin de unidad
CPU 00 hexadecimal
Unidad de bus de CPU 10 hexadecimal + nmero de Unidad
Unidad de E/S especial (excepto 20 hexadecimal + nmero de Unidad
para Unidades de E/S especiales
de la serie C200H)
Tarjeta interna (slo serie CS) E1 hexadecimal
Ordenador 01 hexadecimal

999
Instrucciones de red Seccin 3-25

Unidad Configuracin de direccin de unidad


Unidad conectada a la red (no es FE hexadecimal
necesario especificar la Unidad)
Especificacin directa de la direc- Puertos de Unidad de comunicaciones serie
cin de Unidad del puerto serie Puerto 1: 80 hexadecimal + 4 nmero
de Unidad
Puerto 2: 81 hexadecimal + 4 nmero
de Unidad
Puertos de tarjeta de comunicaciones serie
Puerto 1: E4 hexadecimal (228 decimal)
Puerto 2: E5 hexadecimal (229 decimal)
Puertos de CPU
Puerto de perifricos: FD hexadecimal
(253 decimal)
Puerto RS-232C: FC hexadecimal (252
decimal)

6. El nmero mximo de nodos depende de la red utilizada. Para Controller Link


el rango permitido es de 00 hasta 20 hexadecimal (0 hasta 32). Configure el
nmero de nodo de origen como 00 para transmitir dentro del nodo local.
7. Consulte en Asignacin automtica de puerto de comunicaciones en la
pgina 979 ms detalles sobre la utilizacin de la asignacin automtica del
nmero de puerto de comunicaciones (puerto lgico).

Especificaciones del
operando rea S D C
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6139
rea de Trabajo W000 hasta W511 W000 hasta
W507
rea de bit en Espera H000 hasta H511 H000 hasta H507
rea Bit Auxiliar A000 hasta A447 A448 hasta A959 A000 hasta A443
A448 hasta A959 A448 hasta A955
rea Temporizador T0000 hasta T4095 T0000 hasta
T4091
rea Contador C0000 hasta C4095 C0000 hasta
C4091
rea DM D00000 hasta D32767 D00000 hasta
D32763
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32763
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32763
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

1000
Instrucciones de red Seccin 3-25

Descripcin RECV(098) solicita que el nmero de canales especificado en C empezando


por el canal S se transfiera desde el dispositivo designado al PLC local. Los
datos se reciben a travs del bus de CPU del PLC o por la red, y se escriben
en el rea de datos del PLC empezando por D.
Nodo local Nodo de origen (nodo remoto)

Nmero de
canales a recibir

Se necesita una respuesta con RECV(098) porque la respuesta contiene los


datos de recepcin. Si no se recibe respuesta dentro del tiempo de monitori-
zacin de respuesta configurado en C+4, la solicitud de transferencia de
datos se retransmitir hasta 15 veces (reintentos configurados en los bits 0
hasta 3 de C+3).
RECV(098) puede utilizarse para solicitar la transmisin de datos desde un
puerto serie particular del dispositivo de origen as como del dispositivo mismo.
Pueden recibirse datos desde un ordenador host conectado al puerto serie
del PLC (cuando est configurado en modo Host Link) as como desde un
PLC u ordenador conectado a travs de una red Controller Link o Ethernet.
Si el indicador de habilitacin de puerto de comunicaciones est en ON para el
puerto de comunicaciones especificado en C+3 cuando se ejecuta SEND(090),
el indicador de habilitacin de puerto de comunicaciones correspondiente (puer-
tos 00 hasta 07: A20200 hasta A20207) y el indicador de error de puerto de
comunicaciones (puerto 00 hasta 07: A21900 hasta A21907) se pondrn en OFF
y 0000 se escribir en el canal que contiene el cdigo de finalizacin (puertos 00
hasta 07: A203 hasta A210). Se recibirn datos desde el nodo de destino una
vez que los indicadores hayan sido configurados.

Transmisin a travs de la RECV(098) puede utilizarse para recibir datos transmitidos en el rea especi-
red ficada de un PLC u ordenador conectado por una red Controller Link o Ether-
net link, y para escribir datos en el rea especificada del PLC local.

PLC PLC

Red
Datos

Transmisin a travs de Cuando el puerto serie incorporado de una CPU, una tarjeta de comunicacio-
Host Link nes serie (slo serie CS) o una Unidad de comunicaciones serie est en
modo Host Link y conectado uno a uno con un ordenador host, puede ejecu-
tarse RECV(098) para recibir datos del ordenador host la siguiente vez que el
PLC tenga derecho a transmitir comandos. Tambin es posible recibir datos
desde otros ordenadores host conectados a otro PLC en otro lugar de la red.

Ordenador host

PLC

Host Link
Datos

Puerto serie

1001
Instrucciones de red Seccin 3-25

Si se ejecuta RECV(098) para el puerto serie de la CPU, una tarjeta de comu-


nicaciones serie (slo serie CS) o una Unidad de comunicaciones serie, se
enva un comando desde el puerto serie al ordenador host. El comando es un
mensaje FINS incluido entre una cabecera y una terminacin Host Link. El
comando FINS es un comando MEMORY AREA READ (cdigo de comando
0101) y el cdigo de la cabecera Host Link es 0F hexadecimal.
Debe crearse un programa en el ordenador host para procesar el comando
enviado (el comando FINS incluido entre la cabecera y la terminacin Host Link).
Si el puerto serie de destino est en el PLC local, configure la direccin de
red como 00 (red local) en C+1, configure la direccin de nodo como 00 (PLC
local) en C+2 y configure la direccin de Unidad como 00 (CPU), E1 (tarjeta
interna (slo serie CS)) o nmero de Unidad + 10 hexadecimal (Unidad de
puerto serie).
Recepcin de datos desde un PLC Host Link esclavo conectado
mediante Gateway serie
La funcin de Gateway serie puede utilizarse para recibir datos desde un PLC
conectado como esclavo Host Link a una tarjeta o Unidad de comunicaciones
serie. En este caso, la direccin de nodo de origen debe configurarse como el
nmero de Unidad Host Link + 1.

RECV

PLC
Configure la direccin del nodo de origen como
el nmero de Unidad Host Link + 1 = S+1.

Datos
Cable serie

PLC
Host Link
Nmero de la Unidad Host Link: S

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el nmero de puerto serie especificado en C+1 no
error est dentro del rango de 00 hasta 04.
ON si el indicador de habilitacin de puerto de comunica-
ciones est en OFF para el nmero de puerto de comuni-
caciones especificado en C+3.
OFF en el resto de los casos.

La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre Direccin Operacin
Indicador de A20200 Estos indicadores se ponen en ON para indicar que
habilitacin de hasta pueden ejecutarse instrucciones de red, incluida PMCR
puerto de comu- A20207 (260), para los puertos correspondientes (00 hasta 07).
nicaciones Un indicador se pone en OFF cuando se est ejecu-
tando una instruccin de red para el puerto correspon-
diente y en ON cuando se completa la instruccin.

1002
Instrucciones de red Seccin 3-25

Nombre Direccin Operacin


Indicador de error A21900 Estos indicadores se ponen en ON para indicar que se
del puerto de hasta ha producido un error en los puertos correspondientes
comunicaciones A21907 (00 hasta 07) durante la ejecucin de una instruccin de
red.
El estado del indicador se retiene hasta que se ejecuta
la siguiente instruccin de red. El indicador se pondr
en OFF cuando se ejecute la siguiente instruccin
incluso si se ha producido un error previamente.
Cdigos de finali- A203 Estos canales contienen los cdigos de finalizacin
zacin de puerto hasta para los puertos correspondientes (00 hasta 07) a conti-
de comunicacio- A210 nuacin de la ejecucin de una instruccin de red.
nes El canal correspondiente contendr 0000 mientras se
ejecuta la instruccin de red y se escribir el cdigo de
finalizacin cuando se complete la instruccin. Estos
canales se borran cuando comienza la ejecucin del
programa.

Precauciones Si el indicador de habilitacin de puerto de comunicaciones est en OFF para el


nmero de puerto especificado en C+3, la instruccin se tratar como NOP(000)
y no se ejecutar. En este caso el indicador de error se pondr en ON.
Cuando se especifica una direccin del banco actual del rea EM para D, los
datos transmitidos se escribirn en el banco de EM actual del nodo de destino.
Cuando se transmiten datos fuera de la red local, el usuario debe registrar tablas
de rutas en los PLC (CPUs) de cada red. (Las tablas de rutas indican las rutas a
otras redes en las que estn conectados nodos de destino).
Consulte en los cdigos de respuesta para comandos FINS en el Manual de refe-
rencia de los comandos de comunicaciones de la serie CS/CJ (W342) ms deta-
lles sobre los cdigos de finalizacin para comunicaciones de red.
Slo puede ejecutarse una instruccin de red para un puerto de comunicaciones
cada vez. Para asegurarse de que RECV(098) no se ejecuta mientras un puerto
est ocupado, programe el indicador de habilitacin de puerto de comunicacio-
nes del puerto (A20200 hasta A20207) como una condicin de normalmente
abierto.
Los nmeros de puerto de comunicaciones 00 hasta 07 son compartidos por las
instrucciones de red y PMCR(260), as que RECV(098) no puede ejecutarse
simultneamente con PMCR(260) si las instrucciones estn utilizando el mismo
nmero de puerto.
El ruido y otros factores pueden causar que la transmisin o la respuesta se
corrompa o pierda, as que recomendamos configurar el nmero de reintentos
como un valor que no sea cero, lo que causar que RECV(098) se vuelva a eje-
cutar si no se recibe la respuesta dentro del tiempo de monitorizacin de res-
puesta.

3-25-5 DELIVER COMMAND: CMND(490)


Empleo Enva un comando FINS y recibe la respuesta. Consulte el Manual de refe-
rencia de los comandos de comunicaciones de la serie CS/CJ para obtener
informacin ms detallada sobre los comandos FINS.

Smbolo de diagrama de
rels CMND(490)

S S: Primer canal de comando

D D: Primer canal de respuesta


C C: Primer canal de control

1003
Instrucciones de red Seccin 3-25

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CMND(490)
Se ejecuta una vez en el diferencial ascendente @CMND(490)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos C: Primer canal de control


Los seis canales de control C hasta C+5 especifican el nmero de bytes de
datos de comando y datos de respuesta, el destino y otras configuraciones
mostradas en la siguiente tabla.
Canal Bits 00 hasta 07 Bits 08 hasta 15
C Bytes de datos de comando: 0002 hasta el mximo permitido1 (4 dgitos hexade-
cimal)
C+1 Bytes de datos de respuesta: 0000 hasta el mximo permitido1 hasta 3 (4 dgitos
hexadecimal)
C+2 Direccin de red de destino: Bits 08 hasta 11: Nmero de puerto serie
00 hasta 074, 6 (puerto fsico)
1 hexadecimal:Puerto 1
2 hexadecimal:Puerto 2
(no configurar 0, 3, 4.)
Bits 12 hasta 15: Siempre 0.
C+3 Direccin de Unidad de destino: Nmero de nodo de destino:
00 hasta FE5, 7, 9 00 hasta el mximo permitido8
C+4 N de reintentos: 00 hasta 0F Bits 08 hasta 11:
(0 hasta 15) Nmero de puerto (puerto lgico interno):
0 hasta 7
(F: Asignacin automtica)10
Bits 12 hasta 15: Configuracin de res-
puesta
0: Respuesta solicitada.
8: Sin respuesta solicitada.11
C+5 Tiempo de monitorizacin de respuesta: 0001 hasta FFFF (0,1 hasta 6553,5
segundos)
(La configuracin predeterminada de 0000 ajusta un tiempo de monitorizacin
de 2 segundos).

Nota 1. El nmero de bytes de datos de comando de C es desde 0002 hasta la longi-


tud de datos mxima en hexadecimal. Por ejemplo, el nmero de bytes sera
0002 hasta 07C6 hexadecimal (2 hasta 1.990 bytes) para sistemas Controller
Link. El nmero de bytes para la CPU local es 07C6 hexadecimal (1.990
bytes). El nmero de bytes de datos de comando depende de la red.
2. El nmero de bytes de datos de respuesta de C+1 es desde 0000 hasta la
longitud de datos mxima en hexadecimal. Por ejemplo, el nmero de bytes
sera 0000 hasta 07C6 hexadecimal (0 hasta 1.990 bytes) para sistemas Con-
troller Link. El nmero de bytes para la CPU local es 07C6 hexadecimal (1.990
bytes). El nmero de bytes de datos de respuesta depende de la red.
3. Consulte en el manual de operacin de la red especfica las longitudes de da-
tos mximas para los datos de comando y los datos de respuesta. Para cual-
quier comando FINS que pase por varias redes, las longitudes de datos
mximas para los datos de comando y los datos de respuesta son determi-
nadas por la red con las longitudes de datos mximas ms pequeas.
4. Configure la direccin de red de destino como 00 para transmitir dentro de
la red local. Cuando se montan dos o ms Unidades de bus de CPU la di-

1004
Instrucciones de red Seccin 3-25

reccin de red ser el nmero de Unidad de la Unidad con el nmero de


Unidad ms bajo.
5. Pueden utilizarse los siguientes dos mtodos para enviar un comando FINS
a un ordenador host a travs de un puerto serie con Host Link mientras se ini-
cian comunicaciones con el PLC o la funcin de Gateway serie (conversin a
CompoWay/F, Modbus-RTU o Modbus-ASCII).
a) Configure la direccin de la Unidad de destino (bits 00 hasta 07 de C+3)
como la direccin de Unidad de la CPU o de la Unidad/tarjeta de comu-
nicaciones serie y configure el nmero del puerto serie (bits 08 hasta 11
de C+2) como 1 para el puerto 1 o bien 2 para el puerto 2.
Direccin de Unidad Nmero de puerto Puerto
Unidad (C+3, serie (C+2, bits 08 serie
bits 00 hasta 07) hasta 11)
00 hexadecimal CPU 1 hexadecimal Puerto RS-
232C incor-
porado
2 hexadecimal Puerto de
perifricos
10 hexadecimal Unidad de comunicacio- 1 hexadecimal Puerto 1
+ nmero de Uni- nes serie (Unidad de 2 hexadecimal Puerto 2
dad bus de CPU)
E1 hexadecimal Tarjeta de comunicacio- 1 hexadecimal Puerto 1
nes serie (tarjeta 2 hexadecimal Puerto 2
interna) (slo serie CS)

b) Configure la direccin de la Unidad de destino directamente en los bits


00 hasta 07 de C+3. En este caso configure el nmero de puerto serie
en los bits 08 hasta 11 de C+2 como 0 para especificacin directa.
Puertos de Unidad de comunicaciones serie
Puerto Direccin de unidad del Ejemplo: Nmero de Unidad = 1
puerto
Puerto 1 80 hexadecimal + 4 80 + 4 1 = 84 hexadecimal
nmero de Unidad (132 decimal)
Puerto 2 81 hexadecimal + 4 81 + 4 1 = 85 hexadecimal
nmero de Unidad (133 decimal)

Puertos de tarjeta de comunicaciones serie


Puerto Direccin de unidad del puerto
Puerto 1 E4 hexadecimal (228 decimal)
Puerto 2 E5 hexadecimal (229 decimal)

Puertos de CPU
Puerto Direccin de unidad del puerto
Perifricos FD hexadecimal (253 decimal)
RS-232C FC hexadecimal (252 decimal)

6. Cuando se especifica el puerto serie sin una tabla de rutas para la funcin
de Gateway serie (conversin a FINS Host Link), configure la direccin de
Unidad del puerto serie en el byte de direccin de la red de destino.
7. La direccin de Unidad indica la Unidad, tal y como se muestra en la si-
guiente tabla.
Unidad Configuracin de direccin de unidad
CPU 00 hexadecimal
Unidad de bus de CPU 10 hexadecimal + nmero de Unidad

1005
Instrucciones de red Seccin 3-25

Unidad Configuracin de direccin de unidad


Unidad de E/S especial (excepto 20 hexadecimal + nmero de Unidad
para Unidades de E/S especiales
de la serie C200H)
Tarjeta interna (slo serie CS) E1 hexadecimal
Ordenador 01 hexadecimal
Unidad conectada a la red (no es FE hexadecimal
necesario especificar la Unidad)
Especificacin directa de la direc- Puertos de Unidad de comunicaciones serie
cin de Unidad del puerto serie Puerto 1: 80 hexadecimal + 4 nmero
de Unidad
Puerto 2: 81 hexadecimal + 4 nmero
de Unidad
Puertos de tarjeta de comunicaciones serie
Puerto 1: E4 hexadecimal (228 decimal)
Puerto 2: E5 hexadecimal (229 decimal)
Puertos de CPU
Puerto de perifricos: FD hexadecimal
(253 decimal)
Puerto RS-232C: FC hexadecimal (252
decimal)

8. El nmero mximo de nodos depende de la red utilizada. Para Controller


Link el rango permitido es de 00 hasta 20 hexadecimal (0 hasta 32). Con-
figure el nmero de nodo de destino como FF para difundir a todos los
nodos; configrelo como 00 para transmitir en el nodo local.
9. Cuando se especifique el puerto serie en en la funcin de Gateway serie
(conversin a FINS Host Link), configure la direccin de la Unidad de des-
tino como el nmero de Unidad Host Link del PLC de destino + 1 (rango
de configuracin: 1 hasta 32).
10. Consulte en Asignacin automtica de puerto de comunicaciones en la
pgina 979 ms detalles sobre la utilizacin de la asignacin automtica
del nmero de puerto de comunicaciones (puerto lgico).
11. Cuando el nmero de nodo de destino se configura como FF (transmisin
de difusin) no se producir respuesta incluso si los bits 12 hasta 15 se
configuran como 0.

1006
Instrucciones de red Seccin 3-25

rea S C D
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6138
rea de Trabajo W000 hasta W511 W000 hasta
W506
rea de bit en Espera H000 hasta H511 H000 hasta H506
rea Bit Auxiliar A000 hasta A447 A448 hasta A959 A000 hasta A442
A448 hasta A959 A448 hasta A954
rea Temporizador T0000 hasta T4095 T0000 hasta
T4090
rea Contador C0000 hasta C4095 C0000 hasta
C4090
rea DM D00000 hasta D32767 D00000 hasta
D32762
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32762
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32763
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin CMND(490) transfiere el nmero especificado de bytes de datos de comando


FINS empezando por el canal S al dispositivo designado a travs del bus de
la CPU del PLC o a travs de una red. La respuesta se almacena en la
memoria empezando por el canal D.
Nodo local Nodo de destino

Comando
Datos de
comando Interpretar
(n bytes)

Respuesta

Datos de Ejecutar
respuesta
(m bytes)

CMND(490) puede utilizarse para transmitir datos de comando a un puerto


serie particular del dispositivo de destino as como al dispositivo mismo.
CMND(490) opera de igual forma que SEND(090) si el cdigo de comando

1007
Instrucciones de red Seccin 3-25

FINS es 0102 (MEMORY AREA WRITE) y como RECV(098) si el cdigo es


0101 (MEMORY AREA READ).
La CPU que ejecuta CMND(490) puede enviarse un comando FINS a s misma
(excepto en el caso de las CPUs CS1 de la serie CS anteriores a V1@). Use las
siguientes configuraciones de datos de control para conseguirlo.
Direccin de red de destino (bits 00 hasta 07 de C+2): 00 hexadecimal
(red local)
N de puerto serie (bits 08 hasta 11 de C+2): 0 hexadecimal (no utilizado)
Direccin de Unidad de destino (bits 00 hasta 07 de C+3): 00 hexadeci-
mal (CPU)
Direccin de nodo de destino (bits 08 hasta 15 de C+3): 00 hexadecimal
(nodo local)
Nmero de reintentos (bits 00 hasta 03 de C+4): 0 hexadecimal (esta
configuracin no es vlida; configrelo como 0)
Tiempo de monitorizacin de respuesta: (bits 00 hasta 15 de C+5): 0000
hasta FFFF hexadecimal (pero 0000 especificar 6553,5 s, y no 2 s como
es normal)
Si el nmero de nodo de destino se configura como FF, los datos de comando
se difundirn a todos los nodos de la red designada. Esto se conoce como
transmisin de difusin.
Si se requiere una respuesta (bits 12 hasta 15 de C+4 configurados como 0)
pero no se ha recibido una respuesta dentro del tiempo de monitorizacin de
respuesta, los datos de comando se retransmitirn hasta 15 veces (reintentos
configurados en los bits 0 hasta 3 de C+3). No habr respuesta ni reintentos
para transmisiones de difusin. En el caso de las instrucciones que no
requieren respuesta, configure la respuesta como "no requerida".
Se producir un error si la cantidad de datos de respuesta excede el nmero
de bytes de datos de respuesta configurado en C+1.
Los datos de comando FINS pueden transmitirse a un ordenador host conec-
tado a un puerto serie de un PLC (configurado en el modo Host Link) as
como a un PLC (CPU, tarjeta interna (slo serie CS) o Unidad de bus de
CPU) u ordenador conectado a travs de una red Controller Link o Ethernet.
Si el indicador de habilitacin de puerto de comunicaciones est en ON para
el puerto de comunicaciones especificado en C+3 cuando se ejecuta
CMND(490), el indicador de habilitacin de puerto de comunicaciones corres-
pondiente (puertos 00 hasta 07: A20200 hasta A20207) y el indicador de
error de puerto de comunicaciones (puerto 00 hasta 07: A21900 hasta
A21907) se pondrn en OFF y 0000 se escribir en el canal que contiene el
cdigo de finalizacin (puertos 00 hasta 07: A203 hasta A210). Se transmiti-
rn datos de comando al nodo o nodos de destino una vez que los indicado-
res hayan sido configurados.

Transmisin a travs de la CMND(490) puede utilizarse para transmitir cualquier comando FINS a un
red ordenador personal o PLC (CPU, tarjeta interna (slo serie CS) o Unidad de
bus de CPU) conectado a una red Controller Link o Ethernet link.

PLC PLC

Red

Comando FINS

1008
Instrucciones de red Seccin 3-25

Transmisin a travs de Cuando el puerto serie incorporado de una CPU, una tarjeta de comunicaciones
Host Link serie (slo serie CS) o una Unidad de comunicaciones est en modo Host Link y
conectado uno a uno con un ordenador host, puede ejecutarse CMND(490) para
transmitir cualquier comando FINS del PLC al ordenador host la siguiente vez
que el PLC tenga derecho a transmitir. Tambin es posible transmitir a otros orde-
nadores host conectados a otro PLC en otro lugar de la red.

Ordenador host

PLC

Host Link

Comando FINS

CMND(490) puede ejecutarse para cualquier puerto de una CPU, tarjeta de


comunicaciones serie (slo serie CS), o Unidad de comunicaciones serie
para enviar un comando al ordenador host conectado. (Especifique el puerto
serie como 1 hexadecimal o bien 2 hexadecimal en los bits 08 hasta 11 de
C+2.) El comando es un mensaje FINS incluido entre una cabecera y una ter-
minacin Host Link. Puede enviarse cualquier comando FINS; el cdigo de
cabecera de Host Link es 0F hexadecimal.
Debe crearse un programa en el ordenador host para procesar el comando reci-
bido (el comando FINS incluido entre la cabecera y la terminacin Host Link).
Si el puerto serie de destino est en el PLC local, configure la direccin de
red como 00 (red local) en C+2, configure la direccin de nodo como 00 (PLC
local) en C+3 y configure la direccin de Unidad como 00 (CPU), E1 (tarjeta
interna (slo serie CS)) o nmero de Unidad + 10 hexadecimal (Unidad de
puerto serie).
Comunicaciones con Gateway serie con un componente o Host Link
esclavo
Es posible enviar comandos FINS (o enviar/recibir datos) a un componente o
Host Link esclavo conectado al PLC a travs de su puerto serie con la funcin
de Gateway serie.
Envo a un componente
(Conversin a CompoWay/F, Modbus-RTU o Modbus-ASCII)
La funcin Gateway serie puede convertir los siguientes comandos FINS
a comandos CompoWay/F, Modbus-RTU o Modbus-ASCII cuando se en-
va el comando FINS a un puerto serie de la tarjeta de comunicaciones se-
rie o de la Unidad o a uno de los puertos serie de la CPU (perifricos o
RS-232C).
Conversin a comando CompoWay/F: 2803 hexadecimal
Conversin a comando Modbus-RTU: 2804 hexadecimal (Ver nota.)
Conversin a comando Modbus-ASCII: 2805 hexadecimal (Ver nota.)
Nota Los comandos Modbus-RTU y Modbus-ASCII no pueden enviarse a
los puertos serie de la CPU.

1009
Instrucciones de red Seccin 3-25

CMND

PLC

Modbus RTU

Cable serie

Dispositivo esclavo Modbus-RTU

Envo a un PLC operando como esclavo Host Link


La funcin de Gateway serie puede utilizarse para enviar cualquier coman-
do FINS a un PLC conectado como esclavo Host Link a travs del puerto
serie de una tarjeta o Unidad de comunicaciones serie. En este caso, la
direccin de nodo de destino debe configurarse como el nmero de Uni-
dad Host Link + 1.

SEND

PLC
Configure la direccin del nodo de destino como
el nmero de Unidad Host Link + 1 = S+1.

Datos
Cable serie

PLC
Host Link
Nmero de la Unidad Host Link: S

Envo de un comando La CPU que ejecuta CMND(490) puede enviarse un comando FINS a s
FINS a la CPU que ejecuta misma (excepto en el caso de las CPUs CS1 de la serie CS sin sufijo -V@).
CMND(490) (excepto CPUs Por ejemplo, pueden enviarse comandos de memoria de archivo (cdigos de
CS1 de la serie CS comando 22@@ hexadecimal) para formatear memoria de archivos, borrar
anteriores a V1) archivos, copiar archivos y llevar a cabo otras operaciones. Consulte ms
detalles en el apartado 5-2 Manipulacin de archivos del Manual de progra-
macin de las CPUs de la serie CS/CJ.
El indicador de operacin de memoria de archivos (A34313) se pondr en ON
cuando se enve cualquier comando FINS a la CPU local (incluso para
comandos FINS no relacionados con la memoria de archivos). Utilice siempre
A34313 en una condicin de entrada NC para CMND(490) para asegurar que
slo se ejecuta un comando FINS para la CPU cada vez.

Comando FINS
PC

Tarjeta de
memoria

Memoria de archivos de EM

1010
Instrucciones de red Seccin 3-25

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el nmero de puerto serie especificado en C+2 no
error est dentro del rango de 00 hasta 04.
ON si el indicador de habilitacin de puerto de comunica-
ciones est en OFF para el nmero de puerto de comuni-
caciones especificado en C+4.
ON si se enva un comando FINS a la CPU local mientras
el indicador de operacin de memoria de archivos
(A34313) est en ON.
OFF en el resto de los casos.

La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre Direccin Operacin
Indicador de habilita- A20200 Estos indicadores se ponen en ON para indicar
cin de puerto de hasta que pueden ejecutarse instrucciones de red,
comunicaciones A20207 incluida PMCR(260), para los puertos correspon-
dientes (00 hasta 07).
Un indicador se pone en OFF cuando se est
ejecutando una instruccin de red para el puerto
correspondiente y en ON cuando se completa la
instruccin.
Indicador de error A21900 Estos indicadores se ponen en ON para indicar
del puerto de comu- hasta que se ha producido un error en los puertos
nicaciones A21907 correspondientes (00 hasta 07) durante la ejecu-
cin de una instruccin de red.
El estado del indicador se retiene hasta que se
ejecuta la siguiente instruccin de red. El indica-
dor se pondr en OFF cuando se ejecute la
siguiente instruccin incluso si se ha producido
un error previamente.
Cdigos de finaliza- A203 Estos canales contienen los cdigos de finaliza-
cin de puerto de hasta cin para los puertos correspondientes (00 hasta
comunicaciones A210 07) a continuacin de la ejecucin de una instruc-
cin de red.
El canal correspondiente contendr 0000 mien-
tras se ejecuta la instruccin de red y se escribir
el cdigo de finalizacin cuando se complete la
instruccin. Estos canales se borran cuando
comienza la ejecucin del programa.
Indicador de opera- A34313 ON si se enva un comando FINS a la CPU local
cin de memoria de (incluso para comandos FINS no relacionados
archivos con la memoria de archivos) o cuando se realiza
alguna de las siguientes instrucciones u opera-
ciones para memoria de archivos.
FREAD(700) o FWRIT(701)
Sobrescritura de programa con bit de control en
la memoria
Copia de seguridad sencilla

Precauciones Si el indicador de habilitacin de puerto de comunicaciones est en OFF para el


nmero de puerto especificado en C+4, la instruccin se tratar como NOP(000)
y no se ejecutar. En este caso el indicador de error se pondr en ON.
Cuando se transmiten datos fuera de la red local, el usuario debe registrar tablas
de rutas en los PLC (CPUs) de cada red. (Las tablas de rutas indican las rutas a
otras redes en las que estn conectados nodos de destino).
Consulte en los cdigos de respuesta para comandos FINS en el Manual de
referencia de los comandos de comunicaciones de la serie CS/CJ (W342)
ms detalles sobre los cdigos de finalizacin para comunicaciones de red.
Los nmeros de puertos de comunicaciones 00 hasta 07 son compartidos por
las instrucciones de red y de comunicaciones serie (SEND(090), RECV(098),

1011
Instrucciones de red Seccin 3-25

CMND(490), PMCR(260), TXDU(256) y RXDU(255)), as que slo puede ejecu-


tarse una de estas instrucciones para un puerto de comunicaciones cada vez.
Para asegurarse de que CMND(490) no se ejecuta mientras un puerto est ocu-
pado, programe el indicador de habilitacin de puerto de comunicaciones del
puerto (A20200 hasta A20207) como una condicin de normalmente abierto.
Utilice siempre uno de los indicadores de habilitacin de puerto de comunicacio-
nes (A20200 hasta A20207) en una condicin de entrada NA y el indicador de
operacin de memoria de archivos (A34313) en una condicin de entrada NC
para CMND(490) cuando enve un comando FINS a la CPU local.
El ruido y otros factores pueden causar que la transmisin o la respuesta se
corrompa o pierda, as que recomendamos configurar el nmero de reintentos
como un valor que no sea cero, lo que causar que CMND(490) se vuelva a eje-
cutar si no se recibe la respuesta dentro del tiempo de monitorizacin de res-
puesta.
Ejemplos La siguiente seccin de programa muestra un ejemplo de envo de un
comando FINS a otra CPU.
Cuando CIO 000000 y A20207 (el indicador de habilitacin de puerto de
comunicaciones para el puerto 07) estn en ON, CMND(490) transmite el
comando FINS 0101 (MEMORY AREA READ) al nmero de nodo 3. La res-
puesta se almacena en D00200 hasta D00211.
El comando MEMORY AREA READ lee 10 canales desde D00010 hasta
D00019. La respuesta contiene el cdigo de comando de 2 bytes (0101), el
cdigo de finalizacin de 2 bytes y los 10 canales de datos, para un total de
12 canales o 24 bytes.
Los datos se retransmitirn hasta 3 veces si no se recibe una respuesta en un
plazo de diez segundos.

0 Cdigo de comando: 0101 hexadecimal (MEMORY AREA READ)


0 D00010 (rea de datos = 82 hexadecimal, direccin = 000A00)
0
0 Nmero de canales a leer = 0A hexadecimal (10 decimal)

0 Bytes de datos de comando: 0008 (8 decimal)


1 Bytes de datos de respuesta: 0018 (24)
0 Transmitir a la red local y al dispositivo mismo
0 Nmero de nodo 3, direccin de Unidad 00 (CPU)
0 Respuesta solicitada, nmero de puerto 7, 3 reintentos
6 Tiempo de monitorizacin de respuesta: 0064 hexadecimal (10 segundos)

La siguiente seccin de programa muestra un ejemplo de envo de un comando


FINS a la CPU local.
Cuando CIO 000000 y A20207 (el indicador de habilitacin de puerto de comuni-
caciones para el puerto 07) estn en ON y A34313 (indicador de operacin de
memoria de archivos) est en OFF, CMND(490) transmite el comando FINS
2215 (CREATE/DELETE DIRECTORY) a la unidad CPU local. La respuesta se
almacena en D00100 hasta D00101. Aqu, el comando FINS crear un directorio
llamado CS/CJ bajo el directorio OMRON. Se devolvern el cdigo del comando
(2 bytes) y el cdigo de finalizacin (2 bytes) y se almacenarn como respuesta.
1012
Instrucciones de red Seccin 3-25

000000 A20207 A34313


@CMND

Indicador de Indicador de S D00006


habilitacin de operacin de D D00100
puerto de memoria de
comunicaciones archivos C D00000
para el puerto 7)
15 8 7 0
S: D00006 2 2 1 5 Cdigo de comando: 2215 Hexadecimal (CREATE/DELETE DIRECTORY)
S+1: D00007 8 0 0 0 Disco N: 8000 hexadecimal (Tarjeta de memoria)
S+2: D00008 0 0 0 0 Parmetro: 0000 Hexadecimal (crear directorio)
S+3: D00009 4 3 5 3
S+4: D00010 3 1 2 0
S+5: D00011 2 0 2 0
Nombre de subdirectorio: CS1@@@@@. @@@ (@= espacio)
S+6: D00012 2 0 2 0
S+7: D00013 2 E 2 0
S+8: D00014 2 0 2 0
S+9: D00015 0 0 0 6 Longitud de nombre de directorio: 0006 (6 caracteres)
S+10: D00016 5 C 4 F
S+11: D00017 4 D 5 2 Ruta de directorio asoluta: \OMRON
S+12: D00018 4 F 4 E

15 8 7 0
S: D00000 0 0 1 A Bytes de datos de comando: 001A (26 decimal)
S+1: D00001 0 0 0 4 Bytes de datos de respuesta: 0004 (4)
S+2: D00002 0 0 0 0 Direccin de red de destino: 00 hexadecimal (red local)
Direccin de Unidad de destino: 00 Hexadecimal, Nmero de nodo de destino:
S+3: D00003 0 0 0 0 00 Hexadecimal (CPU del nodo local)
S+4: D00004 0 7 0 0 Respuesta solicitada, nmero de puerto 7, 0 reintentos
S+5: D00005 0 0 0 0 Tiempo de monitorizacin de respuesta: 0000 Hexadecimal (6553,5 seconds)

3-25-6 EXPLICIT MESSAGE SEND: EXPLT (720)


Empleo Enva un mensaje explcito con cualquier cdigo de servicio.
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0
posterior.
Smbolo de diagrama de
rels
EXPLT (720)

S S: Primer canal de mensaje de envo

D D: Primer canal del mensaje recibido

C C: Primer canal de control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON EXPLT (720)
Se ejecuta una vez en el diferencial ascendente @EXPLT(720)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

1013
Instrucciones de red Seccin 3-25

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos S: Primer canal de mensaje de envo


Especifica el primer canal del mensaje de envo (S hasta S+272 mx.).
15 0
S

Configure el nmero de bytes de datos de origen a partir del canal S+1. Por
ejemplo, configure S como 000A hexadecimal si hay 5 canales de datos (S+1
hasta S+5). No incluya los 2 bytes del canal S mismo. Incluya los bytes de la
izquierda desde S+1 hasta S+5, que contienen 00.
Adems, incluya el nmero de bytes de datos de servicio empezando por S+6.
(Si el primer o el ltimo canal contiene un solo byte de datos, no cuente el byte
vaco de ese canal).

15 12 11 8 7 0
S+1 0 0

Direccin de nodo de destino


(00 hasta direccin de nodo mx.
(hexadecimal))
15 12 11 8 7 0
S+2 0 0

Cdigo de servicio (hexadecimal)

15 12 11 8 7 0
S+3 0 0

ID de categora (hexadecimal)

15 12 11 8 7 0
S+4 0 0

ID de instancia (hexadecimal)

15 12 11 8 7 0
S+5 0 0

ID de atributo (hexadecimal)

Si no se utiliza el ID de atributo, configrelo como FFFF hexadecimal


(El ID de atributo no puede configurarse como 0000 hexadecimal)

15 0
S+6 Datos de servicio
hasta
...

S+272

Cuando existen datos de servicio (que no sean el ID de


atributo), el orden de bytes de estos datos se especifica
en los bits 12 hasta 15 de C+1. Pueden configurarse
hasta 534 bytes (267 canales).

1014
Instrucciones de red Seccin 3-25

D: Primer canal del mensaje recibido


Especifica el primer canal del mensaje recibido (D hasta D+269 mx.).
15 0
D

Contiene el nmero de bytes de datos a partir del canal D+1.


No incluye los 2 bytes del canal D mismo.
Este valor no incluye los bytes de la izquieda de D+1 y D+2, que contienen 00.
Este valor tambin incluye el nmero de bytes de datos de servicio empezando
por D+3. (Si el primer o el ltimo canal contiene un solo byte de datos, no se
cuenta el byte vaco de ese canal).

15 12 11 8 7 0
D+1 0 0

Contiene la direccin del nodo de origen.


(00 hasta 3F hexadecimal (0 hasta 63) para
DeviceNet))

15 12 11 8 7 0
D+2 0 0

Contiene el cdigo de servicio o el cdigo de error (hexadecimal).


Respuesta normal: Devuelve el cdigo de servicio del comando con el bit 07 en ON.
Error de respuesta: Devuelve 94 hexadecimal, sin tener en cuenta el cdigo de servicio del
comando.
15 0

D+3 Datos de servicio


...
hasta

D+269

Contiene los datos de servicio de respuesta (los datos que siguen al


cdigo de servicio). El orden de bytes de estos datos se especifica
en los bits 12 hasta 15 de C+1. Puede contener hasta 534 bytes
(267 canales) de datos.

C: Primer canal de control


Especifica el primero de cuatro canales de control (C hasta C+3).
15 0
C

Configure el nmero total de canales de datos de respuesta empezando por D.


El rango de configuracin permitido es de 0 hasta 010E hexadecimal (270 canales).
Si el nmero de canales de datos recibidos excede el valor aqu configurado, se
producir un error FINS (respuesta demasiado larga, cdigo 11 0B) y no se
almacenar ningn dato (en el rea empezando por D+3).
Si el nmero de canales de datos recibidos es menor que el valor aqu configurado, los
canales restantes (en el rea empezando por D+3) se mantendrn sin cambios.

15 12 11 8 7 0
C+1

Direccin de Unidad FINS de la Unidad de comunicaciones de rel.


Unidad de bus de CPU: 10 hasta 1F hexadecimal (nmero de Unidad + 10 hexadecimal)
Unidad de E/S especial: 20 hasta 7F hexadecimal (nmero de Unidad + 20 hexadecimal)
Nmero de puerto del puerto de comunicaciones (puerto lgico) para la instruccin de
red: 0 hasta 7 hexadecimal (F hexadecimal: Asignacin automtica)
Orden de bytes de datos de servicio (datos de trama) almacenados en las reas empezando por S+6 y D+3
0 hexadecimal: Almacenado desde el byte de la izquierda (izquierda derecha izquierda derecha ...)
8 hexadecimal: Almacenado desde el byte de la derecha (derecha izquierda derecha izquierda ...)

15 0
C+2

Tiempo de monitorizacin de respuesta


0001 hasta FFFF hexadecimal (0,1 hasta 6553,5 s)
0000 hexadecimal: 2 s (configuracin predeterminada)

15 0
C+3

Formato de mensaje explcito


0000 hexadecimal: DeviceNet (el mismo
que al utilizar el comando FINS 2801)

1015
Instrucciones de red Seccin 3-25

Especificaciones del
operando rea S D C
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6140
rea de Trabajo W000 hasta W511 W000 hasta W508
rea de bit en Espera H000 hasta H511 H000 hasta H508
rea Bit Auxiliar A000 hasta A959 A448 hasta A000 hasta A956
A959
rea Temporizador T0000 hasta T4095 T0000 hasta
T4092
rea Contador C0000 hasta C4095 C0000 hasta
C4092
rea DM D00000 hasta D32767 D00000 hasta
D32764
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32764
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32764
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Enva el comando de mensaje explcito (almacenado en el rango de canales


empezando por S+2) a la direccin de nodo especificada en S+1, a travs de
la Unidad de comunicaciones con la direccin de Unidad FINS especificada
en los bits 00 hasta 07 de C+1. Cuando se recibe la respuesta al mensaje
explcito, esta se almacena en el rango de canales empezando por D+2.
Configuracin del nmero de bytes
El nmero de bytes de los datos de envo de S incluye los 10 bytes contenidos
en S+1 hasta S+5, as como el nmero de bytes de datos de servicio empe-
zando por S+6. (Por ejemplo, si hay 1 byte de datos de servicio, hay 11 bytes
de datos en total, as que S debe configurarse como 000B hexadecimal)
El nmero de bytes de los datos recibidos en D incluye los 4 bytes contenidos
en D+1 hasta D+2, as como el nmero de bytes de datos de servicio empe-
zando por D+3. (Por ejemplo, si hay 1 byte de datos de servicio, hay 5 bytes
de datos en total y D contiene 0005 hexadecimal)
La configuracin de los bits 12 hasta 15 de C+1 (0 u 8 hexadecimal) deter-
mina el orden de bytes de los datos de servicio almacenados en S+6 y D+3.

1016
Instrucciones de red Seccin 3-25

Almacenamiento de datos desde el byte de la izquierda


Configure los bits 12 hasta 15 de C+1 como 0 hexadecimal
Trama (orden de los datos en lnea)

A B C D

rea de Almacenados desde el byte de la izquierda.


datos
15 08 07 00
D+3 A B
D+4 C D
Nota: A, B, C y D representan bytes de datos.

Almacenamiento de datos desde el byte de la derecha


Configure los bits 12 hasta 15 de C+1 como 8 hexadecimal
Trama (orden de los datos en lnea)

A B C D

rea de Almacenados desde el byte de la derecha.


datos
15 08 07 00
D+3 B A
D+4 D C
Nota: A, B, C y D representan bytes de datos.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el indicador de habilitacin de puerto de comunica-
error ciones est en OFF para el nmero de puerto de comuni-
caciones especificado en C.
OFF en el resto de los casos.

El correspondiente indicador de error de comunicaciones de mensaje expl-


cito estar en OFF si la instruccin finaliza normalmente o en ON si se pro-
duce un error.
Si se produce un error (indicador correspondiente de A213 en ON), el corres-
pondiente indicador de error de puerto de comunicaciones puede utilizarse
para determinar si el mensaje explcito no ha sido enviado (indicador corres-
pondiente de A219 en ON) o si el mensaje ha sido enviado pero hay un error
de el mensaje (indicador correspondiente de A219 en OFF).
El correspondiente cdigo de finalizacin de puerto de comunicaciones
(A203 hasta A210) ser 0000 hexadecimal si la instruccin ha finalizado nor-
malmente, un cdigo de error de mensaje explcito si se ha producido un
error de mensaje o un cdigo de error FINS si se ha producido un error FINS.
Encontrar ms detalles sobre la operacin general de las instrucciones de
mensaje explcito en 3-25-2 Instrucciones de mensaje explcito.

1017
Instrucciones de red Seccin 3-25

La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre Direccin Operacin
Indicador de habilita-A20200 Estos indicadores se ponen en ON para indicar
cin de puerto de hasta que pueden ejecutarse instrucciones de red,
comunicaciones A20207 incluida PMCR(260), para los puertos correspon-
dientes (00 hasta 07).
Un indicador se pone en OFF cuando se est
ejecutando una instruccin de red para el puerto
correspondiente y en ON cuando se completa la
instruccin.
Indicador de error de A21300 Estos indicadores se ponen en ON para indicar
comunicaciones hasta que se ha producido un error en los puertos
explcito A21307 correspondientes (00 hasta 07) durante la ejecu-
cin de comunicaciones de mensaje explcito.
Los indicadores se pondrn en ON si el mensaje
explcito no ha sido enviado o si el mensaje ha
sido enviado pero se ha devuelto una respuesta
de error.
El estado del indicador se retiene hasta que se
ejecuta la siguiente instruccin de mensaje expl-
cito. El indicador se pondr en OFF cuando se
ejecute la siguiente instruccin incluso si se ha
producido un error previamente.
Indicador de error A21900 Estos indicadores se ponen en ON para indicar
del puerto de comu- hasta que el mensaje explcito mismo no ha sido
nicaciones A21907 enviado desde los puertos correspondientes (00
hasta 07) durante la ejecucin de una instruccin
de mensaje explcito.
El estado del indicador se retiene hasta que se
ejecuta la siguiente instruccin de red. El indica-
dor se pondr en OFF cuando se ejecute la
siguiente instruccin incluso si se ha producido
un error previamente.
Cdigos de finaliza- A203 Estos canales contienen los cdigos de finaliza-
cin de puerto de hasta cin para los puertos correspondientes (00 hasta
comunicaciones A210 07) a continuacin de la ejecucin de una instruc-
cin de red.
El canal correspondiente contendr 0000
mientras el indicador de error de comunica-
ciones de mensaje explcito est en OFF.
El canal correspondiente contendr un cdigo
de error FINS cuando el indicador de error de
comunicaciones de mensaje explcito y el
indicador de error de puerto de comunicacio-
nes de ese puerto estn en ON.
El canal correspondiente contendr el cdigo
de error de mensaje explcito apropiado
cuando el indicador de error de comunicacio-
nes de mensaje explcito de ese puerto est
en ON y el indicador de error de puerto de
comunicaciones est en OFF.
El canal correspondiente contendr 0000 mien-
tras se ejecuta la instruccin de red y se escribir
el cdigo de finalizacin cuando se complete la
instruccin. Estos canales se borran cuando
comienza la ejecucin del programa.

Precauciones Asegrese de que el orden de los bytes de los datos de origen coincide con la
trama del mensaje explcito (orden de los datos en la lnea). Por ejemplo,
cuando los datos de servicio estn en unidades de 2 bytes o 4 bytes, el orden
de los datos de la trama es de izquierda a derecha en pares de 2 dgitos, tal y
como se muestra en el siguiente diagrama.
Formato de comando
Ejemplo: Direccin 1234 Ejemplo: Tiempo acumulado 12345678
hexadecimal almacenada en el orden 34 12 hexadecimal almacenado en el orden 78 56 34 12

34 12 78 56 34 12

Datos de servicio: 1234Hex Datos de servicio: 12345678Hex

1018
Instrucciones de red Seccin 3-25

Los siguientes diagramas muestran cmo se almacenan datos en las reas de


datos cuando los datos de servicio estn en unidades de 2 bytes o de 4 bytes.
1. Datos en unidades de 2 bytes
Almacenamiento de datos desde el byte de la izquierda (bits 12 hasta 15
de C = 0 hexadecimal)
Ejemplo: Almacenamiento del valor 1234 hexadecimal en D+3
Los datos de la trama estn en el orden 34 12.

Trama 34 12
En este caso, 1234 hexa-
decimal se almacena des-
de el byte de la izquierda
en el orden 34 12. 15 08 07 00
D+3 3 4 1 2

Almacenamiento de datos desde el byte de la derecha (bits 12 hasta 15


de C = 8 hexadecimal)
Ejemplo: Almacenamiento del valor 1234 hexadecimal en D+3
Los datos de la trama estn en el orden 34 12.

Trama 34 12
En este caso, 1234 hexa-
decimal se almacena des-
de el byte de la derecha
en el orden 34 12. 15 08 07 00
D+3 1 2 3 4

2. Datos en unidades de 4 bytes


Almacenamiento de datos desde el byte de la izquierda (bits 12 hasta 15
de C = 0 hexadecimal)
Ejemplo: Almacenamiento del valor 12345678 hexadecimal en D+3 y D+4
Los datos de la trama estn en el orden 78 56 34 12.

Trama 78 56 34 12

En este caso, 12345678 hexa-


decimal se almacena desde el
byte de la izquierda en el orden
78 56 34 12.
15 08 07 00
D+3 7 8 5 6
D+4 3 4 1 2

Almacenamiento de datos desde el byte de la derecha (bits 12 hasta 15 de C


= 8 hexadecimal)
Ejemplo: Almacenamiento del valor 12345678 hexadecimal en D+3 y D+4
Los datos de la trama estn en el orden 78 56 34 12.

Trama 78 56 34 12

En este caso, 12345678 hexa-


decimal se almacena desde el
byte de la derecha en el orden
78 56 34 12.
15 08 07 00
D+3 5 6 7 8
D+4 1 2 3 4

Nota Los ejemplos anteriores solamente muestran el alamacenamiento de datos


recibidos en D+3, pero los datos de envo se almacenan en S+6 de la misma
manera.

1019
Instrucciones de red Seccin 3-25

Ejemplo En este ejemplo, EXPLT(720) se utiliza para leer el tiempo total en ON time o el
nmero de operaciones de contacto desde un esclavo DRT2 (terminal de E/S).
Indicador de habilitacin de puerto
de comunicaciones (puerto 6)
000000 A20206
EXPLT
S D00000
D D00100
C D00200

Cuando CIO 000000 y A20206 (el indicador de habilitacin de puerto de


comunicaciones para el puerto 06) estn en ON, EXPLT(720) lee el tiempo o
los tiempos totales en ON o el nmero de operaciones de contacto desde un
esclavo DRT2 (terminal de E/S). En este caso se lee el tiempo total en ON o
el nmero de operaciones de contacto para la entrada 3.
Cdigo de servicio = 0E hexadecimal, ID de categora = 09 hexadecimal, ID
de instancia = 03 hexadecimal e ID de atributo = 66 hexadecimal
Por ejemplo se devuelve un valor de 2.752.039 s como respuesta para el
tiempo total en ON.
Formato de comando de mensaje explcito

0E 09 03 66

ID de atributo
ID de instancia
ID de categora
Cdigo de servicio
Direccin de nodo de destino

Unidad DeviceNet CS1W-DRM21


(Unidad de bus de CPU con nmero de unidad 2)

Instruccin
CPU EXPLT(720)

Direccin de Unidad 12 hexadecimal


(porque el nmero de unidad es 2)

Mensaje Esclavo DRM2-OD16 con


explcito direccin de nodo 45

S: D00000 0 0 0 A Nmero de bytes de los datos: S+1 hasta S+5 = 5 canales = 10 bytes = 0A hexadecimal
S+1: D00001 0 0 2 D Direccin del nodo esclavo = 45 = 2D hexadecimal
S+2: D00002 0 0 0 E Cdigo de servicio = 0E hexadecimal
S+3: D00003 0 0 0 9 ID de categora = 09 hexadecimal
S+4: D00004 0 0 0 3 ID de instancia = 03 hexadecimal (entrada 3)
S+5: D00005 0 0 6 6 ID de atributo = 66 hexadecimal

D: D00100 0 0 0 8 Contiene 08 hexadecimal para 8 bytes de datos recibidos en la trama de respuesta.


D+1: D00101 0 0 2 D Devuelve la direccin del nodo esclavo = 45 = 2D hexadecimal
D+2: D00102 0 0 8 E Cdigo de servicio = 8E hexadecimal (finalizacin normal)

D+3: D00103 2 7 F E
D+4: D00104 2 9 0 0 Datos de servicio = 0029FE27 hexadecimal (2.752.039 s decimal)

C: D00200 0 0 0 4 Configure 5 canales = 0005 hexadecimal ya que hay 5 canales desde D hasta D+5.
Orden de bytes = 0 hexadecimal (desde el byte de la izquierda), puerto de comunicaciones
C+1: D00201 0 6 1 2
= 6 hexadecimal (puerto 6) direccin de Unidad de la Unidad DeviceNet = 12 hexadecimal
C+2: D00202 0 0 0 0 Tiempo de monitorizacin de respuesta = 0000 hexadecimal (2 s)
C+3: D00203 0 0 0 0 Tipo de formato explcito = 0000 hexadecimal (formato DeviceNet)

1020
Instrucciones de red Seccin 3-25

3-25-7 EXPLICIT GET ATTRIBUTE: EGATR(721)


Empleo Enva un comando de lectura de informacin/estado en un mensaje explcito
(Get Attribute Single, ServiceCode: 0E hexadecimal).
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0
posterior.

Smbolo de diagrama de
rels
EGATR(721)

S S: Primer canal de mensaje de envo

D D: Primer canal del mensaje recibido

C C: Primer canal de control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON EGATR(721)
Se ejecuta una vez en el diferencial ascendente @EGATR(721)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos S: Primer canal de mensaje de envo


Especifica el primer canal del mensaje de envo (S hasta S+3).
15 12 11 8 7 0
S 0 0

Direccin de nodo de destino


00 hasta direccin de nodo mx. (hexadecimal)
(00 hasta 3F hexadecimal (0 hasta 63) para
DeviceNet))

15 12 11 8 7 0
S+1 0 0

ID de categora (hexadecimal)

15 12 11 8 7 0
S+2 0 0

ID de instancia (hexadecimal)

15 12 11 8 7 0
S+3 0 0

ID de atributo (hexadecimal)

Si no se utiliza el ID de atributo, configrelo


como FFFF hexadecimal (el ID de atributo no
puede configurarse como 0000 hexadecimal)

1021
Instrucciones de red Seccin 3-25

D: Primer canal del mensaje recibido


Especifica el primer canal del mensaje recibido (D hasta D+267 mx.).
15 0
D

Contiene el nmero de bytes de datos de servicio recibidos a partir


del canal D+1. No incluye los 2 bytes del canal D mismo.

Slo incluye el nmero de bytes de datos de servicio empezando


por D+1. (Si el primer o el ltimo canal contiene un solo byte de
datos, no se cuenta el byte vaco de ese canal).
15 0

D+1 Datos de servicio


hasta

...
D+267

Contiene los datos de servicio de respuesta (los datos que


siguen al cdigo de servicio). El orden de los bytes de estos
datos se especifica en los bits 12 hasta 15 de C+1.
Pueden contener hasta 534 bytes (267 canales) de datos.

C: Primer canal de control


Especifica el primero de cuatro canales de control (C hasta C+3).
15 0
C

Configure el nmero mximo de canales de datos de los datos recibidos comenzando por D.
El rango de configuracin permitido es de 0 hasta 010C hexadecimal (268 canales).
Si el nmero de canales de datos recibidos excede el valor aqu configurado, se producir un
error FINS (respuesta demasiado larga, cdigo 11 0B) y no se almacenar ningn dato (en el
rea empezando por D+3).
Si el nmero de canales de datos recibidos es menor que el valor aqu configurado, los
canales restantes (en el rea empezando por D+3) se mantendrn sin cambios.

15 12 11 8 7 0
C+1

Direccin de Unidad FINS de la Unidad de comunicaciones de rel.


Unidad de bus de CPU: 10 hasta 1F hexadecimal (nmero de Unidad
+ 10 hexadecimal)

Nmero de puerto del puerto de comunicaciones (puerto lgico) para la instruccin


de red: 0 hasta 7 hexadecimal (F hexadecimal: Asignacin automtica)

Orden de bytes de datos de servicio (datos de trama) almacenados en las reas empezando por S+6 y D+3
0 hexadecimal: Almacenado desde el byte de la izquierda (izquierda derecha izquierda derecha ...)
8 hexadecimal: Almacenado desde el byte de la derecha (derecha izquierda derecha izquierda ...)

15 0
C+2

Tiempo de monitorizacin de respuesta


0001 hasta FFFF hexadecimal (0,1 hasta 6553,5 s)
0000 hexadecimal: 2 s (configuracin predeterminada)

15 0
C+3

Formato de mensaje explcito


0000 hexadecimal: DeviceNet (el mismo que al utilizar el comando
FINS 2801)

Especificaciones del
operando rea S D C
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6140 CIO 6143 CIO 6140
rea de Trabajo W000 hasta W508 W000 hasta W511 W000 hasta W508
rea de bit en Espera H000 hasta H508 H000 hasta H511 H000 hasta H508
rea Bit Auxiliar A000 hasta A956 A000 hasta A959 A000 hasta A956
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4092 T4095 T4092

1022
Instrucciones de red Seccin 3-25

rea S D C
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4092 C4095 C4092
rea DM D00000 hasta D00000 hasta D00000 hasta
D32764 D32767 D32764
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32764 E32767 E32764
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32764 En_32767 En_32764
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767 (n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767 (n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Enva el comando de mensaje explcito leer informacin/estado (almace-


nado en los canales S+1 hasta S+3) a la direccin de nodo especificada en S
a travs de la Unidad de comunicaciones con la direccin de Unidad FINS
especificada en los bits 00 hasta 07 de C+1.
Cuando se recibe la respuesta al mensaje explcito, los datos de servicio de
respuesta (los datos que siguen al cdigo de servicio) se almacenan en el
rango de canales empezando por D+1.
El nmero de bytes de datos recibidos indicado en D es el nmero de bytes
de datos de servicio. (Por ejemplo, si hay 1 byte de datos de servicio, D con-
tendr 0001 hexadecimal sin tener en cuenta la configuracin del orden de
bytes, es decir, si el byte est almacenado en el byte de la izquierda o de la
derecha de D).
La configuracin de los bits 12 hasta 15 de C+1 (0 u 8 hexadecimal) deter-
mina el orden de bytes de los datos de servicio almacenados en S+6 y D+3.
Almacenamiento de datos desde el byte de la izquierda
Configure los bits 12 hasta 15 de C+1 como 0 hexadecimal
Trama (orden de los datos en lnea)

A B C D

rea
Almacenados desde el byte de la izquierda.
de
datos 15 08 07 00
D+1 A B
D+2 C D
Nota: A, B, C y D representan bytes de datos.

1023
Instrucciones de red Seccin 3-25

Almacenamiento de datos desde el byte de la derecha


Configure los bits 12 hasta 15 de C+1 como 8 hexadecimal
Trama (orden de los datos en lnea)

A B C D

rea Almacenados desde el byte de la derecha.


de
datos 15 08 07 00
D+1 B A
D+2 D C
Nota: A, B, C y D representan bytes de datos.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el indicador de habilitacin de puerto de comunica-
error ciones est en OFF para el nmero de puerto de comuni-
caciones especificado en C.
OFF en el resto de los casos.

El correspondiente indicador de error de comunicaciones de mensaje expl-


cito estar en OFF si la instruccin finaliza normalmente o en ON si se pro-
duce un error.
Si se produce un error (indicador correspondiente de A213 en ON), el corres-
pondiente indicador de error de puerto de comunicaciones puede utilizarse
para determinar si el mensaje explcito no ha sido enviado (indicador corres-
pondiente de A219 en ON) o si el mensaje ha sido enviado pero hay un error
de el mensaje (indicador correspondiente de A219 en OFF).
El correspondiente cdigo de finalizacin de puerto de comunicaciones
(A203 hasta A210) ser 0000 hexadecimal si la instruccin ha finalizado nor-
malmente, un cdigo de error de mensaje explcito si se ha producido un
error de mensaje o un cdigo de error FINS si se ha producido un error FINS.
Encontrar ms detalles sobre la operacin general de las instrucciones de
mensaje explcito en 3-25-2 Instrucciones de mensaje explcito.
La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre Direccin Operacin
Indicador de habilita- A20200 Estos indicadores se ponen en ON para indicar
cin de puerto de hasta que pueden ejecutarse instrucciones de red,
comunicaciones A20207 incluida PMCR(260), para los puertos correspon-
dientes (00 hasta 07).
Un indicador se pone en OFF cuando se est
ejecutando una instruccin de red para el puerto
correspondiente y en ON cuando se completa la
instruccin.
Indicador de error de A21300 Estos indicadores se ponen en ON para indicar
comunicaciones hasta que se ha producido un error en los puertos
explcito A21307 correspondientes (00 hasta 07) durante la ejecu-
cin de comunicaciones de mensaje explcito.
Los indicadores se pondrn en ON si el mensaje
explcito no ha sido enviado o si el mensaje ha
sido enviado pero se ha devuelto una respuesta
de error.
El estado del indicador se retiene hasta que se
ejecuta la siguiente instruccin de mensaje expl-
cito. El indicador se pondr en OFF cuando se
ejecute la siguiente instruccin incluso si se ha
producido un error previamente.

1024
Instrucciones de red Seccin 3-25

Nombre Direccin Operacin


Indicador de error A21900 Estos indicadores se ponen en ON para indicar
del puerto de comu- hasta que el mensaje explcito mismo no ha sido
nicaciones A21907 enviado desde los puertos correspondientes (00
hasta 07) durante la ejecucin de una instruccin
de mensaje explcito.
El estado del indicador se retiene hasta que se
ejecuta la siguiente instruccin de red. El indica-
dor se pondr en OFF cuando se ejecute la
siguiente instruccin incluso si se ha producido
un error previamente.
Cdigos de finaliza- A203 Estos canales contienen los cdigos de finaliza-
cin de puerto de hasta cin para los puertos correspondientes (00 hasta
comunicaciones A210 07) a continuacin de la ejecucin de una instruc-
cin de red.
El canal correspondiente contendr 0000
mientras el indicador de error de comunica-
ciones de mensaje explcito est en OFF.
El canal correspondiente contendr un cdigo
de error FINS cuando el indicador de error de
comunicaciones de mensaje explcito y el
indicador de error de puerto de comunicacio-
nes de ese puerto estn en ON.
El canal correspondiente contendr el cdigo
de error de mensaje explcito apropiado
cuando el indicador de error de comunicacio-
nes de mensaje explcito de ese puerto est
en ON y el indicador de error de puerto de
comunicaciones est en OFF.
El canal correspondiente contendr 0000 mien-
tras se ejecuta la instruccin de red y se escribir
el cdigo de finalizacin cuando se complete la
instruccin. Estos canales se borran cuando
comienza la ejecucin del programa.

Precauciones Asegrese de que el orden de los bytes de los datos de origen coincide con la
trama del mensaje explcito (orden de los datos en la lnea). Por ejemplo,
cuando los datos de servicio estn en unidades de 2 bytes o 4 bytes, el orden
de los datos de la trama es de izquierda a derecha en pares de 2 dgitos, tal y
como se muestra en el siguiente diagrama.
Formato de comando
Ejemplo: Direccin 1234 hexadeci- Ejemplo: Tiempo acumulado 12345678 hexadeci-
mal almacenada en el orden 34 12 mal almacenado en el orden 78 56 34 12

34 12 78 56 34 12

Datos de servicio: 1234Hex Datos de servicio: 12345678Hex

Los siguientes diagramas muestran cmo se almacenan datos en las reas de


datos cuando los datos de servicio estn en unidades de 2 bytes o de 4 bytes.
1. Datos en unidades de 2 bytes
Almacenamiento de datos desde el byte de la izquierda (bits 12 hasta 15
de C = 0 hexadecimal)
Ejemplo: Almacenamiento del valor 1234 hexadecimal en D+1
Los datos de la trama estn en
el orden 34 12.

Trama 34 12

En este caso, 1234 hexade-


cimal se almacena desde el
byte de la izquierda en el or-
den 34 12. 15 08 07 00
D+1 3 4 1 2

1025
Instrucciones de red Seccin 3-25

Almacenamiento de datos desde el byte de la derecha (bits 12 hasta 15


de C = 8 hexadecimal)
Ejemplo: Almacenamiento del valor 1234 hexadecimal en D+1
Los datos de la trama estn en
el orden 34 12.

Trama 34 12

En este caso, 1234 hexade-


cimal se almacena desde el
byte de la derecha en el or-
den 34 12. 15 08 07 00
D+1 1 2 3 4

2. Datos en unidades de 4 bytes


Almacenamiento de datos desde el byte de la izquierda (bits 12 hasta 15
de C = 0 hexadecimal)
Ejemplo: Almacenamiento del valor 12345678 hexadecimal en D+1 y D+2
Los datos de la trama estn en
el orden 78 56 34 12.

Trama 78 56 34 12

En este caso, 12345678


hexadecimal se almacena desde
el byte de la izquierda en el orden
78 56 34 12.
15 08 07 00
D+1 7 8 5 6
D+2 3 4 1 2

Almacenamiento de datos desde el byte de la derecha (bits 12 hasta 15 de


C = 8 hexadecimal)
Ejemplo: Almacenamiento del valor 12345678 hexadecimal en D+1 y D+2
Los datos de la trama estn en
el orden 78 56 34 12.

Trama 78 56 34 12

En este caso, 12345678


hexadecimal se almacena desde
el byte de la derecha en el orden
78 56 34 12.
15 08 07 00
D+1 5 6 7 8
D+2 1 2 3 4

Ejemplo En este ejemplo, EGATR(721) se utiliza para leer el estado general de un


esclavo DRT2 (terminal de E/S).
Indicador de habilitacin de puerto
de comunicaciones (puerto 6)
000000 A20206
EGATR
S D00000
D D00100
C D00200

Cuando CIO 000000 y A20206 (el indicador de habilitacin de puerto de


comunicaciones para el puerto 06) estn en ON, EGATR(721) lee el estado
general del esclavo DRT2 (terminal de E/S). En este caso se lee el tiempo
total en ON o el nmero de operaciones de contacto para la entrada 3.
Cdigo de servicio = 0E hexadecimal, ID de categora = 95 hexadecimal, ID
de instancia = 01 hexadecimal e ID de atributo = 65 hexadecimal
El estado general se devuelve en 1 byte.

1026
Instrucciones de red Seccin 3-25

Formato de comando de mensaje explcito

0E 95 01 65

ID de atributo
ID de instancia
ID de categora
Cdigo de servicio
Direccin de nodo de destino

Unidad DeviceNet CS1W-DRM21


(Unidad de bus de CPU con nmero de unidad 2)

Instruccin
CPU
EGATR(721)

Direccin de Unidad 12 hexadecimal


(porque el nmero de unidad es 2)

Mensaje Esclavo (terminal de E/S)


explcito con direccin de nodo 10

S: D00000 0 0 0 A Direccin del nodo esclavo = 10 = 0A hexadecimal


S+1: D00001 0 0 9 5 ID de categora = 95 hexadecimal
S+2: D00002 0 0 0 1 ID de instancia = 01 hexadecimal
S+3: D00003 0 0 6 5 ID de atributo = 65 hexadecimal

C: D00200 0 0 0 2 Configure 2 canales = 0002 hexadecimal ya que hay 2 canales desde D hasta D+1.
Orden de bytes = 8 hexadecimal (desde el byte de la derecha), puerto de comunicaciones =
C+1: D00201 8 6 1 2
6 hexadecimal (puerto 6) direccin de Unidad de la Unidad DeviceNet = 12 hexadecimal
C+2: D00202 0 0 0 0 Tiempo de monitorizacin de respuesta = 0000 hexadecimal (2 s)
C+3: D00203 0 0 0 0 Tipo de formato explcito = 0000 hexadecimal (formato DeviceNet)

D: D00100 0 0 0 1 D contiene 0 hexadecimal para el byte de datos devuelto al byte de la derecha de D+1.
El estado general del esclavo se devuelve a los bits 00 hasta 07.
(Los datos se almacenan en los bits 00 hasta 07 porque la configuracin del orden de los bytes
D+1: D00101 0 0 4 8 de C+1 bits 12 hasta 15 fue configurada como 8 hexadecimal (desde el byte de la derecha).

7 6 5 4 3 2 1 0

D 00101 0 1 0 0 1 0 0 0
Indicador de estado de alimentacin
de las Unidades de E/S bsicas
Indicador de estado de alimentacin
de las Unidades de E/S expansoras
Indicador de baja tensin en la red
de alimentacin
Indicador de mantenimiento de la Unidad Estado
Indicador de desconexin de sensor general
Indicador de cortocircuito en alimentacin
de sensor
Indicador de tiempo de operacin excedido
Indicador de mantenimiento de dispositivo
conectado

1027
Instrucciones de red Seccin 3-25

3-25-8 EXPLICIT SET ATTRIBUTE: ESATR(722)


Empleo Enva un comando de escritura de informacin/estado en un mensaje expl-
cito (Set Attribute Single, ServiceCode: 10 hexadecimal).
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0
posterior.

Smbolo de diagrama de
rels
ESATR(722)

S S: Primer canal de mensaje de envo

C C: Primer canal de control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ESATR(722)
Se ejecuta una vez en el diferencial ascendente @ESATR(722)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

1028
Instrucciones de red Seccin 3-25

Operandos S: Primer canal de mensaje de envo


Especifica el primer canal del mensaje de envo (S hasta S+271 mx.).
15 0
S

Configure el nmero de bytes de datos de origen a partir del canal S+1.


Por ejemplo, configure S como 0008 hexadecimal si hay 4 canales de
datos (S+1 hasta S+4). No incluya los 2 bytes del canal S mismo.
Incluya los bytes de la izquierda desde S+1 hasta S+4, que contienen 00.
Adems, incluya el nmero de bytes de datos de servicio empezando por
S+5. (Si el primer o el ltimo canal contiene un solo byte de datos, no
cuente el byte vaco de ese canal).

15 12 11 8 7 0
S+1 0 0

Direccin del nodo de destino: 00 hasta


direccin de nodo mx. (hexadecimal)
(00 hasta 3F hexadecimal (0 hasta 63)
para DeviceNet))

15 12 11 8 7 0
S+2 0 0

ID de categora (hexadecimal)

15 12 11 8 7 0
S+3 0 0

ID de instancia (hexadecimal)

15 12 11 8 7 0
S+4 0 0

ID de atributo (hexadecimal)

Si no se utiliza el ID de atributo, configrelo


como FFFF hexadecimal (el ID de atributo no
puede configurarse como 0000 hexadecimal)
15 0
S+5 Datos de servicio
hasta
...

S+271

Cuando existen datos de servicio (que no sean el


ID de atributo), el orden de bytes de estos datos se
especifica en los bits 12 hasta 15 de C+1. Pueden
configurarse hasta 534 bytes (267 canales).

C: Primer canal de control


Especifica el primero de tres canales de control (C hasta C+2).
15 12 11 8 7 0
C

Direccin de Unidad FINS de la Unidad de comunicaciones de rel.


Unidad de bus de CPU: 10 hasta 1F hexadecimal (nmero de Unidad + 10 hexadecimal)
Unidad de E/S especial: 20 hasta 7F hexadecimal (nmero de Unidad + 20 hexadecimal)
Nmero de puerto del puerto de comunicaciones (puerto lgico) para la instruccin de red: 0
hasta 7 hexadecimal (F hexadecimal: Asignacin automtica)
Orden de bytes de datos de servicio (datos de trama) almacenados en las reas empezando por S+5
0 hexadecimal: Almacenado desde el byte de la izquierda (izquierda derecha izquierda derecha ...)
8 hexadecimal: Almacenado desde el byte de la derecha (derecha izquierda derecha izquierda ...)

15 0
C+1

Tiempo de monitorizacin de respuesta


0001 hasta FFFF hexadecimal (0,1 hasta 6553,5 s)
0000 hexadecimal: 2 s (configuracin predeterminada)

15 0
C+2

Formato de mensaje explcito


0000 hexadecimal: DeviceNet (el mismo que al utilizar el comando
FINS 2801)

1029
Instrucciones de red Seccin 3-25

Especificaciones del
operando rea S C
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta CIO 6141
rea de Trabajo W000 hasta W511 W000 hasta W509
rea de bit en Espera H000 hasta H511 H000 hasta H509
rea Bit Auxiliar A000 hasta A959 A000 hasta A957
rea Temporizador T0000 hasta T4095 T0000 hasta T4093
rea Contador C0000 hasta C4095 C0000 hasta C4093
rea DM D00000 hasta D32767 D00000 hasta D32765
rea EM sin banco E00000 hasta E32767 E00000 hasta E32765
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta En_32765
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM indirec- @ D00000 hasta @ D32767
tas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767 (n = 0 a C)
Direcciones DM/EM indirec- *D00000 hasta *D32767
tas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767 (n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indirecto ,IR0 hasta ,IR15
utilizando registros de ndice 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Enva el comando de mensaje explcito con el cdigo de servicio 10 hexade-


cimal (almacenado en el rango de canales empezando por S+2) a la direc-
cin de nodo especificada en S+1, a travs de la Unidad de comunicaciones
con la direccin de Unidad FINS especificada en los bits 00 hasta 07 de C.
Cuando se recibe la respuesta al mensaje explcito, esta se almacena en el
rango de canales empezando por D+2.
La configuracin de los bits 12 hasta 15 de C (0 u 8 hexadecimal) determina
el orden de bytes de los datos de servicio almacenados en S+5.
Almacenamiento de datos desde el byte de la izquierda
Configure los bits 12 hasta 15 de C como 0 hexadecimal
Trama (orden de los datos en lnea)

A B C D

rea
de Almacenados desde el byte de la izquierda.
datos 15 08 07 00
S+5 A B
S+6 C D
Nota: A, B, C y D representan bytes de datos.

1030
Instrucciones de red Seccin 3-25

Almacenamiento de datos desde el byte de la derecha


Configure los bits 12 hasta 15 de C como 8 hexadecimal
Trama (orden de los datos en lnea)

A B C D

rea Almacenados desde el byte de la derecha.


de
datos 15 08 07 00
S+5 B A
S+6 D C
Nota: A, B, C y D representan bytes de datos.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el indicador de habilitacin de puerto de comunica-
error ciones est en OFF para el nmero de puerto de comuni-
caciones especificado en C.
OFF en el resto de los casos.

El correspondiente indicador de error de comunicaciones de mensaje expl-


cito estar en OFF si la instruccin finaliza normalmente o en ON si se pro-
duce un error.
Si se produce un error (indicador correspondiente de A213 en ON), el corres-
pondiente indicador de error de puerto de comunicaciones puede utilizarse
para determinar si el mensaje explcito no ha sido enviado (indicador corres-
pondiente de A219 en ON) o si el mensaje ha sido enviado pero hay un error
de mensaje (indicador correspondiente de A219 en OFF).
El correspondiente cdigo de finalizacin de puerto de comunicaciones
(A203 hasta A210) ser 0000 hexadecimal si la instruccin ha finalizado nor-
malmente, un cdigo de error de mensaje explcito si se ha producido un
error de mensaje o un cdigo de error FINS si se ha producido un error FINS.
Encontrar ms detalles sobre la operacin general de las instrucciones de
mensaje explcito en 3-25-2 Instrucciones de mensaje explcito.
La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre Direccin Operacin
Indicador de habilita-A20200 Estos indicadores se ponen en ON para indicar
cin de puerto de hasta que pueden ejecutarse instrucciones de red,
comunicaciones A20207 incluida PMCR(260), para los puertos correspon-
dientes (00 hasta 07).
Un indicador se pone en OFF cuando se est
ejecutando una instruccin de red para el puerto
correspondiente y en ON cuando se completa la
instruccin.
Indicador de error de A21300 Estos indicadores se ponen en ON para indicar
comunicaciones hasta que se ha producido un error en los puertos
explcito A21307 correspondientes (00 hasta 07) durante la ejecu-
cin de comunicaciones de mensaje explcito.
Los indicadores se pondrn en ON si el mensaje
explcito no ha sido enviado o si el mensaje ha
sido enviado pero se ha devuelto una respuesta
de error.
El estado del indicador se retiene hasta que se
ejecuta la siguiente instruccin de mensaje expl-
cito. El indicador se pondr en OFF cuando se
ejecute la siguiente instruccin incluso si se ha
producido un error previamente.

1031
Instrucciones de red Seccin 3-25

Nombre Direccin Operacin


Indicador de error A21900 Estos indicadores se ponen en ON para indicar
del puerto de comu- hasta que el mensaje explcito mismo no ha sido
nicaciones A21907 enviado desde los puertos correspondientes (00
hasta 07) durante la ejecucin de una instruccin
de mensaje explcito.
El estado del indicador se retiene hasta que se
ejecuta la siguiente instruccin de red. El indica-
dor se pondr en OFF cuando se ejecute la
siguiente instruccin incluso si se ha producido
un error previamente.
Cdigos de finaliza- A203 Estos canales contienen los cdigos de finaliza-
cin de puerto de hasta cin para los puertos correspondientes (00 hasta
comunicaciones A210 07) a continuacin de la ejecucin de una instruc-
cin de red.
El canal correspondiente contendr 0000
mientras el indicador de error de comunica-
ciones de mensaje explcito est en OFF.
El canal correspondiente contendr un cdigo
de error FINS cuando el indicador de error de
comunicaciones de mensaje explcito y el
indicador de error de puerto de comunicacio-
nes de ese puerto estn en ON.
El canal correspondiente contendr el cdigo
de error de mensaje explcito apropiado
cuando el indicador de error de comunicacio-
nes de mensaje explcito de ese puerto est
en ON y el indicador de error de puerto de
comunicaciones est en OFF.
El canal correspondiente contendr 0000 mien-
tras se ejecuta la instruccin de red y se escribir
el cdigo de finalizacin cuando se complete la
instruccin. Estos canales se borran cuando
comienza la ejecucin del programa.

Precauciones Asegrese de que el orden de los bytes de los datos de origen coincide con la
trama del mensaje explcito (orden de los datos en la lnea). Por ejemplo,
cuando los datos de servicio estn en unidades de 2 bytes o 4 bytes, el orden
de los datos de la trama es de izquierda a derecha en pares de 2 dgitos, tal y
como se muestra en el siguiente diagrama.
Formato de comando
Ejemplo: Direccin 1234 hexadecimal Ejemplo: Tiempo acumulado 12345678 hexadecimal
almacenada en el orden 34 12 almacenado en el orden 78 56 34 12

34 12 78 56 34 12

Datos de servicio: 1234Hex Datos de servicio: 12345678Hex

Los siguientes diagramas muestran cmo se almacenan datos en las reas de


datos cuando los datos de servicio estn en unidades de 2 bytes o de 4 bytes.
1. Datos en unidades de 2 bytes
Almacenamiento de datos desde el byte de la izquierda (bits 12 hasta 15
de C = 0 hexadecimal)
Ejemplo: Almacenamiento del valor 1234 hexadecimal en S+5
Los datos de la trama estn en
el orden 34 12.

Trama 34 12
En este caso, 1234
hexadecimal se almacena
desde el byte de la izquierda
en el orden 34 12.
15 08 07 00
S+5 3 4 1 2

1032
Instrucciones de red Seccin 3-25

Almacenamiento de datos desde el byte de la derecha (bits 12 hasta 15


de C = 8 hexadecimal)
Ejemplo: Almacenamiento del valor 1234 hexadecimal en S+5
Los datos de la trama estn en
el orden 34 12.

Trama 34 12

En este caso, 1234


hexadecimal se almacena
desde el byte de la derecha
en el orden 34 12. 15 08 07 00
S+5 1 2 3 4

2. Datos en unidades de 4 bytes


Almacenamiento de datos desde el byte de la izquierda (bits 12 hasta 15
de C = 0 hexadecimal)
Ejemplo: Almacenamiento del valor 12345678 hexadecimal en S+5 y S+6
Los datos de la trama estn en
el orden 78 56 34 12.

Trama 78 56 34 12

En este caso, 12345678 hexa-


decimal se almacena desde el
byte de la izquierda en el orden
78 56 34 12. 15 08 07 00
S+5 7 8 5 6
S+6 3 4 1 2

Almacenamiento de datos desde el byte de la derecha (bits 12 hasta 15


de C = 8 hexadecimal)
Ejemplo: Almacenamiento del valor 12345678 hexadecimal en S+5 y S+6
Los datos de la trama estn en
el orden 78 56 34 12.

Trama 78 56 34 12

En este caso, 12345678 hexa-


decimal se almacena desde el
byte de la derecha en el orden
78 56 34 12.
15 08 07 00
S+5 5 6 7 8
S+6 1 2 3 4

Ejemplo En este ejemplo, ESATR(722) se utiliza para sobrescribir el valor configurado


de nmero de operaciones de contacto en un esclavo DRT2 (terminal de E/S).
Indicador de habilitacin de puerto
de comunicaciones (puerto 6)
000000 A20206
ESATR
S D00000
C D00100

Cuando CIO 000000 y A20206 (el indicador de habilitacin de puerto de


comunicaciones para el puerto 06) estn en ON, EXPLT(720) escribe el valor
configurado de nmero de operaciones de contacto para la entrada 2 en un
esclavo DRT2 (terminal de E/S).
(Cdigo de servicio = 10 hexadecimal), ID de categora = 08 hexadecimal, ID
de instancia = 02 hexadecimal e ID de atributo = 68 hexadecimal

1033
Instrucciones de red Seccin 3-25

En este caso el nmero de operaciones de contacto se configura como 500 (1F4


hexadecimal), as que los datos de servicio se configuran como 000001F4.
Formato de comando de mensaje explcito

10 08 02 68 F4 01 00 00

Datos de servicio: 01F4Hex


ID de atributo
ID de instancia
ID de categora
Cdigo de servicio
Direccin de nodo de destino

Unidad DeviceNet CS1W-DRM21


(Unidad de bus de CPU con nmero de unidad 2)

CPU Instruccin
ESATR(722)

Direccin de Unidad 12 hexadecimal


(porque el nmero de unidad es 2)

Mensaje Esclavo (terminal de E/S)


explcito con direccin de nodo 10

S D00000 0 0 0 C Nmero de bytes de los datos: S+1 hasta S+6 = 6 canales = 12 bytes = 0C hexadecimal
S:+1 D00001 0 0 0 A Direccin del nodo esclavo = 10 = 0A hexadecimal
S+2: D00002 0 0 0 8 ID de categora = 08 hexadecimal
S+3: D00003 0 0 0 2 ID de instancia = 02 hexadecimal
S+4: D00004 0 0 6 8 ID de atributo = 68 hexadecimal
S+5: D00005 0 1 F 4 Datos se servicio = F401 hexadecimal
S+6: D00006 0 0 0 0

Orden de bytes = 8 hexadecimal (desde el byte de la derecha), puerto de comunicaciones =


C: D00201 8 6 1 2
6 hexadecimal (puerto 6) direccin de Unidad de la Unidad DeviceNet = 12 hexadecimal
C+1: D00202 0 0 0 0 Tiempo de monitorizacin de respuesta = 0000 hexadecimal (2 s)
C+2: D00203 0 0 0 0 Tipo de formato explcito = 0000 hexadecimal (formato DeviceNet)

3-25-9 EXPLICIT WORD READ: ECHRD (723)


Empleo Lee datos en la CPU local desde otra CPU de la red. (La CPU remota debe ser
compatible con mensajes explcitos).
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0 pos-
terior.

Smbolo de diagrama de
rels
ECHRD (723)

S S: Primer canal fuente en la CPU remota

D D: Primer canal de destino de la CPU local

C C: Primer canal de control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ECHRD (723)
Se ejecuta una vez en el diferencial ascendente @ECHRD(723)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

1034
Instrucciones de red Seccin 3-25

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos S: Primer canal fuente en la CPU remota


Especifica la direccin del canal inicial que contiene los datos a leer desde la
CPU remota.
D: Primer canal de destino de la CPU local
Especifica la direccin del canal inicial en la que se almacenarn los datos
ledos en la CPU local.
C: Primer canal de control
Especifica el primero de cinco canales de control (C hasta C+4).
15 12 11 8 7 0
C 0 0

Direccin de nodo de origen (CPU remota)


(00 hasta direccin de nodo mx. (hexadecimal))
Ejemplo: DeviceNet: 00 hasta 3F hexadecimal (0 hasta 63)

15 12 11 8 7 0
C+1 0 0

Tamao de los datos de lectura (canales):


01 hasta 64 hexadecimal (1 hasta 100 canales)

15 12 11 8 7 0
C+2 0

Direccin de Unidad FINS de la Unidad de comunicaciones de retransmisin.


Unidad de bus de CPU: 10 hasta 1F hexadecimal (nmero de Unidad + 10 hexadecimal)
Unidad de E/S especial: 20 hasta 7F hexadecimal (nmero de Unidad + 20 hexadecimal)
Nmero de puerto del puerto de comunicaciones
(puerto lgico) para la instruccin de red:
0 hasta 7 hexadecimal (F hexadecimal: Asignacin automtica)
15 0
C+3

Tiempo de monitorizacin de respuesta


0001 hasta FFFF hexadecimal (0,1 hasta 6553,5 s)
0000 hexadecimal: 2 s (configuracin predeterminada)

15 0
C+4

Formato de mensaje explcito


0000 hexadecimal: DeviceNet
(el mismo que al utilizar el comando FINS 2801)

Especificaciones del
operando rea S D C
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6139
rea de Trabajo W000 hasta W511 W000 hasta W507
rea de bit en Espera H000 hasta H511 H000 hasta H507
rea Bit Auxiliar A000 hasta A959 A448 hasta A959 A000 hasta A955
rea Temporizador T0000 hasta T4095 T0000 hasta T4091
rea Contador C0000 hasta C4095 C0000 hasta C4091
rea DM D00000 hasta D32767 D00000 hasta
D32763
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32763
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32763
(n = 0 a C)

1035
Instrucciones de red Seccin 3-25

rea S D C
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Lee el nmero de canales especificado del primer canal de lectura (especificado
en S) en la CPU remota con la direccin de nodo especificada en C, y almacena
los datos en los canales de memoria de la CPU local empezando por D.
Nota ECHRD(723) enva un mensaje explcito con el cdigo de servicio 1C hexa-
decimal (Byte Data Read).

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el indicador de habilitacin de puerto de comunica-
error ciones est en OFF para el nmero de puerto de comuni-
caciones especificado en C.
OFF en el resto de los casos.

El correspondiente indicador de error de comunicaciones de mensaje expl-


cito estar en OFF si la instruccin finaliza normalmente o en ON si se pro-
duce un error.
Si se produce un error (indicador correspondiente de A213 en ON), el corres-
pondiente indicador de error de puerto de comunicaciones puede utilizarse
para determinar si el mensaje explcito no ha sido enviado (indicador corres-
pondiente de A219 en ON) o si el mensaje ha sido enviado pero hay un error
de el mensaje (indicador correspondiente de A219 en OFF).
El correspondiente cdigo de finalizacin de puerto de comunicaciones
(A203 hasta A210) ser 0000 hexadecimal si la instruccin ha finalizado nor-
malmente, un cdigo de error de mensaje explcito si se ha producido un
error de mensaje o un cdigo de error FINS si se ha producido un error FINS.
Encontrar ms detalles sobre la operacin general de las instrucciones de
red en 3-25-2 Instrucciones de mensaje explcito.

1036
Instrucciones de red Seccin 3-25

La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre Direccin Operacin
Indicador de A20200 Estos indicadores se ponen en ON para indicar que
habilitacin de hasta pueden ejecutarse instrucciones de red, incluida
puerto de comu- A20207 PMCR(260), para los puertos correspondientes (00
nicaciones hasta 07).
Un indicador se pone en OFF cuando se est ejecu-
tando una instruccin de red para el puerto correspon-
diente y en ON cuando se completa la instruccin.
Indicador de A21300 Estos indicadores se ponen en ON para indicar que se
error de comuni- hasta ha producido un error en los puertos correspondientes
caciones expl- A21307 (00 hasta 07) durante la ejecucin de comunicaciones
cito de mensaje explcito.
Los indicadores se pondrn en ON si el mensaje expl-
cito no ha sido enviado o si el mensaje ha sido enviado
pero se ha devuelto una respuesta de error.
El estado del indicador se retiene hasta que se ejecuta
la siguiente instruccin de mensaje explcito. El indica-
dor se pondr en OFF cuando se ejecute la siguiente
instruccin incluso si se ha producido un error previa-
mente.
Indicador de A21900 Estos indicadores se ponen en ON para indicar que el
error del puerto hasta mensaje explcito mismo no ha sido enviado desde los
de comunicacio- A21907 puertos correspondientes (00 hasta 07) durante la eje-
nes cucin de una instruccin de mensaje explcito.
El estado del indicador se retiene hasta que se ejecuta
la siguiente instruccin de red. El indicador se pondr
en OFF cuando se ejecute la siguiente instruccin
incluso si se ha producido un error previamente.
Cdigos de finali- A203 hasta Estos canales contienen los cdigos de finalizacin
zacin de puerto A210 para los puertos correspondientes (00 hasta 07) a conti-
de comunicacio- nuacin de la ejecucin de una instruccin de red.
nes El canal correspondiente contendr 0000 mientras
el indicador de error de comunicaciones de mensaje
explcito est en OFF.
El canal correspondiente contendr un cdigo de
error FINS cuando el indicador de error de comuni-
caciones de mensaje explcito y el indicador de error
de puerto de comunicaciones de ese puerto estn
en ON.
El canal correspondiente contendr el cdigo de
error de mensaje explcito apropiado cuando el indi-
cador de error de comunicaciones de mensaje expl-
cito de ese puerto est en ON y el indicador de error
de puerto de comunicaciones est en OFF.
El canal correspondiente contendr 0000 mientras se
ejecuta la instruccin de red y se escribir el cdigo de
finalizacin cuando se complete la instruccin. Estos
canales se borran cuando comienza la ejecucin del
programa.

Ejemplo En este ejemplo, ECHRD(723) se utiliza para leer la memoria de E/S de la


CPU de la serie CJ en una red DeviceNet y almacenar los datos en la memo-
ria de E/S de la CPU local.
Indicador de habilitacin
de puerto de comunicaciones (puerto 6)
000000 A20206
ECHRD
S D00000
D D00100
C D00200

1037
Instrucciones de red Seccin 3-25

Cuando CIO 000000 y A20206 (el indicador de habilitacin de puerto de


comunicaciones para el puerto 06) estn en ON, ECHRD(723) lee D00000
hasta D00002 de la memoria de E/S de la CPU de la serie CJ con la direccin
de nodo 07 en la red DeviceNet y almacena los datos en D00100 hasta
D00102 de la CPU local.
Unidad DeviceNet CS1W-DRM21 Unidad DeviceNet CJ1W-DRM21
(Unidad de bus de CPU con nmero de unidad 2)
Instruccin CPU
CPU ECHRD(723)

Direccin de Unidad 12 hexadecimal


(porque el nmero de unidad es 2) Direccin de nodo 07
DeviceNet

Mensaje
explcito

15 0 15 0

D: D00100 S: D00000
D+1: D00100 S+1: D00001
D+2: S+2: D00002

15 8 7 0

C: D00200 0 0 0 7 Direccin de nodo de la CPU remota a leer = 07 hexadecimal (nodo 07)


C+1: D00201 0 0 0 3 Tamao de los datos de lectura (nmero de canales) = 3 hexadecimal
Puerto de comunicaciones = 6 hexadecimal (puerto 6)
C+2: D00202 0 6 1 2
y la direccin de Unidad de la Unidad DeviceNet = 12 hexadecimal
C+3: D00203 0 0 0 0 Tiempo de monitorizacin de respuesta = 0000 hexadecimal (2 s)
C+4: D00204 0 0 0 0 Tipo de formato explcito = 0000 hexadecimal (formato DeviceNet)

3-25-10 EXPLICIT WORD WRITE: ECHWR(724)


Empleo Escribe datos desde la CPU local en otra CPU de la red. (La CPU remota
debe ser compatible con mensajes explcitos).
Esta instruccin slo es admitida por las CPUs de la serie CS/CJ Ver. 2.0
posterior.

Smbolo de diagrama de
rels
ECHWR(724)

S S: Primer canal fuente en la CPU local

D D: Primer canal de destino en la CPU remota

C C: Primer canal de control

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON ECHWR(724)
Se ejecuta una vez en el diferencial ascendente @ECHWR(724)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Primer canal fuente de la CPU local


Especifica la direccin de canal inicial de la CPU local que contiene los datos
de escritura.

1038
Instrucciones de red Seccin 3-25

D: Primer canal de destino en la CPU remota


Especifica la direccin de canal inicial del destino de escritura de la CPU
remota.
C: Primer canal de control
Especifica el primero de cinco canales de control (C hasta C+4).
15 12 11 8 7 0
C 0 0

Direccin de nodo de origen (CPU remota)


(00 hasta direccin de nodo mx. (hexadecimal))
Ejemplo: DeviceNet: 00 hasta 3F hexadecimal (0 hasta 63)

15 12 11 8 7 0
C+1 0 0

Tamao de los datos de escritura (canales):


01 hasta 64 hexadecimal (1 hasta 100 canales)

15 12 11 8 7 0
C+2 0

Direccin de Unidad FINS de la Unidad de comunicaciones de rel.


Unidad de bus de CPU: 10 hasta 1F hexadecimal (nmero de Unidad + 10 hexadecimal)
Unidad de E/S especial: 20 hasta 7F hexadecimal (nmero de Unidad + 20 hexadecimal)
Nmero de puerto del puerto de comunicaciones (puerto lgico)
para la instruccin de red: 0 hasta 7 hexadecimal.
(F hexadecimal: Asignacin automtica)
15 0
C+3

Tiempo de monitorizacin de respuesta


0001 hasta FFFF hexadecimal (0,1 hasta 6553,5 s)
0000 hexadecimal: 2 s (configuracin predeterminada)

15 0
C+4

Formato de mensaje explcito 0000 hexadecimal:


DeviceNet (el mismo que al utilizar el comando FINS 2801)

Especificaciones del
operando rea S D C
rea CIO CIO 0000 hasta CIO 6143 CIO 0000 hasta
CIO 6139
rea de Trabajo W000 hasta W511 W000 hasta W507
rea de bit en Espera H000 hasta H511 H000 hasta H507
rea Bit Auxiliar A000 hasta A959 A448 hasta A959 A000 hasta A955
rea Temporizador T0000 hasta T4095 T0000 hasta T4091
rea Contador C0000 hasta C4095 C0000 hasta C4091
rea DM D00000 hasta D32767 D00000 hasta
D32763
rea EM sin banco E00000 hasta E32767 E00000 hasta
E32763
rea EM con Banco En_00000 hasta En_32767 En_00000 hasta
(n = 0 a C) En_32763
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)

1039
Instrucciones de red Seccin 3-25

rea S D C
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Escribe el nmero especificado de canales empezando por S de la CPU local


en el destino de escritura empezando por D de la CPU remota con la direc-
cin de nodo especificada en C.
Nota ECHWR(724) enva un mensaje explcito con el cdigo de servicio 1E hexa-
decimal (Byte Data Write).
Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el indicador de habilitacin de puerto de comunica-
error ciones est en OFF para el nmero de puerto de comuni-
caciones especificado en C.
OFF en el resto de los casos.

El correspondiente indicador de error de comunicaciones de mensaje expl-


cito estar en OFF si la instruccin finaliza normalmente o en ON si se pro-
duce un error.
Si se produce un error (indicador correspondiente de A213 en ON), el corres-
pondiente indicador de error de puerto de comunicaciones puede utilizarse
para determinar si el mensaje explcito no ha sido enviado (indicador corres-
pondiente de A219 en ON) o si el mensaje ha sido enviado pero hay un error
de el mensaje (indicador correspondiente de A219 en OFF).
El correspondiente cdigo de finalizacin de puerto de comunicaciones
(A203 hasta A210) ser 0000 hexadecimal si la instruccin ha finalizado nor-
malmente, un cdigo de error de mensaje explcito si se ha producido un
error de mensaje o un cdigo de error FINS si se ha producido un error FINS.
Encontrar ms detalles sobre la operacin general de las instrucciones de
mensaje explcito en 3-25-2 Instrucciones de mensaje explcito.
La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre Direccin Operacin
Indicador de habilita- A20200 Estos indicadores se ponen en ON para indicar que
cin de puerto de hasta pueden ejecutarse instrucciones de red, incluida
comunicaciones A20207 PMCR(260), para los puertos correspondientes (00
hasta 07).
Un indicador se pone en OFF cuando se est ejecu-
tando una instruccin de red para el puerto corres-
pondiente y en ON cuando se completa la instruccin.
Indicador de error de A21300 Estos indicadores se ponen en ON para indicar que
comunicaciones hasta se ha producido un error en los puertos correspon-
explcito A21307 dientes (00 hasta 07) durante la ejecucin de comuni-
caciones de mensaje explcito.
Los indicadores se pondrn en ON si el mensaje
explcito no ha sido enviado o si el mensaje ha sido
enviado pero se ha devuelto una respuesta de error.
El estado del indicador se retiene hasta que se eje-
cuta la siguiente instruccin de mensaje explcito. El
indicador se pondr en OFF cuando se ejecute la
siguiente instruccin incluso si se ha producido un
error previamente.

1040
Instrucciones de red Seccin 3-25

Nombre Direccin Operacin


Indicador de error A21900 Estos indicadores se ponen en ON para indicar que el
del puerto de comu- hasta mensaje explcito mismo no ha sido enviado desde
nicaciones A21907 los puertos correspondientes (00 hasta 07) durante la
ejecucin de una instruccin de mensaje explcito.
El estado del indicador se retiene hasta que se eje-
cuta la siguiente instruccin de red. El indicador se
pondr en OFF cuando se ejecute la siguiente ins-
truccin incluso si se ha producido un error previa-
mente.
Cdigos de finaliza- A203 Estos canales contienen los cdigos de finalizacin
cin de puerto de hasta para los puertos correspondientes (00 hasta 07) a
comunicaciones A210 continuacin de la ejecucin de una instruccin de
red.
El canal correspondiente contendr 0000 mien-
tras el indicador de error de comunicaciones de
mensaje explcito est en OFF.
El canal correspondiente contendr un cdigo de
error FINS cuando el indicador de error de comu-
nicaciones de mensaje explcito y el indicador de
error de puerto de comunicaciones de ese puerto
estn en ON.
El canal correspondiente contendr el cdigo de
error de mensaje explcito apropiado cuando el
indicador de error de comunicaciones de mensaje
explcito de ese puerto est en ON y el indicador
de error de puerto de comunicaciones est en
OFF.
El canal correspondiente contendr 0000 mientras se
ejecuta la instruccin de red y se escribir el cdigo
de finalizacin cuando se complete la instruccin.
Estos canales se borran cuando comienza la ejecu-
cin del programa.

Ejemplo En este ejemplo, ECHWR(724) se utiliza para escribir datos de la memoria de


E/S de la CPU local en la memoria de E/S de una CPU de la serie CJ de la
red DeviceNet.
Indicador de habilitacin
de puerto de comunicaciones (puerto 6)
000000 A20206
ECHWR
S D00000
D D00100
C D00200

Cuando CIO 000000 y A20206 (el indicador de habilitacin de puerto de


comunicaciones para el puerto 06) estn en ON, ECHWR(724) lee D00000
hasta D00002 de la memoria de E/S de la CPU local y almacena los datos en
D00100 hasta D00102 de la CPU de la serie CJ con la direccin de nodo 07
en la red DeviceNet.

1041
Instrucciones de memoria de archivos Seccin 3-26

Unidad DeviceNet CS1W-DRM21 Unidad DeviceNet CJ1W-DRM21


(Unidad de bus de CPU con nmero de unidad 2)
Instruccin
CPU ECHWR(724) CPU

Direccin de Unidad 12 hexadecimal Direccin de nodo 07


(porque el nmero de unidad es 2)
DeviceNet

Mensaje
explcito

S: D00000 D: D00100
S+1: D00001 D+1: D00101
S+2: D00002 D+2: D00102

15 8 7 0

C: D00200 0 0 0 7 Direccin de nodo de la CPU remota a escribir = 07 hexadecimal (nodo 07)


C+1: D00201 0 0 0 3 Tamao de los datos de escritura (nmero de canales) = 3 hexadecimal
Puerto de comunicaciones = 6 hexadecimal (puerto 6)
C+2: D00202 0 6 1 2
y la direccin de Unidad de la Unidad DeviceNet = 12 hexadecimal
C+3: D00203 0 0 0 0 Tiempo de monitorizacin de respuesta = 0000 hexadecimal (2 s)
C+4: D00204 0 0 0 0 Tipo de formato explcito = 0000 hexadecimal (formato DeviceNet)

3-26 Instrucciones de memoria de archivos


Esta seccin describe instrucciones que se utilizan con la memoria de archi-
vos (rea EM o tarjetas de memoria)
Nota La memoria de archivos tambin puede manipularse ejecutando CMND(490)
para enviar un comando FINS a la CPU local. Consulte informacin ms
detallada en el Manual de operacin de PLC las series CS y CJ.
Instruccin Nemnico Cdigo de Pgina
funcin
READ DATA FILE FREAD 700 1045
WRITE DATA FILE FWRIT 701 1052

3-26-1 Precauciones al utilizar tarjetas de memoria


Revise los siguientes elementos antes de utilizar una tarjeta de memoria.

Formato
Las tarjetas de memoria son formateadas antes de su comercializacin. No
es necesario formatearlas despus de adquirirlas. Para formatearlas una vez
que se hayan utilizado, hgalo siempre en la CPU mediante CX-Programmer
o una consola de programacin.
Si se formatea una tarjeta de memoria directamente en un equipo porttil o
en otro tipo de ordenador, puede que la CPU no reconozca la tarjeta. Si ocu-
rre esto, no podr utilizar la tarjeta de memoria aunque le vuelva a formatear
en la CPU.

Nmero de archivos en el directorio raz


Hay un lmite en el nmero de archivos que se puede colocar en el directorio
raz de una tarjeta de memoria (igual que ocurre en el disco duro). Aunque el
lmite depende del tipo y formato de la tarjeta de memoria, ser de entre 128
y 512 archivos. Cuando utilice aplicaciones que escriban archivos de registro
o de otro tipo en un rango especfico, escriba los archivos en un subdirectorio
en lugar de hacerlo en el directorio raz.

1042
Instrucciones de memoria de archivos Seccin 3-26

Es posible crear subdirectorios en un ordenador o mediante la instruccin


CMND(490). Consulte en 3-25-5 DELIVER COMMAND: CMND(490) un
ejemplo especfico del uso de CMND(490).

Nmero de operaciones de escritura


En general, no existe lmite en cuanto al nmero de operaciones de escritura
que se puede realizar en una memoria flash. Sin embargo, en las tarjetas de
memoria, se ha establecido un lmite de 100.000 por motivos de seguridad.
Por ejemplo, si la tarjeta de memoria se escribe cada 10 minutos, se llevarn
a cabo ms de 100.000 operaciones de escritura en dos aos.

Tamao mnimo de los archivos


Si hay muchos archivos pequeos, como los que slo contienen unos cuantos
canales de datos del rea DM, almacenados en la tarjeta de memoria, no se
podr utilizar toda la capacidad de sta. Por ejemplo, si se utiliza una tarjeta de
memoria con un tamao de la unidad de asignacin de 4.096 bytes, se usarn al
menos 4.096 bytes de la memoria para cada archivo, independiente del tamao
que tenga. Si guarda 10 canales de los datos del rea DM en la tarjeta de memo-
ria, se utilizarn 4.096 bytes de memoria aunque el tamao real del archivo sea
de slo 68 bytes. El uso de archivos tan pequeos reduce en gran medida la utili-
dad de la tarjeta de memoria. Sin embargo, si el tamao de la unidad de asigna-
cin se reduce para aumentar la utilidad, se reducir la velocidad de acceso.
Es posible comprobar el tamao de la unidad de asignacin de la tarjeta de
memoria desde el smbolo de sistema de DOS mediante CHKDSK. Aqu se
omite el procedimiento especfico. Consulte las referencias generales del ordena-
dor para obtener ms informacin sobre el tamao de la unidad de asignacin.

Precauciones del acceso a la tarjeta de memoria


Cuando el PLC accede a la tarjeta de memoria, el indicador BUSY de la CPU
se ilumina. Tenga en cuenta las siguientes precauciones.

1,2,3... 1. Nunca desconecte la alimentacin de la CPU mientras este indicador est


iluminado. Si se hace esto la tarjeta de memoria puede inutilizarse.
2. Nunca extraiga la tarjeta de memoria de la CPU mientras el indicador
BUSY est iluminado. Desconecte la alimentacin de la tarjeta de memo-
ria y espere hasta que el indicador BUSY se apague antes de extraer la
tarjeta. sta puede quedar inutilizada si no se siguen estos pasos.
3. Inserte la tarjeta de memoria con la etiqueta orientada hacia la derecha.
No intente insertarla en otra posicin. La tarjeta de memoria o la CPU pue-
den resultar daadas.
4. Se necesitan unos cuantos segundos para que la CPU reconozca la tarje-
ta de memoria despus de insertarla. Si se accede a la tarjeta de memoria
inmediatamente despus de haber conectado la alimentacin o de haber
insertado la tarjeta, es necesario programar una condicin NC para el in-
dicador de tarjeta de memoria reconocida (A34315) como una condicin
de entrada, tal y como se muestra a continuacin.
Condicin de
ejecucin A34315 A34313
FREAD
Indicador de Indicador de
deteccin de operacin de C
tarjeta de memoria de
memoria archivos S1
S2
D

Nota La estructura de los archivos de datos es como se muestra a continuacin.

1043
Instrucciones de memoria de archivos Seccin 3-26

Para formato binario (.IOM), los datos sern como sigue cuando 1234 hexa-
decimal, 5678 hexadecimal, 9ABC hexadecimal y DEF0 hexadecimal se
almacenen en el archivo ABC.IOM (aunque el usuario no necesita preocu-
parse de esta estructura normalmente):
XX
XX
48 bytes (reservado
hasta para uso de
Memoria de 1234 sistema)
E/S XX
5678 12
9ABC 34
DEF0 56
78
8 bytes
9A
BC
DE
F0
Contenido de ABC.IOM

Para formato de canal CSV (.CSV), los datos sern como sigue cuando 1234
hexadecimal, 5678 hexadecimal, 9ABC hexadecimal y DEF0 hexadecimal se
almacenen en el archivo ABC.CSV (la estructura bsica ser la misma para
datos de texto (.TXT):

31 1
32 2
4 bytes
33 3
Memoria 34 4
1234 Convertidos hasta
de E/S 2C , Delimitad
5678 ASCII
35 5
9ABC 1234,5678,9ABC,DEF0
36 6
DEF0 37 7 4 bytes
38 8
Archivo visualizado como
2C , Delimitador datos de texto
hasta

Contenido de ABC.CSV

Para formato de canal largo CSV (.CSV), los datos sern como sigue cuando
1234 hexadecimal, 5678 hexadecimal, 9ABC hexadecimal y DEF0 hexadeci-
mal se almacenen en el archivo ABC.CSV (la estructura bsica ser la misma
para datos de texto (.TXT):
35 5
36 6
Convertido a ASCII 37 7
(los canales con la 38 8
Memoria 1234 direccin ms alta
31 1 8 bytes
de E/S los primeros en el
5678 campo) 32 2
9ABC 33 3 56781234,DEF09ABC
DEF0 34 4
2C , Delimitador
Archivo visualizado como
hasta datos de texto

Contenido de ABC.CSV

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, FWRIT(701) lee


10 canales de datos desde D00400 hasta D00409 y utiliza esos datos para
sobrescribir 10 canales en el archivo \ABC\XYZ.IOM empezando por el prin-
cipio del archivo + 5 canales.

1044
Instrucciones de memoria de archivos Seccin 3-26

Memoria de archivos: Tarjeta de memoria


Funcin: Sobrescribir datos
C D1: D00200 0
Nmero de canales a escribir: 10 canales
D1
D1+1: D00201 0
D2
D1+2: D00202 0
S Canal inicial: Comienzo del archivo +5 canales
D1+3: D00203 0

D2: D00300 4 Nombre de directorio: \ABC


D2+1: D00301 4 Nombre de archivo: XYZ
D2+2: D00302 5
D2+3: D00303 5
D2+4: D00304 Ignorado

Archivo \ABC\XYZ.IOM
CPU
Cn 0
+5
Cn 5
10 Cn 14
Sobrescribir

3-26-2 READ DATA FILE: FREAD(700)


Empleo Lee los datos especificados desde el archivo de datos especificado en la
memoria de archivos en el rea de datos especificada en la CPU.

Smbolo de diagrama de
rels FREAD(700)

C C: Canal de control

S1 S1: Nmero de canales y


primer canal fuente
S2 S2: Nombre de archivo

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FREAD(700)
Se ejecuta una vez en el diferencial ascendente @FREAD(700)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal de control


Como se muestra en el siguiente diagrama, el primer dgito indica si el
archivo fuente est en la tarjeta de memoria o en la memoria de archivos de
EM, el segundo dgito del canal de control indica si deben leerse los datos
actuales o el nmero de canales de datos, el tercer dgito indica la presencia
de retornos de carro, y el cuarto dgito indica el tipo de datos.

1045
Instrucciones de memoria de archivos Seccin 3-26

C 15 12 11 8 7 4 3 0

Especificador de memoria de archivos


0: Tarjeta de memoria
1: Memoria de archivos de EM
Especificador de funcin
0: Leer datos.
1: Leer nmero de canales.
Retornos de carro:
0: Sin retornos
8: Retorno cada 10 campos*
9: Retorno cada 1 campo*
A: Retorno cada 2 campos*
B: Retorno cada 4 campos*
C: Retorno cada 5 campos*
D: Retorno cada 16 campos*

Tipo de datos (slo -EV1)


0: Binario (extensin: .IOM, canales/campo: NA)
1: Canales no delimitados (extensin: .TXT, canales/campo: 1)*
2: Canales dobles no delimitados (extensin: .TXT, canales/campo: 2)*
3: Canales delimitados por coma (extensin: .CSV, canales/campo: 1)*
4: Canales dobles delimitados por coma (extensin: .CSV, canales/campo: 2)*
5: Canales delimitados por tabulador (extensin: .TXT, canales/campo: 1)*
6: Canales dobles delimitados por tabulador (extensin: .TXT, canales/campo: 2)*
*: No puede configurarse para CPUs CS1 de la serie CS anteriores a V1@.

Nota 1. Cada campo contendr 1 canal de la memoria de E/S para los tipos de da-
tos de 1 canal y 2 canales de la memoria de E/S para los tipos de datos
de canales dobles.
2. Cuando se leen datos con retornos de carro, los bits 00 hasta 11 de C de-
ben configurarse como entre 8 y D hexadecimal
3. Con canales dobles, el primer canal de datos se almacena en la direccin
de memoria ms alta, p.ej. 12345678 se almacenara con 1234 en D00001
y 5678 en D00000.
S1 y S1+1: Nmero de elementos de lectura
El valor de 8 dgitos hexadecimal de S1 y S1+1 especifica cuntos canales o
campos deben leerse de la memoria de archivos. Si el nmero de canales o
campos especificados excede el nmero de canales del archivo de memoria, los
datos del archivo se transferirn normalmente y no se producir ningn error.
S1+1 S1
S1+1 contiene los 4 dgitos de la izquierda y
S1 contiene los 4 dgitos de la derecha.

Tipo de Bits 12 hasta 15 de C Contenidos de S1 y S1+1


datos
Binario 0 hexadecimal (binario) Nmero de canales a leer de la memoria
de archivos.
00000000 hasta 3FFFFFFF hexadecimal
Canal 1 hexadecimal (no delimitado), Nmero de campos a leer de la memoria
3 hexadecimal (delimitados por de archivos, es decir, el nmero de cana-
coma) o bien 5 hexadecimal les a leer de la memoria de archivos.
(delimitados por tabulador) 00000000 hasta 1FFFFFFF hexadecimal
Canal 2 hexadecimal (no delimitados), Nmero de campos a leer de la memoria
doble 4 hexadecimal (delimitados por de archivos, es decir, la mitad del nmero
coma) o bien 6 hexadecimal de canales a leer de la memoria de archi-
(delimitados por tabulador) vos.
00000000 hasta 0FFFFFFF hexadecimal

1046
Instrucciones de memoria de archivos Seccin 3-26

S1+2 y S1+3: Primer canal fuente


El valor de 8 dgitos hexadecimal de S1+2 y S1+3 especifica el canal inicial
de lectura del comienzo del archivo.
S1+3 S1+2
S1+3 contiene los 4 dgitos de la izquierda y
S1+2 contiene los 4 dgitos de la derecha.

Tipo de Bits 12 hasta 15 de C Contenidos de S1+2 y S1+3


datos
Binario 0 hexadecimal (binario) El canal en el que empezar la lectura por
el principio de la memoria de archivos.
00000000 hasta 3FFFFFFF hexadecimal
Canal 1 hexadecimal (no delimitados), El campo en el que empezar la lectura
3 hexadecimal (delimitados por por el principio de la memoria de archi-
coma) o bien 5 hexadecimal vos, es decir, el nmero de canales
(delimitados por tabulador) desde el principio.
00000000 hasta 1FFFFFFF hexadecimal
Canal 2 hexadecimal (no delimitados), El campo en el que empezar la lectura
doble 4 hexadecimal (delimitados por por el principio de la memoria de archi-
coma) o bien 6 hexadecimal vos, es decir, la mitad del nmero de
(delimitados por tabulador) canales desde el principio.
00000000 hasta 0FFFFFFF hexadecimal

Nota 1. S1+2 y S1+3 se utilizan solo para datos de texto y CVS sin retornos de
carro (es decir, bits 08 hasta 11 de C configurados como 0 hexadecimal)
o para datos binarios. Configure siempre S1+2 y S1+3 como 00000000
hexadecimal cuando se lean datos con retornos de carro (es decir, bits 08
hasta 11 de C configurados como entre 8 y D hexadecimal).
2. S1 hasta S1+3 deben estar en el mismo rea de datos.
3. S1 hasta S1+3 se utilizan solamente cuando se leen datos.
4. Si el canal inicial especificado excede el nmero de canales del archivo de
datos , el indicador de error de lectura de archivo (A34310) se pondr en
ON y los datos del archivo no se leern.
S2: Nombre de archivo
S2 es la direccin inicial de los canales que contienen la ruta absoluta y el
nombre de archivo en ASCII. Use ASCII a hasta z, A hasta Z, y 0 hasta 9.
El nombre completo de la ruta al directorio que contiene el archivo de datos
puede tener hasta 65 caracteres incluyendo el guin inicial (ASCII 5C). El
nombre de archivo puede tener hasta 8 caracteres, pero no estn permitidos
caracteres cero (ASCII 00) en el nombre de archivo porque el carcter cero
se utiliza para marcar el final de la cadena de caracteres. No incluya la exten-
sin del nombre de archivo, se aadir la extensin .IOM automticamente.

S2 F1 F2 Almacene la cadena de caracteres


empezando por el byte de la izquierda de S2.
S2+1 F3 F4 El nombre de ruta y nombre de archivo
pueden contener como mximo 74 caracteres
(bytes) en total, incluyendo el carcter de
S2+38 F73 F74 guin inicial y el carcter cero final.

Nota 1. Asegrese de que la cadena de caracteres que contiene el nombre de ruta


y el nombre de archivo no excede el final del rea de datos.
2. Si el archivo o directorio especificado no existe, el indicador de archivo fal-
tante (A34311) se pondr en ON y los datos del archivo no se leern.
Escriba el nombre de ruta y el nombre de archivo en ASCII empezando por el
byte de la izquierda de S2, tal y como se muestra en el siguiente ejemplo para
\ABC\XYZ.IOM. (La extensin .IOM se aade automticamente).

1047
Instrucciones de memoria de archivos Seccin 3-26

S2 "\" "A" S2 5C 41
S2+1 "B" "C" S2+1 42 43
S2+2 "\" "X" S2+2 5C 58
S2+3 "Y" "Z" S2+3 59 5A
S2+4 NUL S2+4 00

D: Primer canal de destino


Cuando se estn leyendo datos, D especifica la direccin inicial en la que se
almacenarn los datos ledos de la memoria de archivos.
Cuando se est leyendo el nmero de canales de datos, el nmero de cana-
les se escribe en D y D+1 en 8 dgitos hexadecimal (00000000 hasta
7FFFFFF). D contiene los 4 dgitos de la derecha y D+1 contiene los 4 dgitos
de la izquierda.

Descripcin Lectura de datos (tercer dgito de C = 0)


FREAD(700) lee el nmero de canales o campos especificado en S1 y S1+1 del
archivo especificado en S2 (con la extensin de nombre de archivo .IOM, .TXT o
.CSV) empezando en la direccin especificada en S1+2 y S1+3. Los datos se
escriben entonces en la RAM comenzando por el canal especificado en D.
Direccin inicial del lectura Archivo especifi-
especificada en S1+2 y S1+3 cado en S2 CPU

D Nmero de canales especifi-


cados en S1 y S1+1

Tarjeta de memoria o memoria de archivo


de EM (especificada por el 1er dgito de C).

Nota Los datos se almacenan ordenados por direcciones de memoria interna


absolutas, de tal manera que los datos de salida sobrescribirn datos en el
siguiente rea de datos si se excede la capacidad del rea de datos especifi-
cada en D. Consulte ms detalles en Precauciones .
Cuando se ejecuta FREAD(700), el nmero de canales (o campos) especifi-
cado en S1 y S1+1 se escribe en A346 y A347 (nmero de datos a transferir)
y este valor disminuye en 1 segn se va transfiriendo cada canal o campo. El
contenido de estos canales puede comprobarse para verificar que se han
transferido el nmero de canales o campos esperado.
Lectura del nmero de canales de datos (tercer dgito de C=1)
FREAD(700) busca el nmero de canales en el archivo especificado en S2
(con la extensin de nombre de archivo .IOM) y escribe ese valor de 8 dgitos
hexadecimal en D y D+1.
Archivo
especificado en S2 CPU

Nmero de canales
Nmero de escritos en D y D+1.
canales

Tarjeta de memoria o memoria de archivo de


EM (especificada por el 1er dgito de C).

1048
Instrucciones de memoria de archivos Seccin 3-26

Especificaciones del
operando rea C S1 S2 D
rea CIO CIO 0000 CIO 0000 CIO 0000 hasta CIO 6143
hasta CIO6143 hasta
CIO 6140
rea de Trabajo W000 hasta W000 hasta W000 hasta W511
W511 W508
rea de bit en H000 hasta H000 hasta H000 hasta W511
Espera H511 508
rea Bit Auxiliar A000 hasta A000 hasta A000 hasta A448 hasta
A959 A444 A447 A959
A448 hasta A448 hasta
A956 A959
rea Temporizador T0000 hasta T0000 hasta T0000 hasta T4095
T4095 T4092
rea Contador C0000 hasta C0000 hasta C0000 hasta C4095
C4095 C4092
rea DM D00000 hasta D00000 hasta D00000 hasta D32767
D32767 D32764
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta E32767
E32767 E32764
rea EM con Banco En_00000 En_00000 En_00000 hasta En_32767
hasta hasta (n = 0 a C)
En_32767 En_32764
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores
especificados
Registros de datos
Registros de ndice
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si la memoria de archivo especificada en C no existe.
error ON si las configuraciones de C no estn dentro del rango
especificado.
ON si el nombre de archivo especificado en S2 no satis-
face las condiciones requeridas.
ON si el indicador de operacin de memoria de archivos
estaba en ON.
ON si no se ha especificado una constante para C (slo
para CPUs CS1 de la serie CS anteriores a V1@).
ON si los datos especificados para S1 estn fuera del
rango (todas las CPUs excepto las CPUs CS1 de la serie
CS anteriores a V1@).
ON si se especifica un rea no vlida para D.
Con las CPUs CS1D: ON si las CPUs activas y en reposo
no han podido ser sincronizadas.
OFF en el resto de los casos.

1049
Instrucciones de memoria de archivos Seccin 3-26

La siguiente tabla muestra los indicadores relevantes del rea auxiliar.


Nombre Direccin Operacin
Tipo de tarjeta de de A34300 Contiene un nmero binario indicando el tipo
memoria hasta de tarjeta de memoria, si es que hay alguna
A34302 instalada. (0: Ninguna, 4: Flash ROM)
Indicador de error de A34307 Se pone en ON cuando la tarjeta de memoria
formato de tarjeta de no est formateada o se ha producido un error
memoria de formato.
Indicador de error de A34310 ON si no se pudo leer un archivo porque los
lectura de archivo datos estaban daados o contiene un tipo de
datos incorrecto.
Indicador de archivo fal- A34311 ON cuando los datos no se han podido leer
tante porque el archivo especificado no existe.
Indicador de operacin A34313 ON para cualquiera de los siguientes:
de memoria de archi- La CPU se envi un comando FINS a s
vos misma con CMND(490).
Ejecucin de FREAD(700) o FWRIT(701) en
curso.
Se est sobrescribiendo el programa utili-
zando un bit de control de la memoria.
Copia de seguridad en curso.
Indicador de acceso a A34314 ON cuando se est accediendo a datos de
archivo archivo.
Utilice este indicador como una condicin de
ejecucin para prevenir que se ejecute una
instruccin de memoria de archivos cuando se
est ejecutando otra instruccin.
Indicador de deteccin A34315 Se pondr en ON si se ha detectado una tar-
de tarjeta de memoria jeta de memoria.
Banco inicial de for- A344 Contiene el nmero de banco inicial del rea de
mato de archivo de EM EM que ha sido formateado para su uso como
memoria de archivos de EM. Contiene FFFF no
se ha formateado nada del rea de EM.
Para convertir el rea de EM para su uso como
memoria de archivos, la configuracin de memo-
ria de archivos de EM de la configuracin del
PLC debe ajustarse como 1 y debe configurarse
el banco inicial de memoria de archivos de EM
(0 a C). Todos los bancos de EM desde el banco
inicial al banco final se formatearn para su uso
como memoria de archivos.
Indicador de error de A34306 ON cuando hay un error de formateo en el
formato de la memoria banco inicial de la memoria de archivos de
de archivos de EM EM.
Nmero de datos a A346 Los contenidos de estos canales indican el es-
transferir hasta tado de las transferencias de archivos de datos.
A347 Cuando se ejecuta una instruccin
FREAD(700) o FWRIT(701), el nmero de
canales o campos a transferir se escribe en
estos canales. El valor disminuye en 1 segn
se va transfiriendo cana canal o campo.
A346 contiene los 16 bits de la derecha y
A347 contiene los 16 bits de la izquierda del
valor binario de 32 bits.

Precauciones Durante el procesamiento normal de instrucciones, FREAD(700) se utiliza slo


para inicial la lectura de la memoria de archivos. Los tiempos de ejecucin rela-
cionados al final de este manual son por tanto los tiempos requeridos para iniciar
la lectura, no para completarla. La lectura real (transferencia) se lleva a cabo
mediante el procesamiento de acceso a archivos en el servicio de perifricos.
Por lo tanto, una vez se haya ejecutado FREAD(700), la lectura se ejecuta de
forma continuada incluso si la condicin de ejecucin est en OFF en los siguien-
tes ciclos. Cuando la transferencia se ha completado, el indicador de operacin
de memoria de archivos (A34313) se pone en OFF. Este indicador puede utili-
zarse para control exclusivo de las instrucciones de memoria de archivos.

1050
Instrucciones de memoria de archivos Seccin 3-26

El tiempo requerido por FREAD(700) para completar la transferencia de datos


depender de la cantidad de datos que se transfieren, el tiempo de servicio asig-
nado al procesamiento de acceso a archivos y otras condiciones. Como orienta-
cin, los tiempos de transferencia para un tiempo de ciclo de 10 ms para un
archivo del directorio raz con las configuraciones de tiempo de servicio predeter-
minadas ser de 0,92 s para 1.024 canales y de 4,64 s para 9.999 canales.
El indicador de operacin de memoria de archivos (A34313) se pone en ON
cuando se ejecuta FREAD(700). Se producir un error y la instruccin no se eje-
cutar si A34313 ya est en ON.
El indicador de error de lectura de archivos (A34310) se pondr en ON y la ins-
truccin no se ejecutar si el archivo especificado contiene el tipo de datos err-
neo o si los datos del archivo estn daados. Para archivos de texto o CSV, el
cdigo de caracteres debe ser datos hexadecimales y debe haber delimitadores
cada 4 dgitos para datos de canal y cada 8 dgitos para datos de canal doble.
Los datos se leern hasta que se detecte un carcter no vlido.
La CPU necesita algunos segundos para detectar una tarjeta de memoria
una vez esta ha sido insertada. Si se va a acceder a una tarjeta de memoria
poco despus de poner en ON la alimentacin o de insertar una tarjeta de
memoria, utilice el indicador de deteccin de tarjeta de memoria (A34315) en
una condicin de entrada NA como se muestra a continuacin para asegu-
rarse de que la tarjeta de memoria ha sido detectada.
Condicin de
ejecucin A34315 A34313
FREAD

Indicador de Indicador de C
deteccin de operacin de S1
tarjeta de memoria de
memoria S2
archivos
D

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, FREAD(700) lee


10 canales de datos del archivo \ABC\XYZ.IOM empezando por el principio del
archivo + 5 canales y entrega estos 10 canales a D00400 hasta D00409.

Memoria de archivos: Tarjeta de memoria


Funcin: Leer datos

Nmero de canales a leer: 10 canales

Canal inicial: Comienzo del archivo


+5 canales

Nombre de directorio: \ABC


Nombre de archivo: XYZ

Ignorado

Archivo \ABC\XYZ.IOM
CPU
Cn 0

+5 Cn 5
+10

Cn 14

1051
Instrucciones de memoria de archivos Seccin 3-26

3-26-3 WRITE DATA FILE: FWRIT(701)


Empleo Sobrescribe o anexiona datos en el archivo de datos especificado de la
memoria de archivos, con los datos especificados del rea de datos de la
CPU. Si el archivo especificado no existe se crea un nuevo archivo con ese
nombre de archivo. Los datos pueden escribirse como datos en formato bina-
rio, texto o CSV.

Smbolo de diagrama de
rels FWRIT(701)

C C: Canal de control

D1 D1: Primer canal de destino

D2 D2: Nombre de archivo

S S: Primer canal fuente

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FWRIT(701)
Se ejecuta una vez en el diferencial ascendente @FWRIT(701)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal de control


Como se muestra en el siguiente diagrama, el tercer dgito del canal de con-
trol indica si anexionar o sobrescribir datos en el archivo de datos y le cuarto
dgito indica si el archivo de destino est en la tarjeta de memoria o en la
memoria de archivos de EM.
15 12 11 8 7 4 3 0

Especificador de memoria de archivos


0: Tarjeta de memoria
1: Memoria de archivos de EM
Especificador de funcin
0: Anexionar
1: Sobrescribir
Retornos de carro:
0: Sin retornos
8: Retorno cada 10 campos*
9: Retorno cada 1 campo*
A: Retorno cada 2 campos*
B: Retorno cada 4 campos*
C: Retorno cada 5 campos*
D: Retorno cada 16 campos*
Tipo de datos
0: Binario (extensin: .IOM, canales/campo: NA)
1: Canales no delimitados (extensin: .TXT, canales/campo: 1)*
2: Canales dobles no delimitados (extensin: .TXT, canales/campo: 2)*
3: Canales delimitados por coma (extensin: .CSV, canales/campo: 1)*
4: Canales dobles delimitados por coma (extensin: .CSV, canales/campo: 2)*
5: Canales delimitados por tabulador (extensin: .TXT, canales/campo: 1)*
6: Canales dobles delimitados por tabulador (extensin: .TXT, canales/campo: 2)*
*: No puede configurarse para CPUs CS1 de la serie CS anteriores a V1@.

1052
Instrucciones de memoria de archivos Seccin 3-26

Nota 1. Cada campo contendr 1 canal de la memoria de E/S para los tipos de da-
tos de 1 y 2 canales de la memoria de E/S para los tipos de datos de ca-
nales dobles.
2. Con canales dobles, se lee el primer canal de datos de la direccin de me-
moria ms alta, p.ej. 12345678 se escribira con 1234 desde D00001 y
5678 desde D00000.
3. Si se especifica delimitacin, se aade el especificador de delimitacin
despus de cada canal para tipos de datos de un canal y despus de cada
dos canales para tipos de datos de canal doble. (Se aade el cdigo para
una coma para delimitacin con coma y el cdigo para un tabulador para
delimitacin con tabulador).
4. Si se especifican canales o canales dobles sin delimitacin, los datos para
todos los campos se escriben continuamente sin delimitadores).
5. Si se especifican retornos de carro se aadir un retorno de carro despus
de cada juego para el nmero de canales especificado. Si no se especifi-
can retornos de carro los datos se escribirn de forma continua son retor-
nos de carro.
D1 y D1+1: Nmero de elementos de escritura
El valor de 8 dgitos hexadecimal de D1 y D1+1 especifica cuntos canales o
campos deben escribirse en la memoria de archivos.
D1+1 D1
D1+1 contiene los 4 dgitos de la izquierda y
D1 contiene los 4 dgitos de la derecha.

Tipo de Bits 12 hasta 15 de C Contenidos de D1 y D1+1


datos
Binario 0 hexadecimal (binario) Nmero de canales a escribir de la
memoria de archivos.
00000000 hasta 3FFFFFFF hexadecimal
Canal 1 hexadecimal (no delimitados), Nmero de campos a escribir de la
3 hexadecimal (delimitados por memoria de archivos, es decir, el nmero
coma) o bien 5 hexadecimal de canales a escribir de la memoria de
(delimitados por tabulador) archivos.
00000000 hasta 1FFFFFFF hexadecimal
Canal doble 2 hexadecimal (no delimitados), Nmero de campos a escribir de la
4 hexadecimal (delimitados por memoria de archivos, es decir, la mitad
coma) o bien 6 hexadecimal del nmero de canales a escribir de la
(delimitados por tabulador) memoria de archivos.
00000000 hasta 0FFFFFFF hexadecimal

D1+2 y D1+3: Primer canal de destino


El valor de 8 dgitos hexadecimal de D1+2 y D1+3 especifica el canal inicial
de escritura del comienzo del archivo.
D1+3 D1+2
D1+3 contiene los 4 dgitos de la izquierda y
D2 contiene los 4 dgitos de la derecha.

Tipo de Bits 12 hasta 15 de C Contenidos de D1+2 y D1+3


datos
Binario 0 hexadecimal (binario) El canal en el que empezar la escritura des-
de el principio de la memoria de archivos.
00000000 hasta 3FFFFFFF hexadecimal
Canal 1 hexadecimal (no delimitados), El campo en el que empezar la escritura
3 hexadecimal (delimitados por por el principio de la memoria de archivos,
coma) o bien 5 hexadecimal es decir, el nmero de canales desde el
(delimitados por tabulador) principio.
00000000 hasta 1FFFFFFF hexadecimal
Canal 2 hexadecimal (no delimitados), El campo en el que empezar la escritura
doble 4 hexadecimal (delimitados por por el principio de la memoria de archivos,
coma) o bien 6 hexadecimal es decir, la mitad del nmero de canales
(delimitados por tabulador) desde el principio.
00000000 hasta 0FFFFFFF hexadecimal

1053
Instrucciones de memoria de archivos Seccin 3-26

Nota 1. D1+2 y D1+3 se utilizan slo para sobrescribir datos, y slo 1) para datos
de texto y CVS sin retornos de carro (es decir, bits 08 hasta 11 de C con-
figurados como 0 hexadecimal) o 2) para datos binarios. Configure siem-
pre D1+2 y D1+3 como 00000000 hexadecimal cuando se escriban datos
con retornos de carro (es decir, bits 08 hasta 11 de C configurados como
entre 8 y D hexadecimal).
2. D1 hasta D1+3 deben estar en el mismo rea de datos.
3. Si el canal inicial especificado excede el nmero de canales del archivo de
datos, el indicador de error de escritura de archivo (A34308) se pondr en
ON y los datos no se escribirn.
D2: Nombre de archivo
D2 es la direccin inicial de los canales que contienen la ruta absoluta y el
nombre de archivo en ASCII. Use ASCII a hasta z, A hasta Z, y 0 hasta 9.
El nombre completo de la ruta al directorio que contiene el archivo de datos
puede tener hasta 65 caracteres incluyendo el guin inicial (ASCII 5C). El nom-
bre de archivo puede tener hasta 8 caracteres, pero no estn permitidos caracte-
res cero (ASCII 00) en el nombre de archivo porque el carcter cero se utiliza
para marcar el final de la cadena de caracteres. No incluya la extensin del nom-
bre de archivo, se aadir la extensin .IOM, .TXT o .CSV automticamente.

D2 F1 F2 Almacene la cadena de caracteres


empezando por el byte de la izquierda de D2.
D2+1 F3 F4 El nombre de ruta y nombre de archivo
pueden contener como mximo 74 caracteres
(bytes) en total, incluyendo el carcter de
D2+38 F73 F74 guin inicial y el carcter cero final.

Nota 1. Asegrese de que la cadena de caracteres que contiene el nombre de ruta


y el nombre de archivo no excede el final del rea de datos.
2. Si el archivo o directorio especificado no existe, el indicador de archivo fal-
tante (A34311) se pondr en ON y los datos del archivo no se escribirn.
Escriba el nombre de ruta y el nombre de archivo en ASCII empezando por el
byte de la izquierda de D2, tal y como se muestra en el siguiente ejemplo
para \ABC\XYZ.IOM. (La extensin se aade automticamente).
D2 *\ * *A* D2 5C 41
D2+1 *B* *C* D2+1 42 43
D2+2 *\ * *X* D2+2 5C 58
D2+3 *Y* *Z * D2+3 59 5A
D2+4 NUL D2+4 00

S: Primer canal fuente


S especifica la direccin inicial que contiene los datos que se scribirn en la
memoria de archivos. Los datos se leen mediante direcciones de memoria de
PLC abolutas, as que FWRIT(701) continuar leyendo datos de origen del
siguiente rea de datos si el nmero de canales que se est leyendo excede
el final del rea de datos especificada en S.
Descripcin Durante el procesamiento normal de instrucciones, FWRIT(701) se utiliza
solamente para iniciar la escritura de la memoria de archivos. Los tiempos de
ejecucin de instruccin dados al final de este manual son por ello los tiem-
pos requeridos para iniciar la escritura, no para completarla. La escritura real
(transferencia) se realiza mediante el procesamiento de acceso a archivos en
el servicio de perifricos. Por lo tanto, una vez se haya ejecutado
FWRIT(701), la escritura se ejecuta de forma continua incluso si la condicin
de ejecucin est en OFF en los siguientes ciclos. Cuando la transferencia se
ha completado, el indicador de operacin de memoria de archivos (A34313)
se pone en OFF. Este indicador puede utilizarse para control exclusivo de las
instrucciones de memoria de archivos.

1054
Instrucciones de memoria de archivos Seccin 3-26

El tiempo requerido por FWRIT(701) para completar la transferencia de datos


depender de la cantidad de datos de transferencia, el tiempo de servicio
asignado al procesamiento de acceso a archivos y otras condiciones. Como
orientacin, los tiempos de transferencia para un tiempo de ciclo de 10 ms
para un archivo del directorio raz con las configuraciones de tiempo de servi-
cio predeterminadas ser de 1,97 s (nuevo archivo) o de 1,33 s (archivo exis-
tente) para 1.024 canales y de 6,64 s (nueco archivo) o de 6.,2 s (archivo
existente) para 9.999 canales.
Los datos de origen se leen desde las direcciones de memoria interna abso-
lutas de la RAM, de tal manera que se leer el bloque de datos entero incluso
si los datos ocupan dos o ms reas de datos. Por ejemplo, si la primera
direccin de destino est en el rea de trabajo pero la cantidad de datos
excede la capacidad de este rea, FWRIT(701) continuar leyendo datos por
el comienzo del siguiente rea (es este caso, el rea de temporizador). En el
Apndice D del Manual de operacin de controladores lgicos de la serie CS/
CJ (W339) encontrar un mapa de la memoria mostrando la ubicacin de las
reas de datos de la RAM.
Cuando se ejecuta FWRIT(701), se escribe el nmero de canales o campos
de D1 y D1+1 en A346 y A347 (nmero de datos de transferencia) y este
valor disminuye en 1 segn se transfiere cada canal o campo. El contenido de
estos canales puede comprobarse para verificar que se han transferido el
nmero de canales o campos esperado.
Sobrescritura de datos en un archivo existente (tercer dgito de C=1)
FWRIT(701) utiliza datos del rea de datos empezando por el canal especificado
en S para sobrescribir datos de la memoria de archivos en el tipo de datos espe-
cificado. Sobrescribe el nmero de canales o campos especificado en D1 y D1+1
en el archivo especificado en D2 (con la extensin de nombre de archivo .IOM,
.TXT o .CVS) empezando por la direccin especificada en D1+2 y D1+3.
CPU Canal inicial Archivo especificado en D2
especificado
Direccin en D1+2 y
inicial D1+3
especifi- Nmero de cana-
cada en les especificados
S en D1 y D1+1

Sobrescribir
Tarjeta de memoria o memoria de archivo
de EM (especificada por el 1er dgito de C).

Anexin de datos en un archivo existente (tercer dgito de C=0)


FWRIT(701) anexiona datos del rea de datos empezando por el canal espe-
cificado en S en un archivo de datos de la memoria de archivos en el tipo de
datos especificado. Anexiona el nmero de canales o campos especificado
en D1 y D1+1 en el archivo especificado en D2 (con la extensin de nombre
de archivo .IOM, .TXT o .CVS).
CPU Archivo especificado en D2
Fin de
Direccin archivo Datos
inicial existentes
especifi- Nmero de cana-
cada en les especificados
en D1 y D1+1
S
Anexionar
Tarjeta de memoria o memoria de archivo
de EM (especificada por el 1er dgito de C).

Creacin de un nuevo archivo con datos de origen


Si el archivo especificado en D2 no existe, FWRIT(701) crea un nuevo archivo
con ese nombre y la extensin de archivo (.IOM, .TXT o .CVS) y escribe los
datos de origen especificados en el tipo de datos especificado empezando en

1055
Instrucciones de memoria de archivos Seccin 3-26

el comienzo del archivo. En este caso no importa si se especifica la anexin o


sobrescritura de datos.
Comienzo Archivo es-
de archivo pecificado Nuevo archivo creado
CPU en D2
Direccin
inicial es- Nmero de cana-
pecifica- les especificados
en D1 y D1+1
da en S

Tarjeta de memoria o memoria de archivo


de EM (especificada por el 1er dgito de C).

Especificaciones del
operando rea C D1 D2 S
rea CIO CIO 0000 CIO 0000 CIO 0000 hasta CIO 6143
hasta hasta
CIO 6143 CIO 6140
rea de Trabajo W000 hasta W000 hasta W000 hasta W511
W511 W508
rea de bit en H000 hasta H000 hasta H000 hasta H511
Espera H511 508
rea Bit Auxiliar A000 hasta A000 hasta A000 hasta A447
A959 A444 A448 hasta A959
A448 hasta
A956
rea Temporizador T0000 hasta T0000 hasta T0000 hasta T4095
T4095 T4092
rea Contador C0000 hasta C0000 hasta C0000 hasta C4095
C4095 C4092
rea DM D00000 hasta D00000 hasta D00000 hasta D32767
D32767 D32764
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta E32767
E32767 E32764
rea EM con Banco En_00000 En_00000 En_00000 hasta En_32767
hasta hasta (n = 0 a C)
En_32767 En_32764
(n = 0 a C) (n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores
especificados
Registros de datos
Registros de ndice
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

1056
Instrucciones de memoria de archivos Seccin 3-26

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el tipo de memoria de archivos especificado en C
error no existe.
ON si las configuraciones de C no estn dentro del rango
especificado.
ON si el nombre de archivo especificado en D2 con cum-
ple las condiciones requeridas.
ON si el indicador de operacin de memoria de archivos
estaba en ON.
ON si no se ha especificado una constante para C (slo
para CPUs CS1 de la serie CS anteriores a V1).
ON si los datos especificados para D1 estn fuera del
rango (todas las CPUs excepto CPUs CS1 de la serie CS
anteriores a V1).
ON si se especifica un rea no vlida para S.
Con las CPUs CS1D: ON si las CPUs activas y en reposo
no han podido ser sincronizadas.
OFF en el resto de los casos.

La siguiente tabla muestra los indicadores relevantes del rea auxiliar.


Nombre Direccin Operacin
Tipo de tarjeta de A34300 Contiene un nmero binario indicando el tipo
memoria hasta de tarjeta de memoria, si es que hay alguna
A34302 instalada. (0: Ninguno, 4: Flash ROM)
Indicador de error de A34307 Se pone en ON cuando la tarjeta de memoria
formato de tarjeta de no est formateada o se ha producido un error
memoria de formato.
Indicador de error de A34308 ON si se ha producido un error al escribir en el
escritura de archivo archivo.
Indicador de imposibili- A34309 ON si no ha sido posible escribir los datos por
dad de escritura de tratarse de un archivo protegido o por no dispo-
archivo ner de suficiente espacio libre en la memoria.
Indicador de archivo A34311 ON cuando el directorio especificado no existe
inexistente al escribir un archivo.
Indicador de operacin A34313 ON para cualquiera de los siguientes:
de memoria de archi- La CPU se envi un comando FINS a s
vos misma con CMND(490).
Ejecucin de FREAD(700) o FWRIT(701) en
curso.
Se est sobrescribiendo el programa utili-
zando un bit de control de la memoria.
Copia de seguridad en curso.
Indicador de acceso a A34314 ON cuando se est accediendo a datos de
archivo archivo.
Utilice este indicador como una condicin de
ejecucin para prevenir que se ejecute una
instruccin de memoria de archivos cuando se
est ejecutando otra instruccin.
Indicador de deteccin A34315 Se pondr en ON si se ha detectado una tar-
de tarjeta de memoria jeta de memoria.
Banco inicial de for- A344 Contiene el nmero de banco inicial del rea de
mato de archivo de EM EM que ha sido formateado para su uso como
memoria de archivos de EM. Contiene FFFF no
se ha formateado nada del rea de EM.
Para convertir el rea de EM para su uso como
memoria de archivos, la configuracin de
memoria de archivos de EM de la configuracin
del PLC debe ajustarse como 1 y debe configu-
rarse el banco inicial de memoria de archivos
de EM (0 a C). Todos los bancos de EM desde
el banco inicial al banco final se formatearn
para su uso como memoria de archivos.

1057
Instrucciones de visualizacin: DISPLAY MESSAGE: MSG(046) Seccin 3-27

Nombre Direccin Operacin


Indicador de error de A34306 ON cuando hay un error de formateo en el
formato de la memoria banco inicial de la memoria de archivos de
de archivos de EM EM.
Nmero de datos a A346 Los contenidos de estos canales indican el es-
transferir hasta tado de las transferencias de archivos de datos.
A347 Cuando se ejecuta una instruccin FWRIT(701),
se escribe el nmero de canales o campos a
transferir en estos canales. El valor disminuye en
1 segn se transfiere cada canal.
A346 contiene los 16 bits de la derecha y
A347 contiene los 16 bits de la izquierda del
valor binario de 32 bits.

Precauciones El indicador de operacin de la memoria de archivos (A34313) se pone en


ON cuando se ejecuta FWRIT(701). Se producir un error y la instruccin no
se ejecutar si A34313 ya est en ON.
El indicador de imposibilidad de escritura de archivo (A34309) se pondr en
ON y la instruccin no se ejecutar si los datos no han podido ser escritos
porque el archivo estaba protegido contra escritura o no haba suficiente
memoria libre.
El indicador de error de escritura de archivo (A34308) se pondr en ON y la
instruccin no se ejecutar si el archivo especificado no es del tipo de datos
correcto o los datos del archivo estn daados.
La CPU necesita algunos segundos para detectar una tarjeta de memoria
una vez esta ha sido insertada. Si se va a acceder a una tarjeta de memoria
poco despus de poner en ON la alimentacin o de insertar una tarjeta de
memoria, utilice el indicador de deteccin de tarjeta de memoria (A34315) en
una condicin de entrada NA como se muestra a continuacin para asegu-
rarse de que la tarjeta de memoria ha sido detectada.
Condicin de
ejecucin A34315 A34313
FWRIT
C
Indicador de Indicador de
deteccin de operacin de D1
tarjeta de memoria memoria de archivos D2
S

3-27 Instrucciones de visualizacin: DISPLAY MESSAGE:


MSG(046)
Empleo Lee las 16 palabras especificadas de ASCII extendido y muestra el mensaje
en un dispositivo perifrico, como una consola de programacin.

Smbolo de diagrama de
rels MSG(046)

N N: Nmero de mensaje

M M: Primer canal de mensaje

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MSG(046)
Se ejecuta una vez en el diferencial ascendente @MSG(046)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

1058
Instrucciones de visualizacin: DISPLAY MESSAGE: MSG(046) Seccin 3-27

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de mensaje


El nmero de mensaje debe ser 0000 hasta 0007 hexadecimal (o bien 0
hasta 7 decimal).
M: Primer canal de mensaje
Cuando se visualiza un mensaje, M especifica la direccin del primer canal
que contiene el mensaje en ASCII. Cuando se borra un mensaje, M puede
ser cualquier constante hexadecimal (0000 hasta FFFF).

Especificaciones del
operando rea N M
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta #0007 (binario) #0000 hasta #FFFF (bina-
o bien &0 hasta &7 rio)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Cuando la condicin de ejecucin est en ON, MSG(046) registra los 16 canales
de datos ASCII (hasta 32 caracteres inlcuyendo el carcter cero) desde M hasta
M+15 para el nmero de mensaje especificado en N. Una vez ha sido registrado
un mensaje, puede conectarse una consola de programacin y el mensaje se
visualizar despus de cualquier mensaje de error que se haya generado.
Una vez se ha registrado un mensaje, la visualizacin del mensaje puede modifi-
carse sobrescribiendo el mensaje en el rea de almacenamiento de mensajes.
Para borrar un mensaje que ha sido registrado, ejecute MSG(046) con S configu-
rado como el nmero de mensaje que desea borrar y N configurado como una
constante (0000 hasta FFFF).

1059
Instrucciones de visualizacin: DISPLAY MESSAGE: MSG(046) Seccin 3-27

Un mensaje registrado durante la ejecucin del programa ser retenido


incluso si se detiene la ejecucin del mensaje, pero todos los mensaje se
borrarn cuando el programa se ejecute de nuevo.
Nota Consulte en el Apndice A del Manual de operacin de las consolas de pro-
gramacin de la serie CS/CJ (W341) una tabla de ASCII ampliados.

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si el contenido de S no es 0000 hasta 0007 hexadecimal.
de error OFF en el resto de los casos.

Precauciones Los mensajes registrados se actualizan cada vez que se ejecuta MSG(046).
Todos los mensajes despus del carcter cero (00) se convierten en espacios
en la visualizacin de la consola de programacin.
El carcter almacenado en el byte de la izquierda se visualiza antes del
carcter del byte de la derecha.
Ejemplos El siguiente diagrama muestra cmo se convierten 16 canales de datos hexa-
decimales en un mensaje visualizado en la consola de programacin.
Display de la consola de programacin

N 4
N+1 4
16 canales MSG
N+2 4
(32 caracteres) A B C D E F

N+15 B
16 caracteres 2 lneas

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, los 16 canales de


datos de D00100 hasta D00115 se leen como los 32 caracteres de datos ASCII
para el nmero de mensaje 7 y se visualizan en el dispositivo perifrico.

N
M

M: 4D 41 16 caracteres 2 lneas mx.


54 45 Lee los datos
52 49 ASCII hasta 00.
MSG
41 4C MATERIAL SHORT
20 53
48 4F Espacios
52 54
D00107
Dejar espacios libres.
(se ignoran los valores)
D00115

1060
Instrucciones de reloj Seccin 3-28

ASCII
Cuatro bits ms a la izquierda

SP

Cuatro bits ms a la derecha

3-28 Instrucciones de reloj


Esta seccin describe las instrucciones utilizadas con el reloj de sistema.
Instruccin Nemnico Cdigo de funcin Pgina
CALENDAR ADD CADD 730 1061
CALENDAR SUBTRACT CSUB 731 1065
HOURS TO SECONDS SEC 065 1068
SECONDS TO HOURS HMS 066 1070
CLOCK ADJUSTMENT DATE 735 1073

3-28-1 CALENDAR ADD: CADD(730)


Empleo Aade la hora a los datos del calendario de los canales especificados.
Smbolo de diagrama de
rels CADD(730)
C: Primer canal de
C calendario
T T: Primer canal de la hora

R R: Primer canal de
resultado
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CADD(730)
Se ejecuta una vez en el diferencial ascendente @CADD(730)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

1061
Instrucciones de reloj Seccin 3-28

Operandos C hasta C+2: Datos de calendario


Configure los datos de calendario en C hasta C+2 como se muestra en el
siguiente diagrama.
C hasta C+2 deben estar en el mismo rea de datos.
15 8 7 0
C

Segundos: 00 hasta 59 (BCD)

Minutos: 00 hasta 59 (BCD)


15 8 7 0
C+1

Hora: 00 hasta 23 (BCD)

Da: 01 hasta 31 (BCD)

15 8 7 0
C+2

Mes: 01 hasta 12 (BCD)

Ao: 00 hasta 99 (BCD)

T y T+1: Datos de hora


Configure los datos de hora en T y T+1 como se muestra en el siguiente
diagrama. T y T+1 deben estar en el mismo rea de datos.
15 8 7 0
T

Segundos: 00 hasta
59 (BCD)
Minutos: 00 hasta 59 (BCD)

15 0
T+1

Horas: 0000 hasta 9999 (BCD)

1062
Instrucciones de reloj Seccin 3-28

R hasta R+2: Datos de resultado


R hasta R+2 contienen los resultados de la suma. R hasta R+2 deben estar
en el mismo rea de datos.
15 8 7 0
R

Segundos: 00 hasta
59 (BCD)
Minutos: 00 hasta 59 (BCD)

15 8 7 0
R+1

Hora: 00 hasta 23 (BCD)

Da: 01 hasta 31 (BCD)

15 8 7 0
R+2

Mes: 01 hasta 12 (BCD)

Ao: 00 hasta 99 (BCD)

Especificaciones del
operando rea C T R
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6141 CIO 6142 CIO 6141
rea de Trabajo W000 hasta W000 hasta W000 hasta
W509 W510 W509
rea de bit en Espera H000 hasta H509 H000 hasta H510 H000 hasta H509
rea Bit Auxiliar A000 hasta A957 A000 hasta A958 A448 hasta A957
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4093 T4094 T4093
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4093 C4094 C4093
rea DM D00000 hasta D00000 hasta D00000 hasta
D32765 D32766 D32765
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32765 E32766 E32765
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32765 En_32766 3En_2765
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores ---
especificados
Registros de datos ---

1063
Instrucciones de reloj Seccin 3-28

rea C T R
Registros de ndice
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR005+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin CADD(730) aade los datos de calendario (canales C hasta C+2) a los datos
de hora (canales T y T+1) y entrega los datos de calendario resultantes a R
hasta R+2.

C Minutos Segundos
C+1 Da Hora
C+2 Ao Mes

T Minutos Segundos
T+1 Horas

R Minutos Segundos
R+1 Da Hora
R+2 Ao Mes

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de calendario de C hasta C+2 no estn
error dentro de los rangos especificados.
ON si los datos de hora de T hasta T+1 no estn dentro
de los rangos especificados.
OFF en el resto de los casos.

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, los datos de


calendario de D00100 hasta D00102 (ao, mes, da, hora, minutos, segun-
dos) se aaden a los datos de hora de D00200 y D00201 (horas, minutos,
segundos) y el resultado se entrega a D00300 hasta D00302.

C
T C:
18:30:20
R 99 12 10 de diciembre de 1999

T: 10 minutos, 15 segundos
06 00 600 horas

R: 18:40:35
04 18
00 01 4 de enero de 2000

1064
Instrucciones de reloj Seccin 3-28

3-28-2 CALENDAR SUBTRACT: CSUB(731)


Empleo Quita la hora a los datos del calendario de los canales especificados.

Smbolo de diagrama de
rels CSUB(731)

C C: Primer canal de
calendario
T T: Primer canal de la hora

R R: Primer canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CSUB(731)
Se ejecuta una vez en el diferencial ascendente @CSUB(731)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C hasta C+2: Datos de calendario


Configure los datos de calendario en C hasta C+2 como se muestra en el
siguiente diagrama.
C hasta C+2 deben estar en el mismo rea de datos.
15 8 7 0
C

Segundos: 00 hasta 59 (BCD)

Minutos: 00 hasta 59 (BCD)

15 8 7 0
C+1

Hora: 00 hasta 23 (BCD)

Da: 01 hasta 31 (BCD)


15 8 7 0
C+2

Mes: 01 hasta 12 (BCD)

Ao: 00 hasta 99 (BCD)

1065
Instrucciones de reloj Seccin 3-28

T y T+1: Datos de hora


Configure los datos de hora en T y T+1 como se muestra en el siguiente
diagrama. T y T+1 deben estar en el mismo rea de datos.
15 8 7 0
T

Segundos: 00 hasta 59
(BCD)
Minutos: 00 hasta 59 (BCD)

15 0
T+1

Horas: 0000 hasta 9999 (BCD)

R hasta R+2: Datos de resultado


R hasta R+2 contienen los resultados de la suma. R hasta R+2 deben estar
en el mismo rea de datos.
15 8 7 0
R

Segundos: 00 hasta
59 (BCD)
Minutos: 00 hasta 59 (BCD)

15 8 7 0
R+1

Hora: 00 hasta 23 (BCD)

Da: 01 hasta 31 (BCD)

15 8 7 0
R+2

Mes: 01 hasta 12 (BCD)

Ao: 00 hasta 99 (BCD)

Especificaciones del
operando rea C T R
rea CIO CIO 0000 hasta CIO 0000 hasta CIO 0000 hasta
CIO 6141 CIO 6142 CIO 6141
rea de Trabajo W000 hasta W000 hasta W000 hasta
W509 W510 W509
rea de bit en Espera H000 hasta H509 H000 hasta H510 H000 hasta H509
rea Bit Auxiliar A000 hasta A957 A000 hasta A958 A448 hasta A957
rea Temporizador T0000 hasta T0000 hasta T0000 hasta
T4093 T4094 T4093
rea Contador C0000 hasta C0000 hasta C0000 hasta
C4093 C4094 C4093
rea DM D00000 hasta D00000 hasta D00000 hasta
D32765 D32766 D32765

1066
Instrucciones de reloj Seccin 3-28

rea C T R
rea EM sin banco E00000 hasta E00000 hasta E00000 hasta
E32765 E32766 E32765
rea EM con Banco En_00000 hasta En_00000 hasta En_00000 hasta
En_32765 En_32766 3En_2765
(n = 0 a C) (n = 0 a C) (n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- Slo valores ---
especificados
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR005+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin CSUB(731) quita los datos de hora (canales T y T+1) de los datos de calen-
dario (canales C hasta C+2) y entrega los datos de calendario resultantes a R
hasta R+2.

C Minutos Segundos
C+1 Da Hora
C+2 Ao Mes

T Minutos Segundos
T+1 Horas

R Minutos Segundos
R+1 Da Hora
R+2 Ao Mes

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si los datos de calendario de C hasta C+2 no estn
de error dentro de los rangos especificados.
ON si los datos de hora de T hasta T+1 no estn dentro de
los rangos especificados.
OFF en el resto de los casos.

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, los datos de


hora de D00200 y D00201 (horas, minutos, segundos) se quitan de los datos
de calendario de D00100 hasta D00102 (ao, mes, da, hora, minutos, segun-
dos) y el resultado se entrega a D00300 hasta D00302.

1067
Instrucciones de reloj Seccin 3-28

C: 18:30:20
C 10 de julio de 1998
T
R 50 horas, 10 minutos,
T:
15 segundos

R: 16:20:05
8 de julio de 1998

3-28-3 HOURS TO SECONDS: SEC(065)


Empleo Convierte los datos de hora en formato horas/minutos/segundos en el tiempo
equivalente en segundos.

Smbolo de diagrama de
rels SEC(065)

S S: Primer canal fuente

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON SEC(065)
Se ejecuta una vez en el diferencial ascendente @SEC(065)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S y S+1: Datos de origen


Configure los datos de origen de horas/minutos/segundos de S y S+1 como
se muestra en el siguiente diagrama. S y S+1 deben estar en el mismo rea
de datos.
15 8 7 0
S

Segundos: 00 hasta
59 (BCD)
Minutos: 00 hasta 59 (BCD)

15 0
S+1

Horas: 0000 hasta 9999 (BCD)

1068
Instrucciones de reloj Seccin 3-28

D y D+1: Datos de resultado


D y D+1 contienen los datos de resultado en formato de slo segundos. D y
D+1 deben estar en el mismo rea de datos.
15 0
D

4 dgitos de la derecha
Segundos: 0000 hasta
9999 (BCD)
15 0
D+1

4 dgitos de la izquierda
Segundos: 0000 hasta
3599 (BCD)

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores especificados ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

1069
Instrucciones de reloj Seccin 3-28

Descripcin SEC(065) convierte los datos de 8 dgitos BCD de horas/minutos/segundos


de S y S+1 en datos de 8 dgitos BCD de slo segundos y entrega el resul-
tado a D y D+1.

Minutos Segundos
Horas

Segundos

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si los datos de minutos de S (bits 08 hasta 15) no son
de error BCD y dentro del rango 00 hasta 59.
ON si los datos de segundos de S (bits 00 hasta 07) no son
BCD y dentro del rango 00 hasta 59.
OFF en el resto de los casos.
Indicador = ON si el contenido de D es 0000 despus de la operacin.
de igual OFF en el resto de los casos.

Precauciones El valor mximo para los datos de origen es 9.999 horas, 59 minutos y 59 segun-
dos (35.999.999 segundos).

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, los datos de horas/
minutos/segundos de D00200 y D00201 (34 horas, 17 minutos y 36 segundos)
se convierten a datos de slo segundos y el resultado se entrega a D00100 y
D00101.

17 minutos, 36 segundos,
34 horas
Horas/minutos/segundos segundos

123.456 segundos

3-28-4 SECONDS TO HOURS: HMS(066)


Empleo Convierte los datos de segundos al tiempo equivalente en formato horas/
minutos/segundos.

Smbolo de diagrama de
rels HMS(066)

S S: Primer canal fuente

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON HMS(066)
Se ejecuta una vez en el diferencial ascendente @HMS(066)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

1070
Instrucciones de reloj Seccin 3-28

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S y S+1: Datos de origen


Configure los datos de origen de segundos de S y S+1 como se muestra en
el siguiente diagrama.
S y S+1 deben estar en el mismo rea de datos.
15 0
S

4 dgitos de la derecha
Segundos: 0000 hasta
9999 (BCD)
15 0
S+1

4 dgitos de la izquierda
Segundos: 0000 hasta
3599 (BCD)

D y D+1: Datos de resultado


D y D+1 contienen los datos de resultado en formato de horas/minutos/
segundos. D y D+1 deben estar en el mismo rea de datos.
15 8 7 0
D

Segundos: 00 hasta
59 (BCD)
Minutos: 00 hasta 59 (BCD)

15 0
D+1

Horas: 0000 hasta 9999 (BCD)

rea S D
rea CIO CIO 0000 hasta CIO 6142
rea de Trabajo W000 hasta W510
rea de bit en Espera H000 hasta H510
rea Bit Auxiliar A000 hasta A958 A448 hasta A958
rea Temporizador T0000 hasta T4094
rea Contador C0000 hasta C4094
rea DM D00000 hasta D32766
rea EM sin banco E00000 hasta E32766
rea EM con Banco En_00000 hasta En_32766
(n = 0 a C)

1071
Instrucciones de reloj Seccin 3-28

rea S D
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes 00000000 hasta 35999999 ---
(BCD)
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin HMS(066) convierte los datos de 8 dgitos BCD de datos de slo segundos
de S y S+1 en datos de 8 dgitos BCD de horas/minutos/segundos y entrega
el resultado a D y D+1.

Segundos

Minutos Segundos
Horas

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de segundos de S y S+1 no son BCD y
error dentro del rango 0 hasta 35.999.999.
OFF en el resto de los casos.
Indicador de = ON si el contenido de D es 0000 despus de la operacin.
igual OFF en el resto de los casos.

Precauciones El valor mximo para los datos de origen es 35.999.999 segundos (9.999
horas, 59 minutos y 59 segundos).

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, los datos de


segundos de D00100 y D00101 (123.456 segundos) se convierten a horas/
minutos/segundos y el resultado se entrega a D00200 y D00201.

S: 123.456

Segundos Horas/minutos/segundos

D: 17 minutos, 36 segundos,
34 horas

1072
Instrucciones de reloj Seccin 3-28

3-28-5 CLOCK ADJUSTMENT: DATE(735)


Empleo Cambia la configuracin del reloj interno por la de los canales fuente especifi-
cados.
Nota La configuracin del reloj interno tambin puede modificarse desde un dispo-
sitivo perifrico o con el comando CLOCK WRITE FINS (0702).

Smbolo de diagrama de
rels DATE(735)

S S: Primer canal fuente

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DATE(735)
Se ejecuta una vez en el diferencial ascendente @DATE(735)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S hasta S+3: Nueva configuracin del reloj


Configure los nuevos ajustes de reloj de S hasta S+3 como se muestra en el
siguiente diagrama.
S hasta S+3 deben estar en el mismo rea de datos.
15 8 7 0
S

Segundos: 00 hasta 59 (BCD)

Minutos: 00 hasta 59 (BCD)


15 8 7 0
S+1

Hora: 00 hasta 23 (BCD)

Da: 01 hasta 31 (BCD)

15 8 7 0
S+2

Mes: 01 hasta 12 (BCD)

Ao: 00 hasta 99 (BCD)


15 8 7 0
S+3

Da de la semana: 00 = domingo
01 = lunes
Defnalo siempre en 0. 02 = martes
03 = mircoles
04 = jueves
05 = viernes
06 = sbado
1073
Instrucciones de reloj Seccin 3-28

La siguiente tabla muestra la estructura del rea de calendario/reloj.


Direcciones Contenido
A35100 hasta A35107 Segundos (00 a 59, BCD)
A35108 hasta A35115 Minutos (00 hasta 59, BCD)
A35200 hasta A35207 Hora (00 a 23, BCD)
A35208 hasta A35215 Da del mes (01 a 31, BCD)
A35300 hasta A35307 Mes (01 a 12, BCD)
A35308 hasta A35315 Ao (00 a 99, BCD)
A35400 hasta A35407 Da de la semana (00 hasta 06 = domingo a sbado, hexade-
cimal)
A35408 hasta A35415 Defnalo siempre en 0.

Especificaciones del
operando rea S
rea CIO CIO 0000 hasta CIO 6140
rea de Trabajo W000 hasta W508
rea de bit en Espera H000 hasta H508
rea Bit Auxiliar A000 hasta A956
rea Temporizador T0000 hasta T4092
rea Contador C0000 hasta C4092
rea DM D00000 hasta D32764
rea EM sin banco E00000 hasta E32764
rea EM con Banco En_00000 hasta En_32764
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin DATE(735) modifica la configuracin del reloj interno segn los datos de reloj
de los cuatro canales fuente. La nueva configuracin de reloj interno se
refleja inmediatamente en el rea de calendario/reloj (A351 hasta A354).
CPU

Reloj interno

Nueva Minutos Segundos


configuracin Da Hora
Ao Mes
Da de la
00 semana

1074
Instrucciones de depuracin Seccin 3-29

Indicadores
Nombre Eti- Operacin
queta
Indicador de ER ON si la nueva configuracin de reloj de S hasta S+3 no
error est dentro del rango especificado.
OFF en el resto de los casos.

Precauciones No se generar un error incluso si el reloj interno se configura como una


fecha inexistente (como por ejemplo el 31 de noviembre).

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, el reloj interno


se configura como 20:15:30 el jueves 9 de octubre de 1998.

S:

Minuto Segundo

Da del Hora
mes

Ao Mes

Defnalo Da de la
siempre
semana
en 0.

3-29 Instrucciones de depuracin


3-29-1 Muestreo de memoria de seguimiento: TRSM(045)
Empleo Cuando se ejecuta TRSM(045), el estado de un bit o canal preseleccionado
se muestrea y almacena en la memoria de seguimiento. TRSM(045) se
puede utilizar en cualquier sitio del programa y las veces que se desee.

Smbolo de diagrama de
rels TRSM(045)

Variaciones
Variaciones Ejecutado cada ciclo TRSM(045)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

1075
Instrucciones de depuracin Seccin 3-29

Descripcin Antes de ejecutar TRSM(045), el bit o canal a seguir debe especificarse con
un dispositivo perifrico. Cada vez que se ejecuta TRSM(045), el valor actual
del bit o canal especificado se muestrea y registra por orden en la memoria
de seguimiento. El seguimiento finaliza cuando la memoria de seguimiento
est llena. Los contenidos de la memoria de seguimiento pueden monitori-
zarse desde un dispositivo perifrico cuando sea necesario.
rea de
TRSM(045) ejecutada. datos de PC
Bit o canal especificado

Muestreo de datos

Memoria de
seguimiento

El seguimiento finaliza
cuando la memoria de
seguimiento est llena.

Esta instruccin slo indica cundo se muestrearn los datos especificados.


El resto de las configuraciones y operaciones de seguimiento de datos se
ajustan con un dispositivo perifrico. Las otras dos maneras de controlar el
muestreo de datos son el muestreo al final de cada ciclo y el muestreo a un
intervalo especificado (independiente del tiempo de ciclo),
TRSM(045) no requiere una condicin de ejecucin y siempre se ejecuta
como si tuviera una condicin de ejecucin en ON. Conecte TRSM(045)
directamente a la barra de bus izquierda.
Use TRSM(045) para muestrear el valor del bit o canal especificado en el
punto del programa en el que la condicin de ejecucin de la instruccin est
en ON. Si la condicin de ejecucin est en ON cada ciclo, el valor del bit o
canal especificado se almacenar en la memoria de seguimiento cada ciclo.
Es posible incorporar dos o ms instrucciones TRSM(045) en un programa.
En este caso, el valor del mismo bit o canal especificado se almacenar en la
memoria de seguimiento cada vez que se ejecute una de las instrucciones
TRSM(045).
Use un dispositivo perifrico para
especificar la direccin de
seguimiento.
Los datos de la
direccin m se
almacenan
en la memoria
de seguimiento.

Los datos de la
direccin m se
almacenan
en la memoria Memoria de seguimiento
de seguimiento.

Datos almacenados cada ciclo.

Nota Consulte en el Manual de operacin del dispositivo perifrico informacin


detallada acerca del seguimiento de datos.

1076
Instrucciones de depuracin Seccin 3-29

Las operaciones de seguimiento de datos realizadas con el dispositivo perif-


rico se resumen en la siguiente lista.

1,2,3... 1. Configure los siguientes parmetros con el dispositivo perifrico.


a) Configure la direccin del bit o canal de seguimiento.
b) Especifique la condicin de activacin. Una de las siguientes condicio-
nes puede controlar cundo los datos almacenados en la memoria de
seguimiento son vlidos.
i) El bit de inicio de seguimiento cambia de OFF a ON.
ii) Un bit especificado cambia de OFF a ON.
iii) El valor de un canal especificado coincide con el valor configurado.
c) Ajuste el intervalo de muestreo como TRSM para muestrear la eje-
cucin de TRSM(045) en el programa.
d) Ajuste el retardo.
2. Cuando el bit de inicio de muestreo cambia de OFF a ON con el dispositivo
perifrico, se empezar a muestrear los datos especificados cada vez que
se ejecute TRSM(045) y los datos muestreados se almacenarn en la me-
moria de seguimiento. El indicador de seguimiento en curso (A50813) se
pondr en ON simultneamente.
3. Cuando la condicin de activacin (bit de inicio de seguimiento en ON, bit
especificado en ON o el valor del canal especificado coincide con el valor
configurado) se cumple, los datos muestreados sern vlidos empezando
por el siguiente muestreo ms o menos el nmero de muestreos configu-
rados con la configuracin de retardo. El indicador de monitorizacin de
activacin de seguimiento (A50811) se pondr en ON simultneamente.
4. El seguimiento finalizar cuando TRSM(045) haya sido ejecutada las ve-
ces suficientes para llenar la memoria de seguimiento. Cuando finaliza el
seguimiento, el indicador de seguimiento completado (A50812) se pondr
en ON y el indicador de seguimiento en curso (A50813) se pondr en OFF.
5. Lea los contenidos de la memoria de seguimiento con el dispositivo peri-
frico.
La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Slo A50814 y A50815 estn previstos para ser controlados por el usuario, y
A00815 no debe ponerse en ON desde el programa, es decir, debe ponerse
en ON solamente desde un dispositivo perifrico.
Nombre Direccin Operacin
Indicador de monito- A50811 Este indicador se pone en ON cuando la condi-
rizacin de activa- cin de activacin ha sido establecida con el bit
cin de seguimiento de inicio de seguimiento. Es puesto en OFF
cuando se inicia el muestreo para el siguiente
seguimiento (por el bit de inicio de muestreo).
Indicador de segui- A50812 Este indicador se pone en ON cuando los mues-
miento completado treos de seguimiento han llenado la memoria de
muestreo. Se pondr en OFF la prxima vez que
el bit de inicio de muestreo pase de OFF a ON.
Indicador de segui- A50813 Este indicador se pone en ON cuando el bit de
miento en curso inicio de muestreo cambia de OFF a ON. Se pon-
dr en OFF una vez finalizado el seguimiento.

1077
Instrucciones de depuracin Seccin 3-29

Nombre Direccin Operacin


Bit de inicio de A50814 Las condiciones de activacin de seguimiento se
seguimiento establecen cuando este bit cambia de OFF a ON.
Los muestreos se registrarn despus de que el
retardo especificado (retardo positivo) o el
nmero especificado de muestreos existentes
sea vlido (retardo negativo).
Bit de inicio de A50815 Cuando este bit cambia de OFF a ON desde un
muestreo dispositivo perifrico, los muestreos de datos
empezarn a almacenarse en la memoria de
muestreo con uno de los siguientes tres mtodos
utilizados para determinar el muestreo:
1) Muestreo peridico (intervalos de 10
hasta 2.550 ms)
2) Muestreo a la ejecucin de TRSM(045)
3) Muestreo al final de cada ciclo
Utilice un dispositivo perifrico para poner este
bit en ON y en OFF.

Precauciones TRSM(045) se procesa como NOP(000) cuando no se est realizando segui-


miento de datos o cuando el intervalo de muestreo configurado en los par-
metros con un dispositivo perifrico no est ajustado para realizar muestreo
con la ejecucin de la instruccin TRSM(045).
No ponga el bit de inicio de muestreo (A50815) en ON ni en OFF desde el pro-
grama. Utilice un dispositivo perifrico para poner este bit en ON y en OFF.

Ejemplo El siguiente ejemplo muestra la operacin de seguimiento de datos completa.

Operado desde el dispositivo


perifrico (bit de inicio de
muestreo: A50815)

Bit de inicio de
seguimiento: A50814

Indicador de seguimiento
en curso: A50813

Indicador de seguimiento
completado: A50812

Indicador de monitorizacin de Configura- Muestreos


activacin de seguimiento: A50811 cin de vlidos El seguimiento finaliza
retardo
cuando la memoria de
seguimiento est llena.
Muestreo
: Ejecucin de TRSM(045)
Ejemplo: datos de canal
Memoria de
seguimiento

Vase la
nota.
Vlido a partir de aqu

Nota La memoria de seguimiento tiene una estructura de anillo. Los datos se alma-
cenan hacia el final de la memoria de seguimiento hasta llegar a justo antes
del primer muestreo de datos vlido, donde finaliza el almacenamiento.

1078
Instrucciones de diagnstico de fallo Seccin 3-30

3-30 Instrucciones de diagnstico de fallo


Esta seccin describe las instrucciones utilizadas para definir y manejar errores.
Instruccin Nemnico Cdigo de Pgina
funcin
FAILURE ALARM FAL 006 1079
SEVERE FAILURE ALARM FALS 007 1087
FAILURE POINT DETECTION FPD 269 1095

3-30-1 FAILURE ALARM: FAL(006)


Empleo Genera o borra los errores no importantes definidos por el usuario. Los erro-
res no fatales no detienen el funcionamiento del PLC.
Con las CPUs CS1-H, CJ1-H y CJ1M tambin puede utilizarse FAL(006) para
generar errores no fatales de sistema.

Smbolo de diagrama de Generacin o borrado de errores no fatales definidos por el usuario.


rels
FAL(006)

N N: nmero FAL
S S: Primer canal de mensaje
o constante (0000 hasta

Generacin de errores no fatales de sistema (Slo CS1-H, CJ1-H, CJ1M


o CS1D)

FAL(006)

N N: Nmero FAL (valor de A529)


S S: Primer canal que contiene cdigo
de error y detalles de error

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FAL(006)
Se ejecuta una vez en el diferencial ascendente @FAL(006)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos La funcin de los operandos cuando se utiliza FAL(006) para generar/ borrar
errores definidos por el usuario es ligeramente diferente a la funcin cuando se
utiliza FAL(006) para generar errores de sistema (slo CPUs CS1-H, CJ1-H,
CJ1M y CS1D).

1079
Instrucciones de diagnstico de fallo Seccin 3-30

Generacin o borrado de errores no fatales definidos por el usuario.


En la tabla siguiente se muestra la funcin de los operandos.
Nota El valor del operando N debe ser diferente del contenido de A529
(el nmero FAL/FALS generado por el sistema).
N S Funcin
0 #0001 hasta Borra el error no fatal con el nmero FAL
#01FF correspondiente.
#FFFF Borra todos los errores no fatales.
Otro* Borra los errores no fatales ms graves.
1 hasta 511 #0000 hasta Genera un error no fatal con el nmero FAL
(Estos nmeros #FFFF correspondiente (son mensaje).
FAL son compar- Direccin de Genera un error no fatal con el nmero FAL
tidos con los canal correspondiente.
nmeros FALS). El mensaje de 16 caracteres ASCII contenido
en S hasta S+7 se visualizar en el dispositivo
de programacin.

Nota *Otras configuraciones seran las constantes #0200 hasta #FFFE o una direc-
cin de canal.
Generacin de errores no fatales de sistema (Slo CS1-H, CJ1-H, CJ1M o
CS1D)
En la tabla siguiente se muestra la funcin de los operandos.
Nota El valor del operando N debe ser el mismo que el contenido de
A529 (el nmero FAL/FALS generado por el sistema).
Operando Funcin
N 1 hasta 511 (Estos nmeros FAL son compartidos con los nmeros
FALS).
S Cdigo de error que se generar. (Consulte la siguiente Descripcin).
S+1 Cdigo de detalles de error que se generar. (Consulte la siguiente
Descripcin).

Especificaciones del
operando rea N S
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 hasta A959
rea Temporizador --- T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes 0 hasta 511 #0000 hasta #FFFF
(Binario)
Registros de datos ---

1080
Instrucciones de diagnstico de fallo Seccin 3-30

rea N S
Registros de ndice ---
Direccionamiento indi- --- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta
tros de ndice 2048 hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin La operacin de FAL(006) depende del valor de N. Configure N como 0000


para borrar un error y configure N como 0001 hasta 01FF para generar un
error. Se generar un error de sistema si el valor de N es igual al contenido de
A529 (slo CPUs CS1-H, CJ1-H, CJ1M y CS1D).
Generacin de errores no fatales definidos por el usuario
Cuando se ejecuta FAL(006) con N configurado como un nmero FAL (&1
hasta &511) que no es igual al contenido de A529 (el nmero FAL/FALS
generado por el sistema), se genera un error no fatal con ese nmero FAL y
se lleva a cabo el siguiente procesamiento:

1,2,3... 1. El indicador de error FAL (A40215) se pone en ON. (Contina la operacin


del PLC).
2. El indicador de nmero FAL ejecutado se pone en ON para el nmero FAL
correspondiente. Los indicadores A36001 hasta A39115 corresponden a
los nmeros FAL 0001 hasta 01FF (1 hasta 511).
3. El cdigo de error se escribir en A400. Los cdigos de error 4101 hasta
42FF corresponden con los nmeros FAL 0001 hasta 01FF (1 hasta 511).
Nota Si se produce un error fatal o un error no fatal ms grave al mismo
tiempo que la instruccin FAL(006), el cdigo de error del error ms
grave se escribe en A400.
4. El cdigo de error y la hora a la que se ha producido el error se escriben
en el rea de registro de errores (A100 hasta A199).
Nota En el caso de las CPUs CS1-H, CJ1-H y CJ1M, el registro de error
no se escribir en el rea de registro de errores si la configuracin
del PLC se ha ajustado de tal manera que los errores generados por
FAL(006) no se registran, es decir, si el bit 15 de la direccin 129 de
la consola de programacin se configura como 1.
5. El indicador ERR de la CPU parpadear.
6. Si se ha especificado una direccin de canal en S, se registrar el mensaje
que comienza por S (visualizado en el dispositivo de programacin).
Indicador de error FAL en ON
Indicador ON de nmero FAL correspondiente
La ejecucin ejecutado
deFAL(006) Cdigo de error escrito en A400
genera un
error no fatal Cdigo de error y hora escritos en el rea de
con nmero registro de errores
FAL N. El indicador ERR parpadea

Mensaje mostrado en la
consola de programacin

La siguiente tabla muestra los cdigos de error y los indicadores de error FAL
para FAL(006).
Nmero FAL Cdigos de error FAL Indicadores de nmero de FAL
ejecutado
1 hasta 511 decimal 4101 hasta 42FF A36001 hasta A39115

1081
Instrucciones de diagnstico de fallo Seccin 3-30

Visualizacin de mensajes con errores no fatales definidos por el usuario


Si S es una direccin de canal y se ha almacenado un mensaje ASCII en S,
ese mensaje se visualizar en el dispositivo perifrico cuando se ejecute
FAL(006). (Si no se requiere un mensaje, configure S como una constante).
El mensaje empezando por S se registrar cuando se ejecute FAL(006). Una
vez se haya registrado el mensaje, este se visualizar cuando se conecte una
consola de programacin.
En S hasta S+7 puede almacenarse un mensaje ASCII de hasta 16 caracte-
res. El byte de la izquierda (ms significativo) se cada canal se visualiza en
primer lugar.
El cdigo de fin para el mensaje es el carcter cero (00 hexadecimal). Se
visualizarn los 16 caracteres de los canales S hasta S+7 si se omite el
carcter cero.
Si el contenido de los canales que contienen el mensaje se modifican des-
pus de ejecutar FAL(006), el mensaje cambiar correspondientemente.
Generacin de errores no fatales de sistema (Slo CS1-H, CJ1-H, CJ1M o
CS1D)
Cuando se ejecuta FAL(006) con N configurado como un nmero FAL (&1
hasta &511) que es igual al contenido de A529 (el nmero FAL/FALS gene-
rado por el sistema), se generar un error no fatal con el cdigo de error y el
cdigo de detalles de error especificados en S y S+1. Se lleva a cabo el
siguiente procesamiento simultneamente:

La ejecucin de FAL(006) Cdigo de error escrito en A400


genera un error no fatal Cdigo de error y hora escritos en el rea de
FAL de sistema con el cdigo/ registro de errores
N detalles de error Los indicadores de rea auxiliar correspondientes
especificado en S y S+1. se configuran basndose en el cdigo de error y
S
en los detalles de error.
El indicador ERR
Valores parpadea.
coincidentes
A529CH N
Mensaje mostrado
en la consola de
S Cdigo de error programacin.
S+1 Detalles del error

1,2,3... 1. El cdigo de error especificado se escribir en A400.


2. El cdigo de error y la hora a la que se ha producido el error se escriben
en el rea de registro de errores (A100 hasta A199).
3. Los indicadores de rea auxiliar apropiados se configuran basndose en
el cdigo de error y en los detalles de error.
4. El indicador ERR de la CPU parpadear y la operacin del PLC continuar.
5. El mensaje de error no fatal para el error de sistema especificado se visua-
lizar en la consola de programacin.

Nota 1. FAL(006) puede utilizarse para generar errores no fatales de sistema al


depurar el programa. Por ejemplo, puede generarse un error de sistema
intencionadamente para comprobar si los mensajes de error se visualizan
correctamente o no en una interfaz como un terminal programable (PT).
2. El valor de A529 (el nmero FAL/FALS generado por el sistema) es un n-
mero FAL ficticio (los nmeros FAL, FALS y FPD se comparten) utilizado
cuando el sistema genera intencionadamente un error no fatal. Este nmero
es un nmero FAL ficticio, as que no modifica el estado de los indicadores
de nmero FAL ejecutado (A36001 hasta A39115) ni el cdigo de error.
Cuando es necesario generar dos o ms errores de sistema (errores fatales

1082
Instrucciones de diagnstico de fallo Seccin 3-30

y no fatales), pueden generarse diferentes errores ejecutando instrucciones


FAL/FALS/FPD varias veces con los mismos valores en A529 y N, pero con
diferentes valores en S y S+1.
3. Si se produce un error ms grave (incluyendo un error fatal generado por
el sistema o error FALS(007)) al mismo tiempo que la instruccin
FAL(006), el cdigo de error del error ms grave se escribe en A400.
4. Para borrar un error de sistema generado por FAL(006), ponga el PLC en
OFF y de nuevo en ON. El PLC puede mantenerse en ON, pero se reque-
rir el mismo procesamiento para borrar el error que en el caso de que el
error especificado se haya producido realmente.
La siguiente tabla muestra cmo especificar cdigos de error y detalles de
error en S y S+1.
Nombre del error S S+1
Error de tarea de inte- 008B hexa- Bit 15 OFF: Error de tarea de interrupcin
rrupcin decimal Bits 00 hasta 14: Nmero de tarea de la tarea de
interrupcin en la que se produjo el error.
Bit 15 ON: Se ha presentado un conflicto entre la
tarea de interrupcin y el refresco de unidad de
E/S especial.
Bits 00 hasta 14: Nmero de unidad de la Uni-
dad de E/S especial con conflicto de refresco
Error de E/S bsica 009A hexa- Ubicacin del bastidor de la Unidad en la que se
decimal produjo el error
Bits 08 hasta 15: Nmero de bastidor (binario)
del bastidor en el que est montada la Unidad
afectada
Bits 00 hasta 07: Nmero de ranura (binario) de
la ranura en la que est montada la Unidad afec-
tada
Error de configuracin 009B hexa- Ubicacin del error de configuracin del PLC
del PLC decimal
Error de verificacin 00E7 hexa- --- (no fijo)
de tabla de E/S decimal
Error no fatal de tar- 02F0 hexa- Informacin de error de tarjeta interna
jeta interna decimal Bits 00 hasta 03: No vlido
Bits 04 hasta 15: Error definido por la tarjeta
interna
Error de la Unidad de 0200 hexa- Nmero de unidad de la Unidad de bus de CPU:
bus de CPU CS1 decimal 0000 hasta 000F hexadecimal
Error de Unidad de E/ 0300 hexa- Nmero de unidad de la Unidad de E/S especial:
S especial decimal 0000 hasta 005F hexadecimal o bien 00FF hexade-
cimal (nmero de unidad indeterminado)
Error de SYSMAC 00A0 hexa- Nmero de unidad de la Unidad maestra SYSMAC
BUS decimal BUS: 0000 0001 hexadecimal
Error de batera 00F7 hexa- --- (no fijo)
decimal
Error de configuracin 0400 hexa- Nmero de unidad de la Unidad de bus de CPU:
de la Unidad de bus decimal 0000 hasta 000F hexadecimal
de CPU CS1
Error de configuracin 0500 hexa- Nmero de unidad de la Unidad de E/S especial:
de Unidad de E/S decimal 0000 hasta 005F hexadecimal
especial

Inhabilitacin de entradas de registro de error de errores definidos por el


usuario (slo CPUs CS1-H, CJ1-H, CJ1M o CS1D)
Normalmente, cuando FAL(006) genera un error definido por el usuario, el
cdigo de error y la hora en que se produjo el error se escriben en el rea de
registro de errores (A100 hasta A199). Es posible ajustar la configuracin del
PLC de tal manera que los errores definidos por el usuario generados por
FAL(006) no se registren en el registro de errores.

1083
Instrucciones de diagnstico de fallo Seccin 3-30

Aunque el error no se registra en el registro de errores, el indicador de error


FAL (40215) se pondr en ON, el indicador correspondiente de los indicado-
res de nmero FAL ejecutado (A36001 hasta A39115) se pondr en ON, y el
cdigo de error se escribir en A400.
Inhabilite las entradas en el registro de errores para errores FAL(006) defini-
dos por el usuario cuando desee registrar solamente los errores generados
por el sistema. Por ejemplo, esta funcin es til durante la depuracin si se
utilizan instrucciones FAL (006) en distintas aplicaciones y el registro de erro-
res se est llenando de errores FAL(006) definidos por el usuario. La
siguiente tabla muestra los ajustes en la configuracin de PLC:
Elemento Configuracin
Direccin de configuracin en Canal 129
la consola de programacin Bit 15
Nombre Registro en el registro de errores FAL
Configuracin 0: Registrar errores FAL en el registro de errores
1: No registrar errores FAL en el registro de errores
Configuracin predetermi- 0: Registrar errores FAL en el registro de errores
nada
Veces que se lee el ajuste de Cada ciclo (cuando se produce un error FAL)
la configuracin del PLC

Incluso si el canal 129 bit 15 est configurado en el PLC como 1 (no registrar
errores FAL en el registro de errores.), se registrarn los siguientes errores:
Errores fatales generados por FALS(007)
Errores no fatales de sistema
Errores fatales de sistema
Errores no fatales de sistema generados intencionadamente con FAL
(006) o FPD(269)
Errores fatales de sistema generados intencionadamente con FALS(007)
Borrado de errores no fatales sin un dispositivo de programacin
1. Borrado de errores no fatales definidos por el usuario
Cuando FAL(006) se ejecuta con N configurado como 0 pueden borrarse
los errores no fatales. El valor de S determinar el procesamiento, tal y
como se muestra en la siguiente tabla.
S Proceso
&1 hasta &511 (0001 hasta Se borrara el error FAL del nmero especificado.
01FF hexadecimal)
FFFF hexadecimal Se borrarn todos los errores no fatales (incluidos
los errores de sistema).
0200 hasta FFFE hexadecimal o El error no fatal ms grave (incluso si es un error
especificacin de canal no fatal de sistema) que se ha producido.
Cuando se ha producido ms de un error FAL, se
borrar el error FAL con el nmero FAL ms bajo.

2. Borrado de errores no fatales de sistema (Slo CPUs CS1-H, CJ1-H,


CJ1M y CS1D)
Hay dos maneras de borrar errores no fatales de sistema generados con
FAL(006).
Desconecte el PLC y conctelo de nuevo.
Cuando se mantiene le PLC conectado, el error de sistema debe bo-
rrarse de igual manera que si el error especificado se hubiera produ-
cido realmente.

1084
Instrucciones de diagnstico de fallo Seccin 3-30

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no est dentro del rango especificado de 0 hasta
error 511 decimal.
ON si se est generando un error no fatal de sistema (slo
CS1-H/CJ1-H/CJ1M/CS1D), pero el cdigo de error o el
cdigo de detalles de error especificado es incorrecto.
OFF en el resto de los casos.

Las siguientes tablas muestran los canales e indicadores relevantes del rea
auxiliar.
Canales/indicadores del rea auxiliar slo para errores definidos por el
usuario
Nombre Direccin Operacin
Indicador de error A40215 ON cuando se genera un error con FAL(006).
FAL
Indicadores de A36001 Cuando se genera un error FAL(006) el indica-
nmero de FAL hasta dor correspondiente se pone en ON. Los indi-
ejecutado A39115 cadores A36001 hasta A39115 se
corresponden con los nmeros de FAL 0001
hasta 01FF.

Canales/indicadores del rea auxiliar slo para errores de sistema (Slo


CPUs CS1-H, CJ1-H, CJ1M y CS1D)
Nombre Direccin Operacin
Nmero FAL/FALS A529 Se utiliza un nmero FAL/FALS ficticio
generado por el sis- cuando se genera un error de sistema con
tema FAL(006). Configure el mismo nmero FAL/
FALS ficticio en este canal (0001 hasta 01FF
hexadecimal, 1 hasta 511 decimal).

Canales/indicadores del rea auxiliar para errores definidos por el usua-


rio y errores de sistema
Nombre Direccin Operacin
rea de registro de A100 El rea de registro de errores contiene los
errores hasta cdigos de error y la hora/fecha en que se han
A199 producido los 20 errores ms recientes, inclu-
yendo los errores generados por FAL(006).
Cdigo de error A400 Cuando se produce un error se almacena el
cdigo de error correspondiente en A400.
Los cdigos de error para los nmeros FAL
0001 hasta 01FF son 4101 hasta 42FF res-
pectivamente.
Si se producen dos o ms errores simult-
neamente, el cdigo de error del error ms
grave se almacenar en A400.

Precauciones N debe estar entre 0000 y 01FF. Se producir un error y el indicador de error
se pondr en ON si N est fuera del rango especificado.
Ejemplos Generacin de un error no fatal
Cuando CIO 000000 est en ON en el siguiente ejemplo, FAL(006) genera un
error no fatal con el numero FAL 31 y ejecuta los siguientes procesos.
1,2,3... 1. El indicador de error FAL (A40215) se pone en ON.
2. El indicador de nmero FAL ejecutado (A36114) correspondiente se pon-
dr en ON.
3. El cdigo de error correspondiente (411F) se escribir en A400.
Nota Si se producen dos o ms errores simultneamente, el cdigo de
error del error ms grave (con el cdigo de error ms alto) se alma-
cenar en A400.

1085
Instrucciones de diagnstico de fallo Seccin 3-30

4. El cdigo de error y la hora/fecha a la que se ha producido el error se es-


criben en el rea de registro de errores (A100 hasta A199).
5. El indicador ERR de la CPU parpadear.
6. El mensaje ASCII de D00100 hasta D00107 se visualiza en el dispositivo pe-
rifrico. (Si no se requiere un mensaje, especifique una constante para S).

31
M M: 4C 4F
57 20
56 4F
MENSAJE
4C 54 LOW VOLTAGE
41 47
45 00

Borrado de un error no fatal concreto


Cuando CIO 000001 est en ON en el siguiente ejemplo, FAL(006) borrar el
error no fatal con el nmero FAL 31, pondr en OFF el indicador de nmero
FAL ejecutado (A36114) correspondiente, y pondr en OFF el indicador de
error FAL (A40215).
000001

Configure N como 0 para


0borrar los errores.
M #001F Configure M con el nmero
FAL deseado (031(001F)).

Borra de todos los errores no fatales


Cuando CIO 000002 est en ON en el siguiente ejemplo, FAL(006) borrar todos
los errores no fatales, pondr en OFF los indicadores de nmero FAL ejecutado
(A36001 hasta A39115), y pondr en OFF el indicador de error FAL (A40215).
000002

0 Configure N como 0 para borrar los errores.


M
Configure M como FFFF para borrar todos los
errores no fatales (errores FAL(006) y errores
de sistema).

Borrado del error no fatla ms grave


Cuando CIO 000003 est en ON en el siguiente ejemplo, FAL(006) borrar el
error no fatal ms serio que se haya producido y resetear el cdigo de error
de A400. Si el error borrado fue originalmente generado por FAL(006), el indi-
cador de nmero FAL ejecutado correspondiente y el indicador de error FAL
(A40215) se pondrn en OFF.
000003

0 Configure N como 0 para borrar los errores.


M #0000 Configure M como 0000, otra constante entre
0200 y FFFE o una direccin de canal para
borrar el error no fatal ms grave. (En este
caso M est configurada como 0000).

Generacin de un error no fatal de sistema (Slo CS1-H, CJ1-H, CJ1M o


CS1D)
Cuando CIO 000000 est en ON en el siguiente ejemplo, FAL(006) generar un
error de configuracin de Unidad de bus de CPU para la Unidad nmero 1. En
este caso, se utiliza el nmero FAL ficticio 10 y el valor correspondiente (000A
hexadecimal) se almacena en A529.

1086
Instrucciones de diagnstico de fallo Seccin 3-30

1,2,3... 1. El cdigo de error especificado (0400) se escribir en A400 si es el error


ms grave.
2. El cdigo de error y la hora/fecha a la que se ha producido el error se es-
criben en el rea de registro de errores (A100 hasta A199).
3. El indicador de error de configuracin de Unidad de bus de CPU (A40203)
y el indicador de error de configuracin de Unidad de bus de CPU para la
Unidad nmero 1 (A42701) se pondrn en ON.
4. El undicador ERR de la CPU parpadear.
5. Se visualizar un mensaje (CPU BU ST ERR 01) en la consola de programa-
cin indicando que se ha producido un error en la Unidad 1 de bus de CPU.
000000
MOV
#000A
A529

FAL
N 10
S D00200

Valores
coincidentes
A529CH 000A
Cdigo de error: 0400 (Error de
S: D00200 0400 configuracin de unidad de bus de CPU)
D00201 0001 Error en la Unidad nmero: 1

3-30-2 SEVERE FAILURE ALARM: FALS(007)


Empleo Genera errores fatales definidos por el usuario. Los errores fatales detienen
el funcionamiento del PLC.
Con las CPUs CS1-H, CJ1-H, CJ1M y CS1D tambin puede utilizarse
FALS(007) para generar errores fatales de sistema.
Smbolo de diagrama de Generacin de errores fatales definidos por el usuario
rels
FALS(007)
N: nmero FALS
N
S: Primer canal de
S
mensaje o constante
(0000 hasta FFFF)
Generacin de errores fatales de sistema (Slo CS1-H, CJ1-H, CJ1M o CS1D)

FALS(007)

N N: Nmero FALS (valor de A529)

S S: Primer canal que contiene cdigo


de error y detalles de error

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FALS(007)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

1087
Instrucciones de diagnstico de fallo Seccin 3-30

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos Generacin de errores fatales definidos por el usuario


En la tabla siguiente se muestra la funcin de los operandos.
Nota El valor del operando N debe ser diferente del contenido de A529
(el nmero FAL/FALS generado por el sistema).
Operando Funcin
N 1 hasta 511 (Estos nmeros FALS son compartidos con los nmeros FAL).
S Especifica el primero de ocho canales que contienen un mensaje ASCII
para visualizar en el dispositivo de programacin.
Especifique una constante (0000 hasta FFFF) si no se requiere un mensaje.

Generacin de errores fatales de sistema (Slo CS1-H, CJ1-H, CJ1M o CS1D)


En la tabla siguiente se muestra la funcin de los operandos.
Nota El valor del operando N debe ser el mismo que el contenido de
A529 (el nmero FAL/FALS generado por el sistema).
Operando Funcin
N 1 hasta 511 (Estos nmeros FALS son compartidos con los nmeros FAL).
S Cdigo de error que se generar. (Consulte la siguiente Descripcin).
S+1 Cdigo de detalles de error que se generar.
(Consulte la siguiente Descripcin).

Especificaciones del
operando rea N S
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 hasta A959
rea Temporizador --- T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores #0000 hasta #FFFF
especificados (Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- --- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048
tros de ndice hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta IR15
,IR+(++)0 hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

1088
Instrucciones de diagnstico de fallo Seccin 3-30

Descripcin FALS(007) genera un error fatal. Con las CPUs CS1-H, CJ1-H, CJ1M y CS1D
tambin puede utilizarse FALS(007) para generar errores fatales de sistema y
errores fatales definidos por el usuario. (Se generar un error de sistema si el
valor de N es igual al contenido de A529).
Generacin de errores fatales definidos por el usuario
Cuando se ejecuta FALS(007) con N configurado como un nmero FALS (1
hasta 511) que no es igual al contenido de A529 (el nmero FAL/FALS gene-
rado por el sistema), se genera un error fatal con ese nmero FALS y se lleva
a cabo el siguiente procesamiento:

1,2,3... 1. El indicador de error FALS (A40106) se pone en ON. (Se detiene la ope-
racin del PLC).
2. El cdigo de error se escribir en A400. Los cdigos de error C101 hasta
C2FF corresponden con los nmeros FALS 0001 hasta 01FF (1 hasta 511).
Nota Si se ha producido un error ms grave que la instruccin FALS(007)
(uno con un cdigo de error ms alto), A400 contendr el cdigo de
error del error ms grave.
3. El cdigo de error y la hora/fecha a la que se ha producido el error se es-
criben en el rea de registro de errores (A100 hasta A199).
4. El indicador ERR de la CPU se iluminar.
5. Si se ha especificado una direccin de canal en S, se registrar el mensaje
ASCII que comienza por S (visualizado en el dispositivo perifrico).
Indicador de error FALS en ON
La ejecucin Cdigo de error escrito en A400
de FALS(007) Cdigo de error y hora/fecha escritos en el rea
genera un de registro de errores
error fatal con
el nmero El indicador ERR se enciende
FALS N.

Mensaje mostrado en la consola


de programacin

La siguiente tabla presenta los cdigos de error de FALS(007).


Nmero FALS Cdigos de error FALS
1 hasta 511 C101 hasta C2FF

Nota El mtodo de introduccin del nmero FALS, N, es distinto en el caso de CX-


Programmer y una consola de programacin. Introduzca #1 hasta #511 en
CX-Programmer y 001 hasta 511 en una consola de programacin.
Visualizacin de mensajes con errores fatales definidos por el usuario
Si S es una direccin de canal, el mensaje ASCII empezando por S se visua-
lizar en el dispositivo de programacin cuando se ejecute FALS(007). (Si no
se requiere un mensaje, configure S como una constante).
El mensaje empezando por S se registrar cuando se ejecute FALS(007).
Una vez se haya registrado el mensaje, este se visualizar cuando se
conecte una consola de programacin.
En S hasta S+7 puede almacenarse un mensaje ASCII de hasta 16 caracte-
res. El byte de la izquierda (ms significativo) se cada canal se visualiza en
primer lugar.
El cdigo de fin para el mensaje es el carcter cero (00 hexadecimal). Se
visualizarn los 16 caracteres de los canales S hasta S+7 si se omite el
carcter cero.
Si el contenido de los canales que contienen el mensaje se modifican des-
pus de ejecutar FALS(007), el mensaje cambiar correspondientemente.

1089
Instrucciones de diagnstico de fallo Seccin 3-30

Generacin de errores no fatales de sistema (Slo CS1-H, CJ1-H, CJ1M o


CS1D)
Cdigo de error escrito en A400
La ejecucin de Cdigo de error y hora escritos en el rea de
FALS FALS(007) genera un registro de errores
N
error no fatal de sistema Los indicadores de rea auxiliar correspondientes
con el cdigo/detalles se configuran basndose en el cdigo de error y
S de error especificado en en los detalles de error.
S y S+1.
El indicador ERR
Valores parpadea.
coincidentes
A529CH N
Mensaje mostrado en la
consola de programacin.
S Cdigo de error

S+1 Detalles del error

Cuando se ejecuta FALS(007) con N configurado como un nmero FAL (1


hasta 511) que es igual al contenido de A529 (el nmero FAL/FALS generado
por el sistema), se generar un error fatal con el cdigo de error y el cdigo
de detalles de error especificados en S y S+1. Se lleva a cabo el siguiente
procesamiento simultneamente:

1,2,3... 1. El cdigo de error especificado se escribir en A400.


2. El cdigo de error y la hora a la que se ha producido el error se escriben
en el rea de registro de errores (A100 hasta A199).
3. Los indicadores de rea auxiliar apropiados se configuran basndose en
el cdigo de error y en los detalles de error.
4. El indicador ERR de la CPU se iluminar y la operacin del PLC se detendr.
5. El mensaje de error fatal para el error de sistema especificado se visuali-
zar en la consola de programacin.

Nota 1. El valor de A529 (el nmero FAL/FALS generado por el sistema) es un n-


mero FAL ficticio (los nmeros FAL, FALS y FPD se comparten) utilizado
cuando el sistema genera intencionadamente un error no fatal. Este n-
mero es un nmero FAL ficticio, as que no se refleja en el cdigo de error.
Cuando es necesario generar dos o ms errores de sistema, pueden ge-
nerarse diferentes errores ejecutando instrucciones FAL/FALS/FPD varias
veces con los mismos valores en A529 y N, pero con diferentes valores en
S y S+1.
2. Si se produce un error ms grave (incluyendo un error fatal generado por
el sistema u otro error FALS(007)) al mismo tiempo que la instruccin
FALS(007), el cdigo de error del error ms grave se escribe en A400.
3. Para borrar un error de sistema generado por FALS(007), ponga el PLC
en OFF y de nuevo en ON. El PLC puede mantenerse en ON, pero se re-
querir el mismo procesamiento para borrar el error que en el caso de que
el error especificado se haya producido realmente. Consulte la informa-
cin relativa a solucin de problemas del Manual de operacin de la serie
CS/CJ para obtener informacin detallada.
4. La siguiente tabla muestra cmo el bit de retencin IOM afecta al estado
de la memoria de E/S y de las salidas de las Unidades de salida despus
de que se haya generado un error fatal de sistema con FALS(007).
Bit de Estado de la memoria de E/S Estado de las salidas de las
retencin IOM Unidades de salida
(A50012)
ON Retenida OFF
OFF Borrada OFF

1090
Instrucciones de diagnstico de fallo Seccin 3-30

Nota Al contrario que en el caso de errores fatales definidos por el usuario, los
errores de sistema generados por FALS(007) borrarn la memoria de E/S si
el bit de retencin IOM est en OFF. Se borrarn las siguientes reas: rea
CIO, rea de trabajo, indicadores de temporizador y PVs, registros de ndice y
registros de datos.
La siguiente tabla muestra cmo especificar cdigos de error y detalles de
error en S y S+1.
Nombre del S S+1
error Cdigo de Detalles del error
error
Error de memo- 80F1 hexa- Bits 00 hasta 09: Ubicacin del error de memoria
ria decimal Bit 00: Programa de usuario
Bit 04: Configuracin del PLC
Bit 05: Tabla de E/S registrada
Bit 07: Tabla de rutas
Bit 08: Configuracin de Unidad de bus de CPU
Bit 09: Error de transferencia de tarjeta de memoria
Bits 10 hasta 15: No vlido
Error de bus de 80C0 hexa- Bits 00 hasta 07: Nmero de ranura en la que se
E/S decimal ha producido el error de bus de E/S
Ranuras 0 hasta 9: 00 hasta 09 hexadecimal
Ranura desconocida: 0F hexadecimal
Bits 08 hasta 15: Nmero de bastidor en el que se
ha producido el error de bus de E/S
Ranuras 0 hasta 7: 00 hasta 07 hexadecimal
Bastidor desconocido: 0F hexadecimal
Error de duplica- 80E9 hexa- Nmero de Unidad de bus de CPU duplicado
cin de n de decimal 0000 hasta 000F hexadecimal
unidad
Nmero de Unidad de E/S especial duplicado
8000 hasta 805F hexadecimal
Error de duplica- 80EA hexa- Nmero de bastidor duplicado (solapamiento de
cin de n de decimal asignaciones de canales)
bastidor 0000 hasta 0006 hexadecimal
Error fatal de 82F0 hexa- Causa del error
tarjeta interna decimal Bits 00 hasta 03: Error definido por la tarjeta
interna
Bits 04 hasta 15: No vlido

1091
Instrucciones de diagnstico de fallo Seccin 3-30

Nombre del S S+1


error Cdigo de Detalles del error
error
Error de exceso 80E1 hexa- Bits 13 hasta 15: Causa del error
de puntos de E/S decimal Bits 00 hasta 12: Detalles
El nmero total de puntos de E/S es excesivo.
Bits 13 hasta 15: 000
Bits 00 hasta 12: Nmero de puntos de E/S
(binario)
Nmero de entradas de interrupcin excesivo.
Bits 13 hasta 15: 001
Bits 00 hasta 12: Nmero de entradas de inte-
rrupcin (binario)
Bits 00 hasta 12: Todo ceros
Est duplicado el nmero de unidad de una Uni-
dad esclava o una Unidad esclava C500 tiene
ms de 320 puntos de E/S.
Bits 13 hasta 15: 010
Bits 00 hasta 12: Nmero de unidad de la Unidad
esclava (binario)
El nmero de unidad de una interfaz de E/S
(excepto bastidores esclavos) est duplicado.
Bits 13 hasta 15: 011
Bits 00 hasta 12: Nmero de Unidad (binario)
El nmero de unidad de una Unidad maestra est
duplicado o fuera del rango de configuracin per-
mitido.
Bits 13 hasta 15: 100
Bits 00 hasta 12: Nmero de unidad de la Unidad
maestra (binario)
El nmero de los bastidores expansores es dema-
siado elevado.
Bits 13 hasta 15: 101
Bits 00 hasta 12: Nmero de bastidores expanso-
res (binario)
No se ha reconocido la Unidad de E/S especial
C200H o la E/S remota.
Bits 13 hasta 15: 110
Error de confi- 80E0 hexa- --- (no fijo)
guracin de decimal
tabla de E/S
Error de pro- 80F0 hexa- Bits 08 hasta 15: Causa del error
grama decimal Bit 15: error de insuficiencia de UM
Bit 14: Error de instruccin no vlida
Bit 13: Error de desbordamiento de diferencial
Bit 12: Error de tarea
Bit 11: Error no END
Bit 10: Error de acceso no vlido
Bit 09: Error BCD indirecto de DM/EM
Bit 08: Error de instruccin
Bits 00 hasta 07: No vlido
Error de sobre- 809F hexa- --- (no fijo)
carga de tiempo decimal
de ciclo

Borrado de errores fatales de sistema FALS(007) (Slo CPUs CS1-H, CJ1-


H, CJ1M y CS1D)
Hay dos maneras de borrar errores fatales de sistema generados con
FALS(007).
1. Desconecte el PLC y conctelo de nuevo.
2. Cuando se mantiene le PLC conectado, el error de sistema debe borrarse de
igual manera que si el error especificado se hubiera producido realmente.

1092
Instrucciones de diagnstico de fallo Seccin 3-30

Errores fatales FALS(007) definidos por el usuario


Para borrar errores generados por FALS(007), en primer lugar elimine la
causa del error, y posteriormente borre el error desde un dispositivo de pro-
gramacin o desconecte el PLC y vielva a conectarlo.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no est dentro del rango especificado de 0001
error hasta 01FF (1 hasta 511 decimal).
ON si se est generando un error fatal de sistema (slo
CS1-H/CJ1-H/CJ1M/CS1D), pero el cdigo de error o el
cdigo de detalles de error especificado es incorrecto.
OFF en el resto de los casos.

Las siguientes tablas muestran los canales e indicadores relevantes del rea
auxiliar.
Canales/indicadores del rea auxiliar slo para errores definidos por el
usuario
Nombre Direccin Operacin
Indicador de error A40106 ON cuando se genera un error con
FALS FALS(007).

Canales/indicadores del rea auxiliar slo para errores de sistema (Slo


CPUs CS1-H, CJ1-H, CJ1M y CS1D)
Nombre Direccin Operacin
Nmero FAL/FALS A529 Se utiliza un nmero FAL/FALS ficticio cuando
generado por el sis- se genera un error de sistema con FALS(007).
tema Configure el mismo nmero FAL/FALS ficticio
en este canal (0001 hasta 01FF hexadecimal,
1 hasta 511 decimal).

Canales/indicadores del rea auxiliar para errores definidos por el usua-


rio y errores de sistema
Nombre Direccin Operacin
rea de registro de A100 El rea de registro de errores contiene los
errores hasta cdigos de error y la hora/fecha en que se han
A199 producido los 20 errores ms recientes, inclu-
yendo los errores generados por FALS(007).
Cdigo de error A400 Cuando se produce un error se almacena el
cdigo de error correspondiente en A400. Los
cdigos de error para los nmeros FALS 0001
hasta 01FF (1 hasta 511 decimal) son C101
hasta C2FF respectivamente.
Si se producen dos o ms errores simultnea-
mente, el cdigo de error del error ms grave
se almacenar en A400.

Precauciones El cdigo de fin para el mensaje es el carcter cero (00 hexadecimal). Se visuali-
zarn los 16 caracteres de los canales S hasta S+7 si se omite el carcter cero.
N debe estar entre 0001 y 01FF. Se producir un error y el indicador de error
se pondr en ON si N est fuera del rango especificado.
Ejemplos Generacin de error definido por el usuario
Cuando CIO 000000 est en ON en el siguiente ejemplo, FALS(007) genera
un error fatal con el numero FAL 31 y ejecuta los siguientes procesos.
1,2,3... 1. El indicador de error FALS (A40106) se pone en ON.
2. El cdigo de error correspondiente (C11F) se escribir en A400.

1093
Instrucciones de diagnstico de fallo Seccin 3-30

Nota A400 contendr el cdigo de error del error ms grave de todos los erro-
res que se han producido, incluyendo errores fatales y no fatales de sis-
tema, adems de los errores generados por FAL(006) y FALS(007).
3. El cdigo de error y la hora/fecha a la que se ha producido el error se es-
criben en el rea de registro de errores (A100 hasta A199).
4. El indicador ERR de la CPU se iluminar.
5. El mensaje ASCII de D00100 hasta D00107 se visualiza en el dispositivo pe-
rifrico. (Si no se requiere un mensaje, especifique una constante para S).

31
M

M: 4C 4F
57 20
56 4F
MENSAJE
4C 54
LOW VOLTAGE
41 47
45 00

Generacin de un error no fatal de sistema (Slo CPUs CS1-H, CJ1-H,


CJ1M y CS1D)
Cuando CIO 000000 est en ON en el siguiente ejemplo, FALS(007) gene-
rar un error de exceso de puntos de E/S (demasiados bastidores expanso-
res conectados, 9 bastidores en este caso). En este caso se utiliza un
nmero FAL ficticio 10 y el valor correspondiente (000A hexadecimal) se
almacena en A529.

1,2,3... 1. El cdigo de error especificado (80E1) se escribir en A400 si es el error


ms grave.
2. El cdigo de error y la hora/fecha a la que se ha producido el error se es-
criben en el rea de registro de errores (A100 hasta A199).
3. El indicador de exceso de puntos de E/S (A40111) se pondr en ON.
4. El indicador ERR de la CPU se iluminar y la operacin del PLC se detendr.
5. Se visualizar un mensaje (TOO MANY I/O PNT) en la consola de programa-
cin indicando que se ha producido un error de exceso de puntos de E/S.
000000
MOV
#000A
A529

FALS
N 10
S D00200
Valores
coincidentes

A529CH 000A
Cdigo de error: 80E1 (Error de exceso de
S:D00200 80E1 puntos de E/S)
D00201 A009 Nmero de bastidores expansores: 9

1094
Instrucciones de diagnstico de fallo Seccin 3-30

3-30-3 FAILURE POINT DETECTION: FPD(269)


Empleo Diagnostica un fallo en un bloque de instrucciones mediante la monitorizacin
del tiempo entre la ejecucin de FPD(269) y la ejecucin de una salida de
diagnstico, y detecta cul de las entradas es la que impide que una salida se
ponga en ON.

Smbolo de diagrama de
rels
FPD(269)

C C: Canal de control

T T: Tiempo de monitorizacin

R R: Primer canal de registro

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FPD(269)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
No se admite OK OK No se admite

Operandos C: Canal de control


C debe ser una constante entre 0000 y 01FF o entre 8000 y 81FF.
El siguiente diagrama muestra la funcin de los dgitos del canal de control.
15 12 11 0
C

Nmero FAL: 000 hasta 1FF

Modo de salida de diagnstico


0: Salida de direccin de bit solamente (hexadecimal)
8: Salida de direccin de bit y mensaje (ASCII)

T: Tiempo de monitorizacin
T debe estar entre 0 y 9.999 decimal (entre 0000 y 270F hexadecimal). Un
valor 0 inhabilita la monitorizacin de tiempo; los valores en el rango de 1
hasta 270F ajustan la monitorizacin de tiempo entre 0,1 y 999,9 segundos.
R: Primer canal de registro
Las funciones de los canales de registro se describen en la pgina 1098.

Especificaciones del
operando rea C T R
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 hasta A447 A448 hasta A959
A448 hasta A959
rea Temporizador --- T0000 hasta T4095
rea Contador --- C0000 hasta C4095

1095
Instrucciones de diagnstico de fallo Seccin 3-30

rea C T R
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Slo valores #0000 hasta ---
especificados #270F (Binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- --- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048
tros de ndice hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta IR15

Descripcin FPD(269) realiza diagnsticos de monitorizacin de tiempo y lgicos. La fun-


cin de monitorizacin de tiempo genera un error no fatal con el nmero FAL
especificado si la salida de diagnstico no se pone en ON dentro del tiempo
de monitorizacin especificado. La funcin de diagnstico lgico indica la
entrada que impide que la salida se ponga en ON.
Funcin de monitorizacin de tiempo:
Inicia la temporizacin cuando la condicin de ejecucin
A pasa a ON. Genera un error no fatal si la salida B no
se pone en ON durante el tiempo de monitorizacin.

Condicin de
ejecucin A

T
R

Bloque de
Siguiente bloque de procesamiento de
instrucciones errores (opcional)
Bloque de diagnstico lgico*

Condicin C de ejecucin
de diagnstico lgico

Salida de diagnstico B

Funcin de diagnstico lgico


Determina qu entrada en C impide
que la salida B se ponga en ON.

Nota *El bloque de diagnstico lgico empieza con la primera instruccin LD (no
LD TR) o LD NOT despus de FPD(269) y finaliza con la primera instruccin
OUT (no OUT TR) u otra instruccin de la derecha.

1096
Instrucciones de diagnstico de fallo Seccin 3-30

Funcin de monitorizacin de tiempo


FPD(269) inicia la temporizacin cuando se ejecuta (cuando la condicin de
ejecucin A se pone en ON); genera un error no fatal y pone en ON el indica-
dor de acarreo si la salida de diagnstico no se pone en ON dentro del tiempo
de monitorizacin especificado.
Condicin de
ejecucin para
FPD(269)
Tiempo de mo-
Salida de nitorizacin (T)
diagnstico B

Indicador
de acarreo
Generado error no fatal.

Nota La salida de diagnstico debe ponerse en ON dentro del tiempo de monitori-


zacin. La funcin de teaching puede utilizarse para ajustar el tiempo de
monitorizacin automticamente.
Se llevar a cabo el procesamiento siguiente cuando el indicador de acarreo
se pone en ON. (Este procesamiento no se llevar a cabo si el nmero FAL
se configura como 000 en C).
1,2,3... 1. El indicador de error FAL (A40215) se pone en ON. (Contina la operacin del
PLC.)
2. El indicador de nmero FAL ejecutado para el nmero FAL especificado se
pone en ON. (Los indicadores A36001 hasta A39115 se corresponden con
los nmeros de FAL 001 hasta 1FF).
3. El cdigo de error correspondiente se escribir en A400. Los cdigos de error
4101 hasta 42FF se corresponden con los nmeros FAL 001 hasta 1FF.
(Si se ha producido un error ms grave (uno con un cdigo de error ms alto)
simultneamente, el cdigo de error del error ms serio se alamacenar en
A400).
4. El cdigo de error y la hora/fecha a la que se ha producido el error se escriben
en el rea de registro de errores (A100 hasta A199).
5. El indicador ERR de la CPU parpadear.
6. Si el modo de salida ha sido configurado para salida de direccin de bit y men-
saje (dgito de la izquierda de C configurado como 8), el mensaje ASCII alma-
cenado en R+2 hasta R+10 se visualizar como mensaje de error no fatal.
Funcin de diagnstico lgico
Cada ciclo en que la condicin de ejecucin para FPD(269) est en ON,
FPD(269) determina qu bit de entrada est causando que la salida de diagns-
tico est en OFF y escribe la direccin del bit en el rea de registro empezando
por R.
Si los bits de entrada CIO 000000 hasta CIO 000003 estn en ON en el siguiente
ejemplo, FPD(269) detrminar que la condicin normalmente cerrado
CIO 000002 est causando que la salida CIO 000100 se mantenga en OFF.
FPD(269) pondr en ON el indicador de direccin de bit encontrada (bit 15 de R)
y escribir la direccin del bit en los canales de registro R+2 hasta R+4.

Bloque de diagnstico
lgico Condicin de ejecucin
de diagnstico lgico

1097
Instrucciones de diagnstico de fallo Seccin 3-30

La funcin de diagnstico lgico se ejecuta cada ciclo siempre que la condicin


de ejecucin para FPD(269) est en ON. La operacin de la funcin de diag-
nstico lgico es independiente de la funcin de monitorizacin de tiempo.
Cuando dos o ms bits de entrada estn evitando que la salida de diagns-
tico se ponga en ON, la direccin del primer bit de entrada de la condicin de
ejecucin (en la lnea ms alta de la instruccin y ms cercano a la barra de
bus izquierda) se entregar a R+2 hasta R+4.
Los bits de entrada de las instrucciones LD, LD NOT, AND, AND NOT, OR y
OR NOT (incluyendo las variaciones con diferencial y refresco inmediato) se
comprobarn mediante la funcin de diagnstico lgico. Los bits de entrada
de otras instrucciones y operandos con direccionamiento indirecto mediante
registros de ndice no se comprobarn.
El bloque de diagnstico lgico empieza con la primera instruccin LD (no LD
TR) o LD NOT despus de FPD(269) y finaliza con la primera instruccin
OUT (no OUT TR) u otra instruccin de la derecha.
Hay dos modos de salida de diagnstico, configurados con el dgito de la
izquierda de C.

1,2,3... 1. Modo de salida de direccin de bit (dgito de la izquierda de C = 0)


El bit 15 de R (el indicador de direccin de bit encontrada) se pone en ON
cuando la direccin del bit de entrada se ha encontrado y el bit 14 de R
indica si la entrada est normalmente en ON o normalmente en OFF.
La direccin de memoria de 8 dgitos hexadecimal del PLC del bit de en-
trada se entrega a R+3 y R+2.
2. Modo de salida de direccin de bit y mensaje (dgito de la izquierda de C = 8)
El bit 15 de R (el indicador de direccin de bit encontrada) se pone en ON
cuando la direccin del bit de entrada se ha encontrado y el bit 14 de R
indica si la entrada est normalmente en ON o normalmente en OFF.
La direccin del bit de entrada se entrega a R+2 hasta R+4 en forma de 6
caracteres ASCII.

Funciones de canales de Los canales de registro contienen los resultados de la funcin de diagnstico
registro y pueden tambin contener un mensaje ASCII de error que se visualiza
cuando la funcin de monitorizacin de tiempo genera un error. La funcin de
los canales de registro depende del modo de salida de diagnstico configu-
rado en el dgito de la izquierda de C.

1098
Instrucciones de diagnstico de fallo Seccin 3-30

Salida de direccin de bit (C=0@@@)


Cuando el bit de la izquierda de C se configura como 0, la direccin de memo-
ria de 8 dgitos hexadecimal del bit de entrada se entrega a R+2 y R+3. R con-
tiene dos indicadores que indican si se ha encontrado un bit de entrada y si
este se usa con una condicin de entrada de normalmente abierto o normal-
mente cerrado.
151413 0
R

No es posible utilizarlo.
Tipo de entrada
0: Normalmente abierta
1: Normalmente cerrada
Indicador de direccin de bit encontrada.
0: An no encontrada
1: Direccin de bit encontrada

15 0
R+1

No es posible utilizarlo.

R+2 R+3

Salida de direccin de bit y mensaje (C=8@@@)


Cuando el bit de la izquierda de C se configura como 8, la direccin ASCII del
bit de entrada se entrega a R+2 hasta R+4. R contiene dos indicadores que
indican si se ha encontrado un bit de entrada y si este se usa con una condi-
cin de entrada de normalmente abierto o normalmente cerrado.
15 14 13 0
R

No es posible utilizarlo.
Tipo de entrada
0: Normalmente abierta
1: Normalmente cerrada
Indicador de direccin de bit encontrada.
0: An no encontrada
1: Direccin de bit encontrada

15 0
R+1

No es posible utilizarlo.

Los canales de registro R+2 hasta R+4 indican la direccin de la entrada que
evitaba que la salida de diagnstico se pusiera en ON. La direccin del bit se
entrega a estos canales en ASCII. La siguiente tabla muestra las representa-
ciones en ASCII para cada rea.
rea Texto ASCII Notas
rea auxiliar A00000 hasta A95915 ---
rea de retencin H00000 hasta H51115 ---
rea de Trabajo W00000 hasta W51115 ---
rea CIO 000000 hasta 665515 ---
Indicadores de tarea TK0000 hasta TK0031 ---
rea Temporizador _T0000 hasta _T4095 El _ representa un espacio ASCII.
rea Contador _C0000 hasta _C4095 (Cdigo de carcter 20).

1099
Instrucciones de diagnstico de fallo Seccin 3-30

15
R+2 W 5
Direccin de bit escrita en
R+3 1 1 ASCII
R+4 1 5

Los canales de registro R+2 hasta R+5 tendran los siguientes valores para
W51115:
Canal Bits 8 a 15 Bits 0 hasta 7
R+2 W 5
R+3 1 1
R+4 1 5
R+5 2D (hexadecimal) Tipo de entrada (hexadecimal)
30: Normalmente abierta
31: Normalmente cerrada

El usuario puede almacenar un mensaje ASCII en los canales de registro


R+6 hasta R+10. Este mensaje se visualizar en el dispositivo de programa-
cin si la funcin de monitorizacin de tiempo genera un mensaje de error no
fatal. Marque el fin del mensaje con el carcter cero (00 hexadecimal).
15 8 7 0
R+6
R+7
R+8
R+9
R+10

Inhabilitacin del registro Normalmente, cuando la funcin de monitorizacin de tiempo FPD(269)


de entradas de errores genera un error no fatal, el cdigo de error y la hora en que se produjo el error
FPD(269) no fatales se escriben en el rea de registro de errores (A100 hasta A199). En el caso
(Slo CS1-H, CJ1-H, CJ1M de las CPUs CS1-H, CJ1-H, CJ1M y CS1D es posible ajustar la configuracin
o CS1D) del PLC de tal manera que los errores no fatales generados por FAL(006) no
se registren en el registro de errores.
Aunque el error no se registra en el registro de errores, el indicador de error
FAL (40215) se pondr en ON, el indicador correspondiente de los indicado-
res de nmero FAL ejecutado (A36001 hasta A39115) se pondr en ON, y el
cdigo de error se escribir en A400.
Inhabilite las entradas en el registro de errores para errores FPD(269) de
monitorizacin de tiempo cuando desee registrar solamente los errores gene-
rados por el sistema. Por ejemplo, esta funcin es til durante la depuracin si
se utilizan instrucciones FPD(269) y FAL (006) en distintas aplicaciones y el
registro de errores se est llenando de este tipo de errores. La siguiente tabla
muestra los ajustes en la configuracin de PLC:
Elemento Configuracin
Direccin de configuracin Canal 129
en la consola de progra- Bit 15
macin
Nombre Registro en el registro de errores FAL
Configuracin 0: Registrar errores FAL en el registro de errores
1: No registrar errores FAL en el registro de errores
Configuracin predetermi- 0: Registrar errores FAL en el registro de errores
nada
Veces que se lee el ajuste Cada ciclo (cuando se produce un error FAL)
de la configuracin del PLC

Incluso si el canal 129 bit 15 est configurado en el PLC como 1 (no registrar
errores FAL en el registro de errores.), se registrarn los siguientes errores:
Errores fatales generados por FALS(007)
1100
Instrucciones de diagnstico de fallo Seccin 3-30

Errores no fatales de sistema


Errores fatales de sistema
Errores no fatales de sistema generados intencionadamente con
FAL (006) o FPD(269)
Errores fatales de sistema generados intencionadamente con FALS(007)

Configuracin del tiempo Si se especifica una direccin de canal para T puede configurarse el tiempo de
de monitorizacin con la monitorizacin automticamente con la funcin de teaching. Utilice el siguiente
funcin de teaching procedimiento cuando se haya configurado una direccin de canal para T.

1,2,3... 1. Ponga en ON el bit de teaching de FDP (A59800).


2. FPD(269) medir en tiempo desde el punto en el que la condicin de eje-
cucin para FDP (269) se pone en ON hasta que la salida de diagnstico
se pone en ON.
3. Si el tiempo medido excede la configuracin del tiempo de monitorizacin,
se almacenar en T una configuracin 1,5 veces el tiempo medido.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si C no est dentro del rango especificado de 0000
error hasta 01FF o bien 8000 hasta 81FF.
ON si T no est dentro del rango especificado de 0000
hasta 270F.
OFF en el resto de los casos.
Indicador de CY ON si la salida de diagnstico an est en OFF una vez
acarreo transcurrido el tiempo de monitorizacin.
OFF en el resto de los casos.

La siguiente tabla muestra los canales e indicadores relevantes del rea auxiliar.
Nombre Direccin Operacin
Indicador de A40215 ON cuando se registra un error no fatal (FAL) en la
error FAL monitorizacin de tiempo.
Indicadores de A36001 Cuando se registra un error no fatal (FAL) en la monitori-
nmero de FAL hasta zacin de tiempo, el correspondiente indicador se pondr
ejecutado A39115 en ON. Los indicadores A36001 hasta A39115 se corres-
ponden con los nmeros de FAL 0001 hasta 01FF.
rea de regis- A100 El rea de registro de errores contiene los cdigos de
tro de errores hasta error y la hora/fecha en que se han producido los 20
A199 errores ms recientes, incluyendo los errores genera-
dos por FPD(269).
Cdigo de error A400 Cuando se produce un error se almacena el cdigo de
error correspondiente en A400. Los cdigos de error
para los nmeros FAL 0001 hasta 01FF son 4101
hasta 42FF respectivamente.
Si se producen dos o ms errores simultneamente, el
cdigo de error del error ms grave se almacenar en
A400.
Bit de teaching A59800 Ponga este bit en ON si desea seleccionar automtica-
de FPD mente el tiempo de supervisin (funcin teaching)
cada vez que se ejecute FPD(269).

Precauciones Cuando se est utilizando la funcin de monitorizacin de tiempo, la condi-


cin de ejecucin para FPD(269) debe permanecer en ON durante el tiempo
de monitorizacin completo configurado en T.
La condicin de ejecucin para FPD(269) debe hacerse con una combinacin
de entradas normalmente abierta y normalmente cerrada.
El bloque de procesamiento de errores es opcional. Cuando se incluye un
bloque de procesamiento de errores, asegrese de utilizar salidas u otras ins-
trucciones de la derecha. LD y LD NOT no pueden usarse en este punto.
FPD(269) puede utilizarse ms de una vez en el programa, pero cada instruc-
cin debe tener una configuracin de registro (R) nica.
1101
Instrucciones de diagnstico de fallo Seccin 3-30

El tiempo de monitorizacin se refresca nicamente cuando se ejecuta


FPD(269). Si el tiempo de ciclo es ms largo de 100 ms, el tiempo de monito-
rizacin no se refrescar normalmente y FPD(269) no operar correctamente
porque el tiempo de monitorizacin se actualiza en unidades de 100 ms.
Ejemplos El siguiente ejemplo de programa se utiliza para demostrar la operacin de la
funcin de monitorizacin y la funcin de diagnstico lgico. En este ejemplo
la salida de diagnstico (CIO 020000) no se pone en ON porque CIO 010000
y CIO 010003 se mantienen en OFF en la condicin de ejecucin del diag-
nstico lgico.
Condicin de
ejecucin

T &100

R
Bloque de
procesamiento
de errores
Bloque de diagnstico lgico (opcional)

Condicin de ejecucin de diagnstico lgico

Salida de diagnstico

La salida de diagnstico (CIO 020000) se


mantiene en OFF porque estas condiciones
de entrada estn en OFF.

Funcin de monitorizacin de tiempo


Si la salida de diagnstico (CIO 020000) no se pone en ON en un plazo de 10
segundos una vez que CIO 030000 y CIO 030001 estn en ON, se generar
un error no fatal y se llevar a cabo el siguiente procesamiento.
1,2,3... 1. El indicador de acarreo se pone en ON.
2. Cuando los 3 dgitos de la derecha de C especifican un nmero FAL 00A
hexadecimal (10), el indicador de nmero FAL correspondiente (A36010)
se pone en ON, el cdigo de error (410A) correspondiente se escribe en
A400, y el indicador de error FAL (A40215) se pone en ON.
Funcin de diagnstico lgico (C=000A)
Ya que el dgito de la izquierda de C es 0 (modo de salida de direccin de bit) la
direccin de memoria del PLC de CIO 010000 se entrega a D00303 y D00302.
(CIO 010000 est en una lista de instruccin ms alta que CIO 010003).

Nmero FAL = 10
Indicador 1 de direccin de bit Modo de salida de diagnstico = 0 (salida de direccin de bit)
encontrada: Direccin de bit
encontrada Tipo de entrada
0: Normalmente abierta

R: No se utiliza.
No se utiliza.

Contiene la direccin de memoria de E/S interna.

1102
Instrucciones de diagnstico de fallo Seccin 3-30

Funcin de diagnstico lgico (C=800A)


Ya que el dgito de la izquierda de C es 8 (modo de salida de direccin de bit
y mensaje) la direccin de CIO 010000 (010000) se entrega a D00302 hasta
D00304 en ASCII.

Nmero FAL = 10
Indicador de direccin de Modo de salida de diagnstico = 8 (salida de direccin de bit y mensaje)
bit encontrada.
1: Direccin de bit Tipo de entrada
encontrada 0: Normalmente abierta

R: D00300
R+1: D00301 No se utiliza.
R+2: D00302 30 31
R+3: D00303 30 30 Contiene la direccin del bit en ASCII.
(010000 se convierte a ASCII).
R+4: D00304 30 30
R+5: D00305 2D 30
R+6: D00306 54 25
R+7: D00307 25 F4
Mensaje de error FAL configurado por el
25 00 usuario entregado al dispositivo perifrico
R+8: D00308
00 00 por la funcin de monitorizacin de tiempo.
R+9: D00309 El display del dispositivo perifrico
R+10: D00310 00 00 mostrar lo siguiente: 010000-0 ERROR.

Configuracin del tiempo de monitorizacin con la funcin teaching


El tiempo de monitorizacin puede configurarse automticamente con la fun-
cin de teaching cuando se ha especificado una direccin de canal para T.
Condicin de
ejecucin

La funcin de teaching
puede ajustar el tiempo
T de monitorizacin de T
R automticamente.

Salida de
diagnstico

Para iniciar la funcin de teaching ponga en ON A59800 (el bit de teaching de


FPD). Mientras A59800 est en ON, FPD(269) medir el tiempo que tarda en
ponerse en ON la salida de diagnstico(CIO 020000) a partir del momento en
que se activa la condicin de ejecucin (CIO 030000). Si el resultado supera
el tiempo de monitorizacin de T, el tiempo medido se multiplicar por 1,5, y
el valor as obtenido se almacenar como nuevo tiempo de monitorizacin.

1103
Otras instrucciones Seccin 3-31

Bit de teaching A59800


de FPD

Condicin de CIO 030000


ejecucin
No se ha generado error.
Salida de CIO 020000
diagnstico
Tiempo medido: ta t's(ta 1,5)
Teaching

ts: Configuracin inicial de T


ta: Tiempo medido
ts: Nueva configuracin en T despus del teaching
(Cuando ta > ts, ts = ta 1,5)

3-31 Otras instrucciones


Esta seccin describe instrucciones para manipular el indicador de acarreo,
seleccionar el banco de EM y aumentar el tiempo de ciclo mximo.
Instruccin Nemnico Cdigo de Pgina
funcin
SET CARRY STC 040 1104
CLEAR CARRY CLC 041 1105
SELECT EM BANK EMBC 281 1106
EXTEND MAXIMUM CYCLE TIME WDT 094 1108
SAVE CONDITION FLAGS CCS 282 1110
LOAD CONDITION FLAGS CCL 283 1112
CONVERT ADDRESS FROM CV FRMCV 284 1113
CONVERT ADDRESS TO CV TOCV 285 1117
DISABLE PERIPHERAL SERVICING IOSP 287 1121
ENABLE PERIPHERAL SERVICING IORS 288 1123

3-31-1 SET CARRY: STC(040)


Pone en ON el indicador de acarreo (CY).
Smbolo de diagrama de
rels STC(040)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON STC(040)
Se ejecuta una vez en el diferencial ascendente @STC(040)
Se ejecuta una vez en el diferencial Incompatible
descendente
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Descripcin Cuando la condicin de ejecucin est en ON, STC(040) pone en ON el indi-


cador de acarreo (CY). Aunque STC(040) pone en ON el indicador de aca-
rreo, el indicador se pondr en ON/OFF a causa de la subsecuente ejecucin
de instrucciones que afecten a este indicador.

1104
Otras instrucciones Seccin 3-31

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF o sin cambios (vase la nota).
Indicador de igual = OFF o sin cambios (vase la nota).
Indicador de acarreo CY ON
Indicador de negativo N OFF o sin cambios (vase la nota).

Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF. En las CPUs
CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen sin cambios.

Precauciones ROL(027), ROLL(572), ROR(028) y RORL(573) usan el indicador de acarreo


en sus operaciones de desplazamiento de rotacin. Cuando utilice alguna de
estas instrucciones use STC(040) y CLC(041) para configurar y borrar el indi-
cador de acarreo.

3-31-2 CLEAR CARRY: CLC(041)


Empleo Pone en OFF el indicador de acarreo (CY).

Smbolo de diagrama de
rels
CLC(041)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CLC(041)
Se ejecuta una vez en el diferencial ascendente @CLC(041)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Descripcin Cuando la condicin de ejecucin est en ON, CLC(040) pone en OFF el indi-
cador de acarreo (CY). Aunque CLC(040) pone en OFF el indicador de aca-
rreo, el indicador se pondr en ON/OFF a causa de la subsecuente ejecucin
de instrucciones que afecten a este indicador.

Indicadores
Nombre Etiqueta Operacin
Indicador de error ER OFF o sin cambios (vase la nota).
Indicador de igual = OFF o sin cambios (vase la nota).
Indicador de acarreo CY OFF
Indicador de negativo N OFF o sin cambios (vase la nota).

Nota En las CPUs CS1 y CJ1 estos indicadores se ponen en OFF.


En las CPUs CS1-H, CJ1-H, CJ1M, y CS1D, estos indicadores se mantienen
sin cambios.

Precauciones +C(402), +CL(403), +BC(406) y +BCL(407) usan el indicador de acarreo en sus


operaciones de suma. Use CLC(041) justo antes de cualquiera de estas instruc-
ciones para prevenir cualquier influencia de otras instrucciones precedentes.
C(412), CL(413), BC(416) y BCL(417) usan el indicador de acarreo en
sus operaciones de resta. Use CLC(041) justo antes de cualquiera de estas
instrucciones para prevenir cualquier influencia de otras instrucciones prece-
dentes.

1105
Otras instrucciones Seccin 3-31

ROL(027), ROLL(572), ROR(028) y RORL(573) usan el indicador de acarreo


en sus operaciones de desplazamiento de rotacin. Cuando utilice alguna de
estas instrucciones use STC(040) y CLC(041) para configurar y borrar el indi-
cador de acarreo.
Nota Las instrucciones +(400), +L(401), +B(404), +BL(405), (410), L(411),
B(414) y BL(415) no incluyen el indicador de acarreo en sus operaciones
de suma y resta. Como regla general, utilice estas instrucciones cuando lleve
a cabo sumas o restas.

3-31-3 SELECT EM BANK: EMBC(281)


Empleo Cambia el banco de EM actual.

Smbolo de diagrama de
rels
EMBC(281)
N: Nmero de banco
N de EM

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON EMBC(281)
Se ejecuta una vez en el diferencial ascendente @EMBC(281)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos N: Nmero de banco EM


Especifica el nuevo nmero de banco de EM en hexadecimal (0000 hasta 000C).

Especificaciones del
operando rea N
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
Constantes #0000 hasta #000C (binario)
Registros de datos DR0 hasta DR15

1106
Otras instrucciones Seccin 3-31

rea N
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin EMBC(281) cambia el banco de EM (Extended Data Memory Memoria de


datos extendida) actual al indicado por el nmero de banco de EM (N). Al
mismo tiempo, el nuevo nmero de banco de EM se entrega a A301.
Hay hasta 13 bancos (0 hasta C) disponibles en el rea de EM y hay 32.768
canales (E00000 hasta E32767) en cada banco. Las direcciones de EM pue-
den identificarse de las dos siguientes maneras. Debe utilizarse EMBC(281)
para cambiar el banco de EM actual si se usa el primer mtodo.

1,2,3... 1. Las direcciones de EM pueden especificarse sin el nmero de banco, es


decir, E00000 hasta E32767, para indicar las direcciones del banco de EM
actual.
2. Las direcciones de EM pueden especificarse con el nmero de banco, es
decir, En_00000 hasta En_32767 (n = 0 a C), para indicar las direcciones
de un banco de EM particular.

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si N no est dentro del rango de 0000 hasta 000C.
de error ON si N especifica un nmero de banco de EM inexistente.
(Este error se producir si el banco de EM especificado ha
sido registrado como memoria de archivos en la configura-
cin del PLC).
OFF en el resto de los casos.

La siguiente tabla muestra los indicadores relevantes del rea auxiliar.


Nombre Direccin Operacin
Banco EM actual A301 Contiene el nmero de banco de EM actual en
hexadecimal (0000 hasta 000C).

Precauciones El nmero de banco de EM actual cambiado en una tarea cclica se retuene


cuando se alterna la operacin entre tareas. Por ejemplo, si se utiliza
EMBC(281) en la tarea 1 para cambiar el banco de EM actual del banco B al
banco C, el banco C seguir siendo el banco de EM para todas las tareas
cclicas, incluso cuando la operacin cambie a la tarea 2.
El nmero de banco de EM actual cambiado en una tarea de interrupcin es
vlido solamente durante la ejecucin de la interrupcin en la que fue cam-
biado. Se volver al nmero de banco de EM anterior una vez que la ejecu-
cin de la tarea de interrupcin se haya completado.
Se producir un error si el banco de EM especificado ha sido registrado como
memoria de archivos en la configuracin del PLC.
Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo, el nmero de
banco de EM actual cambia al banco C y el nuevo nmero de banco (000C
hexadecimal) se entrega a A301.

1107
Otras instrucciones Seccin 3-31

3-31-4 EXTEND MAXIMUM CYCLE TIME: WDT(094)


Empleo Extiende el tiempo de ciclo mximo, pero slo para el ciclo en el que se eje-
cuta la instruccin. WDT(094) puede utilizarse para prevenir errores para
tiempos de ciclo largos si se requiere un tiempo de ciclo largo temporalmente
para procesamiento especial.

Smbolo de diagrama de
rels
WDT(094)
T: Seleccin de
T temporizador

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON WDT(094)
Se ejecuta una vez en el diferencial ascendente @WDT(094)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos T: Seleccin de temporizador


Especifica la configuracin del temporizador de watchdog entre 0000 y 0F9F
hexadecimal o entre &0000 y &3999 decimal.

Especificaciones del
operando rea T
rea CIO ---
rea de Trabajo ---
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes 0000 hasta 0F9F (binario)
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ---
recto utilizando regis-
tros de ndice

Descripcin WDT(094) extiende el tiempo de ciclo mximo para el ciclo en el que se eje-
cuta la instruccin. El ajuste del temporizador de watchdog en la configura-
cin del PLC se extiende en un intervalo de T 10 ms (0 hasta 39.990 ms).
La siguiente tabla muestra los ajustes del temporizador de watchdog en la
configuracin del PLC. El valor por defecto del tiempo de ciclo mximo es

1108
Otras instrucciones Seccin 3-31

1.000 ms, aunque puede configurarse en cualquier valor entre 1 hasta 40.000
ms en unidades de 10 ms.
Nombre Funcin Configuracin
Tiempo de Se registrar un error de tiempo de 0: Configuracin predetermi-
ciclo de ciclo demasiado largo (error fatal) si el nada (1.000 ms)
supervisin tiempo de ciclo excede la configuracin 1: Configuracin de tiempo de
mxima. usuario
Configura el tiempo de ciclo mximo. 0001 a 0FA0
(Esta configuracin es vlida sola- (1 hasta 40.000 ms, unidades
mente cuando la primera configuracin de 10 ms)
se ha ajustado como 1).

Indicadores
Nombre Eti- Operacin
queta
Indicador de ER ON si la configuracin del temporizador de watchdog
error excede de 40 segundos.
OFF en el resto de los casos.

La siguiente tabla muestra los canales e indicadores relevantes del rea auxiliar.
Nombre Direccin Operacin
Indicador de tiempo A40108 ON cuando el tiempo de ciclo actual ha sobrepa-
de ciclo demasiado sado el tiempo de ciclo mximo (tiempo de ciclo
largo de supervisin) especificado en la configuracin
del PLC. Este es un error fatal que causa la
detencin de la ejecucin del programa.
Tiempo de ciclo A262 y Estos canales contienen el tiempo de ciclo
mximo A263 mximo en valor binario de 32 bits. Este valor se
actualiza cada ciclo.
Tiempo de ciclo A264 y Estos canales contienen el tiempo de ciclo actual
actual A265 en valor binario de 32 bits. Este valor se actualiza
cada ciclo.

Precauciones WDT(094) puede utilizarse ms de una vez en un ciclo. Cuando se ejecuta


WDT(094) ms de una vez, las extensiones de tiempo de ciclo se suman,
pero el total no debe exceder de 40.000 ms. WDT(094) no puede ejecutarse
de nuevo si el ciclo ya ha sido extendido hasta 40.000 ms.

Ejemplos En este ejemplo se utiliza el tiempo de ciclo mximo predeterminado (1.000 ms).

1,2,3... 1. Cuando CIO 000000 se pone en ON, la primera instruccin WDT(094) ex-
tiende el tiempo de ciclo mximo en 300 ms (30 10 ms). Por ello, el tiem-
po de ciclo mximo en este punto es de 1.300 ms.
2. Cuando CIO 000001 se pone en ON, la segunda instruccin WDT(094) in-
tenta extender el tiempo de ciclo mximo en otros 39.000 ms. Ya que el
nuevo tiempo de ciclo mximo (40.300 ms) excede el lmite superior de
40.000 ms, los 300 ms extra se ignoran. Como resultado, la segunda ins-
truccin WDT(094) extiende el tiempo de ciclo mximo realmente en
38.700 ms.
3. Cuando CIO 000002 se pone en ON, la tercera instruccin WDT(094) in-
tenta extender el tiempo de ciclo mximo en otros 1.000 ms. Ya que el nue-
vo tiempo de ciclo mximo ya ha alcanzado el lmite superior de 40.000
ms, la tercera instruccin WDT(094) no se ejecuta.

1109
Otras instrucciones Seccin 3-31

3-31-5 SAVE CONDITION FLAGS: CCS(282)


Guarda el estado actual de los indicadores de condicin en un rea separada
de la CPU. Se guarda el estado actual de los indicadores de tal manera que
este pueda leerse (restaurarse) con CCL(283) en una ubicacin diferente del
programa, en una tarea diferente, o incluso en un ciclo posterior.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de
rels CCS(282)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CCS(282)
Se ejecuta una vez en el diferencial ascendente @CCS(282)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Descripcin Cuando la condicin de ejecucin est en ON, CCS(282) almacena el estado


actual de los indicadores de condicin (excepto para los indicadores ALWAYS
ON y ALWAYS OFF) en un rea separada de la CPU. El estado de los
siguientes indicadores de condicin se mantendr. ER, CY, >, =, <, N, OF, UF,
>=, <> y <=.
El estado guardado de los indicadores de condicin puede leerse (restau-
rarse) posteriormente solamente con CCL(283), la instruccin LOAD CONDI-
TION FLAGS. El estado puede leerse en cualquiera de los siguientes casos:
En una tarea
Entre diferentes tareas cclicas
Entre ciclos

1110
Otras instrucciones Seccin 3-31

En una tarea Entre tareas cclicas

CCS
CCS

CCL

CCL

Entre ciclos

A
CCL(283) se ejecuta para leer el estado
CCS
en el siguiente ciclo despus de haberse
B ejecutado CCS(282) para guardar el
CCL estado.

Nota 1. El estado de los indicadores de condicin no puede guardarse/cargarse


entre una tarea cclica y una tarea de interrupcin.
2. Cuando se ejecuta CCS(282), la instruccin sobrescribe la informacin del
indicador de condicin anterior que se haba guardado.
Todos los indicadores de condicin se borran cuando la operacin cambia de
una tarea a otra. Use las instrucciones CCS(282) y CCL(283) para guardar y
cargar el estado del indicador de condicin entre tareas o ciclos.
Por ejemplo, las instrucciones CCS(282) y CCL(283) hacen posible usar el
estado del indicador CY (error de diagnstico de monitorizacin de tiempo)
de la ejecucin de FPD(269) en un punto posterior del programa, no inmedia-
tamente despus de la ejecucin de la instruccin.
Tarea

Los resultados de la comparacin se guardan en los indicadores


FPD de condicin.
(En este caso los resultados de la instruccin COMPARE pueden
utilizarse en la instruccin B incluso si esos resultados se ven
afectados por la ejecucin de la instruccin A).
Guarda el estado de los indicadores de condicin en una
CCS ubicacin separada de la CPU.

Instruccin A

CCL Restaura el estado de los indicadores de condicin.

El indicador de igual reflejar el resultado de la instruccin


Instruccin B COMPARE, no el resultado de la instruccin A.

Indicadores No hay indicadores afectados por estas instrucciones.

Ejemplos En el siguiente ejemplo, CCS(282) guarda el resultado de una comparacin,


de tal manera que este resultado pueda usarse como condicin de ejecucin
posteriormente en el programa.

1111
Otras instrucciones Seccin 3-31

000000
CMP Cuando CIO 000000 est en ON en el
D00000 siguiente ejemplo, CMP(020) compara los
contenidos de D00000 y D00300 y CCS(282)
D00300
guarda esos resultados.

CCS

CCL CCL(283) restaura los indicadores de


condicin guardados.

=
MOV Esta instruccin MOV(021) se ejecuta si el
D00000 resultado de la instruccin CMP(020) hace
D00200 que el indicador de igual se ponga en ON.

3-31-6 LOAD CONDITION FLAGS: CCL(283)


Restaura el estado de los indicadores de condicin que fueron guardados en
un rea separada de la CPU con CCS(282). Tambin es posible utilizar
CCL(283) independientemente para borrar los indicadores de condicin.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de
rels CCL(283)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CCL(283)
Se ejecuta una vez en el diferencial ascendente @CCL(283)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Descripcin Cuando la condicin de ejecucin est en ON, CCL(283) restaura (lee) el


estado de los indicadores de condicin (excepto para los indicadores
ALWAYS ON y ALWAYS OFF). Se restaura (lee) el estado de los siguientes
indicadores de condicin. ER, CY, >, =, <, N, OF, UF, >=, <> y <=.
Los indicadores de condicin son compartidos por todas las instrucciones,
as que el estado de estos indicadores puede cambiar muchas veces durante
el ciclo del PLC segn se ejecuta cada instruccin. Anteriormente era nece-
sario colocar condiciones utilizando los indicadores de condicin inmediata-
mente despus de la instruccin de control, de tal manera que el estado de
los indicadores de condicin no se viera afectado por las instrucciones ejecu-
tadas. Las instrucciones CCS(282) y CCL(283) permiten que la instruccin
de control quede separada de las condiciones de ejecucin que dependen
del resultado.
Por ejemplo, CCS(282) puede almacenar el estado del indicador de condicin
despus de la ejecucin de una instruccin de comparacin y el resultado
puede restaurarse posteriormente. El resultado no debe utilizarse inmediata-
mente despus de la ejecucin de la instruccin.

1112
Otras instrucciones Seccin 3-31

Tarea

Instruccin A

CCL(283) se utiliza para borrar los


CCL indicadores de condicin despus de la
ejecucin de la instruccin A, de tal
manera que esos resultados no afecten a
Instruccin B la instruccin B ni a instrucciones
posteriores.

Consulte en la seccin 3-31-5 SAVE CONDITION FLAGS: CCS(282) ms


ejemplos del uso de CCS(282) y CCL(283).

Indicadores No hay indicadores afectados por estas instrucciones.

3-31-7 CONVERT ADDRESS FROM CV: FRMCV(284)


Empleo Convierte una direccin de memoria de los PLC de la serie CV en la direccin
correspondiente de memoria de los PLC de la serie CS/CJ. FRMCV(284)
puede ser til cuando se convierten programas de la serie CV que utilizan
direcciones de la memoria del PLC de tal manera que sean compatibles con
los PLC de la serie CS/CJ.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de
rels FRMCV(284)
S: Canal que contiene la direccin
S de memoria de serie CV
D: Registro de ndice de destino
D

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FRMCV(284)
Se ejecuta una vez en el diferencial ascendente @FRMCV(284)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Descripcin Cuando la condicin de ejecucin est en ON, FRMCV(284) ejecuta. las


siguientes operaciones
1. La direccin de memoria del PLC de la serie CV especificada en S se con-
vierte a su equivalente de direccin del rea de datos de la serie CV.
2. FRMCV(284) determina la direccin de memoria del PLC de la serie CS/
CJ que corresponde a la misma direccin del rea de datos de la serie CV.
3. La doreccin de memoria del PLC de la serie CS/CJ se entrega a D. (Debe
especificarse un registro de ndice (IR0 hasta IR15) para D).
El siguiente ejemplo muestra cmo se utiliza FRMCV(284) para convertir la
direccin de memoria del PLC de la serie CV para D00001.

1113
Otras instrucciones Seccin 3-31

FRMCV
D00000
IR1

D00000 #2001

1. La direccin de memoria del PLC de la


serie CV se convierte a su equivalente de
direccin del rea de datos de la serie CV.
Direccin de memoria Direccin del rea
del PLC de la serie CV de datos de la serie
CV
2001 hexadecimal D00001

2. La direccin del rea de datos


correspondiente del PLC de la serie CV se
convierte a su equivalente de direccin de
memoria del PLC de la serie CS/CJ.
Direccin de
Direccin del rea de memoria del PLC de
datos de la serie CS/CJ la serie CS/CJ
D00001 10001 hexadecimal

En
almacenamiento
3. La direccin de memoria del PLC
de la serie CS/CJ se almacena en D.

IR1 10001 hexadecimal

Direccin del rea de datos Serie CV Direccin de memoria del PLC


0000CH 0000Hex
0001CH 0001Hex

D00000 Conversin 2000Hex


D00001 2001Hex S
Especifique la direccin de
memoria del PLC de la serie
Direccin del E32765 FFFDHex CV en S. (En este caso, 2001
rea de datos hexadecimal es la direccin de
correspondiente Serie CS/CJ memoria del PLC de D00001).
0000CH 0C000Hex
0001CH 0C001Hex

D00000 Conversin 10000Hex


D00001 10001Hex La direccin de memoria del PLC de la
serie CS/CJ se almacena en D. (En
este caso, la direccin del rea de datos
EC FFFFFHex D00001 se convierte a la direccin de
memoria del PLC 10001 hexadecimal y
32767 se almacena).
D: IR1 10001Hex

Nota Si no hay equivalente en la serie CS/CJ para la direccin de memoria del PLC
de la serie CV especificada se producir un error, el indicador de error se
pondr en ON, y la direccin no se convertir.
Si se utiliza un registro de ndice como operando con un prefijo ,IR, la ins-
truccin tendr efectos sobre el canal indicado por la direccin de memoria
del PLC en el registro de ndice, no sobre el propio registro de ndice. Una vez
se haya almacenado la direccin de memoria del PLC deseada en el registro
de ndice, puede utilizarse el registro de ndice mismo como operando para la
instruccin.

1114
Otras instrucciones Seccin 3-31

La instruccin FRMCV(284) puede utilizarse para convertir un programa de la


serie CV con los siguientes dos tipos de programacin para su uso en un PLC
de la serie CS/CJ. Vanse los Ejemplos ms delante en esta misma seccin.
1. Cuando se utiliza direccionamiento indirecto DM en modo binario (*DM)
(cuando se especifica indirectamente una direccin del rea de datos con
una direccin de memoria del PLC del rea DM)
2. Cuando se utilizan direcciones de memoria de PLC de la serie CV direc-
tamente como valores (cuando se almacenan direcciones de memoria del
PLC en registros de ndice con direccionamiento directo utilizando una
instruccin como MOV(021))

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6143 ---
rea de Trabajo W000 hasta W511 ---
rea de bit en Espera H000 hasta H511 ---
rea Bit Auxiliar A448 hasta A959 ---
rea Temporizador T0000 hasta T4095 ---
rea Contador C0000 hasta C4095 ---
rea DM D00000 hasta D32767 ---
rea EM sin banco E00000 hasta E32767 ---
rea EM con Banco En_00000 hasta En_32767 ---
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767 ---
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767 ---
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Cualquier constante excepto 09FF ---
hexadecimal, 0A00 hasta 0AFF hexa-
decimal o bien 0D00 hasta 0E3F
hexadecimal
Registros de datos DR0 hasta DR15 ---
Registros de ndice --- IR0 hasta IR15
Direccionamiento indi- ,IR0 hasta ,IR15 ---
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048
tros de ndice hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta IR15

Indicadores
Nombre Eti- Operacin
queta
Indicador de ER ON si S especifica una de las siguientes direcciones de
error memoria de PLC que no existen en la serie CS/CJ:
rea de rels temporales TR (09FF hexadecimal)
rea CPU Bus Link (G) (0A00 hasta 0AFF hexadecimal)
reas SFC (0D00 hasta 0E3F hexadecimal)
OFF en el resto de los casos.

1115
Otras instrucciones Seccin 3-31

Ejemplos Ejemplo 1: Conversin de un programa de la serie CV con


*direccionamiento indirecto DM en modo binario
En este ejemplo para FRMCV(284) se especifica un canal DM en S, la direc-
cin de memoria del PLC en l contenida se almacena en un registro de
ndice, y el registro de ndice se utiliza para direccionamiento indirecto.
Programa de la serie CV Programa de la serie CS/CJ
(programa usando direccionamiento
indirecto DM en modo binario)
000000 Programa equivalente 000000

MOV FRMCV
S #1234 S D00000
D D IR0

Configuracin del PLC


Datos DM indirectos: MOV
Cuando las direcciones DM estn en binario, el contenido S #1234
del canal DM se trata como una direccin de memoria del
PLC y especifica la direccin correspondiente en la D ,IR0
memoria de E/S.
En este caso, el valor de D00000 es 0200 hexadecimal La En este caso, el valor de D00000 es 0200 hexadecimal La
direccin del rea de datos correspondiente es CIO 0512, direccin del rea de datos corespondiente de la serie CV
as que se transfiere #1234 a CIO 0512. es CIO 0512. La direccin de memoria del PLC de la serie
Direccin de canal: CS/CJ para CIO 0512 es 0000C200 hexadecimal, as que
Direccin de memoria del este valor se almacena en IR0. El operando de destino de
D00000 PLC de la serie CS/CJ
0200 Hexadecimal MOV(021) direcciona indirectamente el contenido de IR0,
as que se transfiere #1234 a CIO 0512.
Direccin de memoria del
Direccin de canal: PLC de la serie CS/CJ
CIO 0512 #1234 0200 Hexadecimal Direccin de canal de
la serie CS/CJ: 0200 Hexadecimal
MOV(021) D00000
Direccin de
#1234 memoria del PLC
Direccin de canal de la serie CV:
de la serie CV: 0200 Hexadecimal
FRMCV
CIO0512 (284)
Equivalente Direccin de
memoria del PLC
de la serie CS/CJ:
Direccin de canal de la OC0200 Hexadecimal

serie CS/CJ: CIO 0512


Direccin de canal de la
serie CS/CJ: IR0 000OC0200 Hexadecimal
Direccin de
memoria del PLC
Direccin de canal de la de la serie CS/CJ: MOV
serie CS/CJ: CIO 0512 #1234
OC0200 Hexadecimal
(021)
MOV(021)
#1234

1116
Otras instrucciones Seccin 3-31

Ejemplo 2: Conversin de un programa de la serie CV con direcciones de


memoria del PLC de la serie CV almacenadas directamente en registros
de ndice
En este ejemplo para FRMCV(284), la direccin de memoria del PLC de la
serie CV se especifica directamente en S.
Programa de la serie CV Programa de la serie CS/CJ
(programa usando direcciones de memoria
del PLC almacenadas directamente en IR)

000000
000000
Programa equivalente
FRMCV
MOV
S #0200
S #0200
D IR0
D IR0

En este caso la direccin de memoria del


PLC 0200 hexadecimal se almacena en
el registro de ndice IR0.

0200Hex
En este caso la direccin de memoria del PLC de la
serie CV 0200 hexadecimal se corresponde con CIO
0512. La direccin de memoria del PLC de la serieCS/
CJ para CIO 0512 es 0000C200 hexadecimal, as que
IR0 #0200 este valor se almacena en IR0.

Direccin de canal de
la serie CV
Direccin de memoria
CIO 0512 0200Hex del PLC de la serie CV:
0200 hexadecimal

Direccin de
canal de la CIO 0512
Direccin de memoria
serie CS/CJ del PLC de la serie CS/
CJ: 00C200
hexadecimal
IR #000C200

3-31-8 CONVERT ADDRESS TO CV: TOCV(285)


Empleo Convierte una direccin de memoria del PLC de la serie CS/CJ en su direc-
cin correspondiente de memoria del PLC de la serie CV. TOCV(285) puede
ser til cuando se convierten programas de la serie CS/CJ que utilizan direc-
ciones de la memoria del PLC de tal manera que sean compatibles con los
PLC de la serie CV.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H, CJ1M y CS1D.

Smbolo de diagrama de
rels TOCV(285) S: Registro de ndice que
S contiene la direccin de memoria
del PLC de la serie CS/CJ
D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TOCV(285)
Se ejecuta una vez en el diferencial ascendente @TOCV(285)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

1117
Otras instrucciones Seccin 3-31

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Descripcin Cuando la condicin de ejecucin est en ON, TOCV(285) ejecuta. las


siguientes operaciones
1. La direccin de memoria del PLC de la serie CS/CJ especificada en S se
convierte a su equivalente de direccin del rea de datos de la serie CS/
CJ. (Debe especificarse un registro de ndice (IR0 hasta IR15) para S).
2. TOCV(284) determina la direccin de memoria del PLC de la serie CV que
corresponde a la misma direccin del rea de datos de la serie CS/CJ.
3. La direccin de memoria del PLC de la serie CV se entrega a D.
El siguiente ejemplo muestra cmo se utiliza TOCV(285) para convertir la
direccin de memoria del PLC de la serie CS/CJ para D00001.

TOCV
IR1
D00100

IR1 10001 hexadecimal


1. La direccin de memoria del PLC de la
serie CS/CJ se convierte a su equivalente
de direccin del rea de datos de la serie
CS/CJ.
Direccin de memoria del Direccin del rea
PLC de la serie CS/CJ de datos de la serie
CS/CJ
10001 hexadecimal D00001

2. La direccin del rea de datos


correspondiente del PLC de la serie CV se
convierte a su equivalente de direccin de
memoria del PLC de la serie CV.
Direccin del rea de Direccin de memoria
datos de la serie CV del PLC de la serie
D00001 2001 hexadecimal

En almacena-
3. La direccin de memoria del miento
PLC de la serie CV se almacena
en D.

D00100 2001 hexadecimal

1118
Otras instrucciones Seccin 3-31

Direccin del rea de datos Serie CS/CJ Direccin de memoria del PLC
0000CH 0C000Hex
0001CH 0C001Hex

D00000 Conversin
10000Hex
D00001 10001Hex S
Especifique la direccin de
memoria del PLC de la serie
EC_32767 FFFFFHex CS/CJ en S. (En este caso,
10001 hexadecimal es la
Serie CV direccin de memoria del
Direccin del PLC de D00001).
rea de datos 0000CH 0000Hex
correspon- 0001CH 0001Hex
diente
Conversin
La direccin de memoria del
D00000 2000Hex PLC de la serie CV se
D00001 2001Hex almacena en D. (En este
caso, la direccin del rea de
datos D00001 se convierte a
E32765 FFFDHex la direccin de memoria del
PLC 2001 hexadecimal y se
almacena).
D: D00100 2001Hex

Nota 1. Si no hay equivalente en la serie CV para la direccin de memoria de PLC


de la serie CS/CJ especificada se producir un error, el indicador de error
se pondr en ON, y la direccin no se convertir.
2. Los datos de direccin de memoria del PLC de la serie CV almacenados
por TOCV(285) pueden transferirse a un PLC de la serie CV utilizando CX-
Programmer.
3. La misma direccin del rea de datos que era utilizada en el programa de
la serie CS/CJ puede especificarse en el programa de la serie CV usando
direccionamiento indirecto de registro de ndice (prefijo ,IR) o direcciona-
miento indirecto DM en modo binario (*DM).

Especificaciones del
operando rea S D
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A448 hasta A959
rea Temporizador --- T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes Ver nota 1. ---
Registros de datos --- DR0 hasta DR15

1119
Otras instrucciones Seccin 3-31

rea S D
Registros de ndice IR0 hasta IR15 ---
Direccionamiento indi- --- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048
tros de ndice hasta +2047 ,IR15
DR0 hasta DR15, IR0 hasta IR15

Nota 1. Se producir un error y el indicador de error se pondr en ON si S especi-


fica una de las siguientes direcciones de memoria del PLC que no existen
en la serie CV:
rea o direcciones Direccin de memoria del PLC
rea de indicador de 0000 B800 hasta 0000 B801 hexadecimal
tarea
A512 hasta A959 0000 BA40 hasta 0000 BBFF hexadecimal
entre CIO 2556 hasta 0000 C9FC hasta 0000 D7FF hexadecimal
CIO 6143
T1024 hasta T4095 0000 BE40 hasta 0000 BEFF hexadecimal y
0000 E400 hasta 0000 EFFF hexadecimal
C1024 hasta C4095 0000 BF40 hasta 0000 BFFF hexadecimal y
0000 F400 hasta 0000 FFFF hexadecimal
rea HR 0000 D800 hasta 0000 D9FF hexadecimal
rea WR 0000 DE00 hasta 0000 DFFF hexadecimal
D24576 hasta D32767 0001 6000 hasta 0001 7FFF hexadecimal
Especificacin de banco 0001 8000 hasta 000F 7FFF hexadecimal
de EM
E32766 hasta D32767 000F FFFE hasta 000F FFFF hexadecimal

2. Se producir un error y el indicador de error se pondr en ON si se espe-


cifica un rea que no sea el rea de registro de ndice para S.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si S especifica una direccin de memoria del PLC
error que no existe en la serie CV.
ON si S no es una constante o registro de ndice.
OFF en el resto de los casos.

Ejemplo Conversin de un programa de la serie CS/CJ con direccionamiento


indirecto de registro de ndice
1. En este ejemplo TOCV(285) se especifica un registro de ndice en S. La
direccin de memoria del PLC de la serie CS/CJ de ese registro de ndice
se convierte a su equivalente de la serie CV.
2. La direccin de memoria del PLC de la serie CV se transfiere a la direccin
del rea de datos especificada.
3. Use la direccin de memoria del PLC de la serie CV del programa de la
serie CV.

1120
Otras instrucciones Seccin 3-31

Programa de la serie CS/CJ Programa de la serie CS/CJ Programa de la serie CV


(programa usando direccionamiento
indirecto de registro de ndice)
000000 000001 000000
MOV TOCV MOV
S #1234 S IR0 S #1234
D ,IR0 D D00200 D *D00200

En este caso, IR0 contiene 10001 hexadeci-En este caso, IR0 contiene 10001 hexadeci- Transfiere los conte-
mal. La direccin del rea de datos corres- mal. Ya que la direccin del rea de datos nidos de D00200 a
pondiente a la direccin de memoria del correspondiente a la direccin de memoria del la serie CV.
PLC 10001 hexadecimal es D00001, as PLC de la serie CS/CJ 10001 hexadecimal es
que se transfiere #1234 a D00001. D00001, TOCV(285) almacena la direccin de
Direccin del memoria del PLC de la serie CV para D00001 En el PLC de la serie CV el destino de la
rea de 10001Hex
(2001 hexadecimal) en el canal de destino instruccin MOV(021) es indirectamente
datos de la
serie CS/CJ: Direccin de D00200. direccionado (en modo binario) hasta D00200,
IR0 memoria del PLC: Direccin
rea de
del
datos IR0 10001Hex
as que se transfiere #1234 a D00001.
#1234
Direccin 10001 hexadecimal de la serie CS/ Direccin de Configuracin del PLC
del rea de
MOV(021) CJ memoria del PLC Datos DM indirectos: Cuando las direcciones
datos de la
serie CS/CJ: de la serie CS/CJ: DM indirectas estn en binario, el contenido del
#1234 Direccin del rea
D00001 de datos de la serie D0001 10001Hex canal DM se trata como una direccin de
CS/CJ
Direccin de memoria del PLC y especifica la direccin
Igual memoria del PLC correspondiente de la memoria de E/S.
Direccin del
de la serie CV: D00200 2001Hex
2001Hex Direccin del rea de *Especificacin DM
rea de datos D0001 datos de la serie CV:
de la serie CV: Direccin de
memoria del PLC
de la serie CV
Direccin del
Direccin del rea D00200 2001Hex rea de datos D0001 #1234 2001Hex
de datos de la Transfiere los contenidos de la serie CV:
serie CS/CJ
de D00200 a la serie CV.
#1234

3-31-9 DISABLE PERIPHERAL SERVICING: IOSP(287) (slo CS1-H/CJ1-


H/CJ1M)
Empleo Inhabilita el servicio de perifricos durante la ejecucin del programa en modo
de procesamiento paralelo o modo de prioridad de servicios de perifricos.
Encontrar ms detalles sobre el modo de procesamiento paralelo y el modo
de prioridad de servicio de perifricos en la Seccin 6 Funciones avanzadas
del Manual de programacin de PLC de la serie CS/CJ.
Nota Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H y CJ1M. No
puede utilizarse con CPUs CS1, CJ1 o CS1D.

Smbolo de diagrama de
rels IOSP(287)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON IOSP(287)
Se ejecuta una vez en el diferencial ascendente @IOSP(287)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK No se admite

Descripcin Use IOSP(287) en una tarea cclica en modo de procesamiento paralelo (con
acceso sincrnico o asincrnico a la memoria) para inhabilitar los siguientes tipos
de servicio de perifricos. El servicio de perifricos se habilitar de nuevo cuando
se ejecute la instruccin IORS(288) ENABLE PERIPHERAL SERVICING.
Servicio de eventos con Unidades de E/S especiales
Servicio de eventos con Unidades de bus de CPU

1121
Otras instrucciones Seccin 3-31

Servicio de puerto de perifricos


Servicio de puerto RS-232C
Servicio de eventos con tarjetas internas (slo serie CS)
Servicio de eventos (incluido procesamiento de instrucciones en segundo
plano) que utiliza un nmero de puerto de comunicaciones, es decir, un
puerto lgico interno.
Condicin de ejecucin

IOSP Inhabilita la ejecucin


de servicio de
perifricos

La ejecucin de servicio
de perifricos se
inhabilita entre
IOSP(287) y IORS(288).

Habilita la ejecucin
IORS de servicio de
perifricos

Cuando el servicio de perifricos se ha deshabilitado con IOSP(287), este


permanecer deshabilitado hasta que se ejecute IORS(288), END(001) o se
detenga la operacin del PLC.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si IOSP(287) se ejecuta en una tarea de interrupcin.
error OFF en el resto de los casos.

Precauciones IOSP(287) no puede ejecutarse en una tarea de interrupcin. Se producir un


error y el indicador de error se pondr en ON si IOSP(287) se ejecuta en una
tarea de interrupcin.
IOSP(287) no puede inhabilitar el servicio de perifricos en ms de una tarea.
Si es necesario inhabilitar el servicio de perifricos en ms de una tarea, pro-
grame IOSP(287) separadamente para cada tarea.

1122
Otras instrucciones Seccin 3-31

Ejemplo El siguiente ejemplo muestra el uso de IOSP(287) y IORS(288) para deshabi-


litar el servicio de perifricos en una seccin de programa.
W00000 Cuando el PLC est en
modo de procesamiento
IOSP paralelo el servicio de
perifricos se ejecuta en
paralelo.

Cuando W00000 est


en ON, la ejecucin de
servicio de perifricos
se inhabilita entre
IOSP(287) y IORS(288).

Habilita la ejecucin de
servicio de perifricos
IORS Cuando el PLC est en
modo de procesamiento
paralelo el servicio de
perifricos se ejecuta en
paralelo.

3-31-10 ENABLE PERIPHERAL SERVICING: IORS(288) (slo CS1-H/CJ1-


H/CJ1M)
Empleo Habilita el servicio de perifricos durante la ejecucin del programa en el
modo de procesamiento en paralelo que fue deshabilitado mediante la ins-
truccin IOSP(287) DISABLE PERIPHERAL SERVICING.
Esta instruccin es admitida slo por las CPUs CS1-H, CJ1-H y CJ1M.

Smbolo de diagrama de
rels IORS(288)

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON IORS(288)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK No se admite

Descripcin Use IORS(288) en una tarea cclica para retirar la prohibicin del servicio de
perifricos causada por la instruccin IOSP(287) DISABLE PERIPHERAL
SERVICING.
No es necesario programar IORS(288) con una condicin de ejecucin.
IORS(288) no puede ejecutarse en una tarea de interrupcin. Se producir
un error y el indicador de error se pondr en ON si IORS(288) se ejecuta en
una tarea de interrupcin.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si IORS(288) se ejecuta en una tarea de interrupcin.
error OFF en el resto de los casos.

1123
Instrucciones de programacin de bloques Seccin 3-32

3-32 Instrucciones de programacin de bloques


Esta seccin describe los programas de bloques y las instrucciones de pro-
gramacin de bloques
Instruccin Nemnico Cdigo de Pgina
funcin
BLOCK PROGRAM BEGIN BPRG 096 1128
BLOCK PROGRAM END BEND 801 1128
BLOCK PROGRAM PAUSE BPPS 811 1131
BLOCK PROGRAM RESTART BPRS 812 1131
CONDITIONAL BLOCK EXIT EXIT (NOT) 806 1137
(NOT)
IF (NOT) IF (NOT) 802 1133
ELSE ELSE 803 1133
IF END IEND 804 1133
ONE CYCLE AND WAIT (NOT) WAIT (NOT) 805 1140
TIMER WAIT TIMW (BCD) 813 1144
TIMWX (binario) 816
COUNTER WAIT CNTW (BCD) 814 1147
CNTWX (bina- 818
rio)
HIGH-SPEED TIMER WAIT TMHW (BCD) 817 1150
TMHWX (bina- 815
rio)
LOOP LOOP 809 1153
LOOP END (NOT) LEND (NOT) 810 1153

3-32-1 introduccin
Programas de bloques
Dispone de hasta 128 programas de bloques en el programa de usuario
(todas las tareas) con la serie CS/CJ. La ejecucin de cada programa de blo-
ques es controlada por una nica condicin de ejecucin. Todas las instruc-
ciones entre BPRG(096) y BEND<801) se ejecutan incondicionalmente
cuando la condicin de ejecucin para BPRG(096) se pone en ON. La ejecu-
cin de todas las instrucciones de programacin de bloques excepto
BPRG(096) no se ve afectada por la condicin de ejecucin. Esto permite
agrupar toda la programacin que debe ejecutarse con una nica condicin
de ejecucin en un programa de bloques.
Cada bloque se inicia mediante una condicin de ejecucin en el diagrama de
rels y todas las instrucciones del bloque se escriben en nemnicos. El pro-
grama de bloques es as una combinacin de instrucciones de diagrama de
rels y nemnicos.
Los programas de bloques permiten realizar operaciones de programacin
que pueden resultar difciles de programar con diagramas de rels, como
bifurcaciones condicionales y progresiones de pasos.

1124
Instrucciones de programacin de bloques Seccin 3-32

El siguiente ejemplo muestra dos programas de bloques.

rea de programa de bloques N 1


1
Cuando CIO 000000 est en ON, se
ejecutarn los contenidos del programa
de bloques 1. Las instrucciones
MOV(021) y SET se ejecutarn
incondicionalmente y el programa de
bloques terminar.

2 rea de programa de bloques N 2


Cuando CIO 000001 est en ON, se
ejecutarn los contenidos del programa
de bloques 2. Si CIO 000003 y CIO
000004 estn en ON, se llevar a cabo
la suma binaria (CIO 0002 +
#000AD00001).
Si uno o ambos de estos bits estn en
OFF, #0001 se mover a D00001. CIO
000015 ser entonces configurado
incondicionalmente y el programa de
bloques terminar.

Tareas y programas de bloques


Los programas de bloques pueden ubicarse dentro de tareas. Mientras que
las tareas se utilizan para dividir unidades de programacin de gran tamao,
los programas de bloques pueden utilizarse dentro de tareas para dividir
incluso ms la programacin en unidades ms pequeas controladas con
una nica condicin de ejecucin de diagrama de rels.
Al igual que en el caso de las tareas, los programas de bloques que no se ejecu-
tan (es decir, los que tienen una condicin de ejecucin OFF) no requieren
tiempo de ejecucin y pueden por ello utilizarse para reducir el tiempo de ciclo
(algo parecido a los saltos). Tambin al igual que en el caso de las tareas, pue-
den pausarse o reiniciarse otros bloques de un programa de bloques.
No obstante existen algunas diferencias entre las tareas y los programas de
bloques. Una diferencia es que no se utilizan condiciones de entrada con pro-
gramas de bloques a no ser que se programen de forma intencionada con
IF(802), WAIT(805), EXIT(806), IEND(810) u otras instrucciones. Adems,
existen algunas instrucciones que no pueden utilizarse en programas de blo-
ques, como las que detectan diferenciales ascendentes y descendentes.
Los programas de bloques pueden usarse en tareas cclicas o en tareas de
interrupcin. Cada nmero de programa de bloques desde 0 hasta 127 puede
utilizarse solamente una vez y no puede volver a utilizarse aunque se trate de
una tarea diferente.

1125
Instrucciones de programacin de bloques Seccin 3-32

Programa
Tarea 1 Programa de bloques 001

Programa de bloques n

Tarea 2

Tarea n

Utilizacin de las instrucciones de programacin de bloques


Bsicamente, IF(802), ELSE(803) y IEND(810) se utilizan para condiciones
de ejecucin (junto con bits) dentro de los programas de bloques.
Si debe ejecutarse A o B, entonces se utilizan IF A ELSE B IEND como se
muestra a continuacin.
Condicin de
Condicin de
ejecucin ejecucin ON?

"A" ejecutado (entre "B" ejecutado


IF y ELSE). (despus de ELSE).

Si debe ejecutarse A o B, entonces se utilizan IF A ELSE B IEND como se


muestra a continuacin.
Condicin de Condicin de
ejecucin ejecucin ON?

"A" ejecutado (entre


IF y IEND).

Si la ejecucin debe esperar hasta que una condicin de ejecucin o bit est en
ON (por ejemplo, para progresiones de pasos), entonces se utiliza WAIT(805).
Si la ejecucin debe esperar un periodo de tiempo especificado (por ejemplo,
para progresiones de pasos temporizadas), entonces se utiliza TIMW(813),
TIMX(816), TMHW(815) o TMHWX(817).
Si la ejecucin debe esperar hasta alcanzar un contaje especificado (por ejem-
plo, para progresiones de pasos con contadores), entonces se utiliza
CNTW(814)/CNTWX(818).
Si la ejecucin debe repetirse dentro de una parte de un programa de bloques
hasta que se cumpla una condicin, entonces se usa LOOP(809) y LEND(810).
Si la ejecucin del programa de bloques debe finalizar en el medio basada en
una condicin de ejecucin se usa EXIT(806).
Si otro programa de bloques que se est ejecutando debe pausarse o reiniciarse
desde un programa de bloques, entonces se usa BPPS(811) y BPRS(812).

1126
Instrucciones de programacin de bloques Seccin 3-32

Instrucciones con condiciones de ejecucin en programas de bloques


Las siguientes instrucciones pueden recibir condiciones de ejecucin en un
programa de bloques.
Tipo de instruccin Nombre de la Nemnico
instruccin
Instrucciones de programacin de bloques IF (NOT) IF(802) (NOT)
ONE CYCLE WAIT(805)
AND WAIT (NOT) (NOT)
EXIT EXIT(806) NOT
LOOP END LEND(810) NOT
Instrucciones de diagrama de rels CONDITIONAL CJP(510)
JUMP
CONDITIONAL CJPN(511)
JUMP NOT

Instrucciones con restricciones de aplicacin en programas de bloques


Las instrucciones relacionadas en la siguiente tabla pueden usarse solamente
para crear condiciones de ejecucin para IF(802), WAIT(805), EXIT(806),
LEND(810), CJP(510) o CJPN(511) y no pueden utilizarse solas. La ejecucin de
estas instrucciones puede resultar impredecible si se usan solas o en combina-
cin con otras instrucciones.
Nemnico Nombre
LD/LD NOT LOAD/LOAD NOT
AND/AND NOT AND/AND NOT
OR/OR NOT OR/OR NOT
UP/DOWN CONDITION ON/CONDITION OFF
>, <,=, >=, <=, <> (S) (L) Instruccin de comparacin de smbolos
(no pertenecientes a instrucciones de la
derecha)
LD TST/TST NOT Instrucciones de test de bit LOAD
AND TST/TST NOT Instrucciones de test de bit AND
OR TST/TST NOT Instrucciones de test de bit OR
>$, <$,=$, >=$, <=$, <>$ Instrucciones de comparacin de cade-
nas de texto

Buen ejemplo Mal ejemplo

Usada como No se puede


condicin de utilizar como
enjecucin condicin de
para IF. ejecucin
para
MOV(021).

Instrucciones no aplicables en programas de bloques


Las instrucciones relacionadas en la siguiente tabla no pueden usarse en
programas de bloques.
Grupo de Nemnico Nombre Alternativa
instruccio-
nes
Instruccio- OUT OUTPUT Use SET y RSET.
nes de la OUT NOT OUTPUT NOT
salida de
secuencia DIFU(013) DIFFERENTIATE UP Ninguno
DIFD(014) DIFFERENTIATE DOWN Ninguno
KEEP(011) KEEP Ninguno

1127
Instrucciones de programacin de bloques Seccin 3-32

Grupo de Nemnico Nombre Alternativa


instruccio-
nes
Instruccio- FOR(512) y FOR-NEXT LOOPS Use LOOP(809) y
nes del con- NEXT(513) LEND(810) (NOT).
trol de BREAK(514) BREAK LOOP
secuencia
IL(002) e INTERLOCK e INTER- Divida el programa de blo-
ILC(003) LOCK CLEAR ques en bloques ms
pequeos.
JMP(004)0 y JUMP mltiple y JUMP Use JMP(004 y JME(005)
JME(005) 0 END mltiple (pero el salto se realizar
incondicionalmente).
END(001) END Use BEND(801).
Instruccio- TIM TIMER Use TIMW(813),
nes de tem- TIMH(015) HIGH-SPEED TIMER TIMWX(816), TMHW(815),
porizador y TMHWX(817), CNTW(814)
contador TMHH(540) ONE-MS TIMER y CNTWX(818). No se eje-
TTIM(087) ACCUMULATIVE TIMER cutarn otras instruccio-
TIML(542) LONG TIMER nes del programa de
bloques hasta que el tem-
MTIM(543) MULTI-OUTPUT TIMER porizador o el contador ter-
CNT COUNTER minen.
CNTR(012) REVERSIBLE COUNTER
Instruccio- SBN(092) y SUBROUTINE ENTRY y Ninguno
nes de RET(093) SUBROUTINE RETURN
subrutina
Instruccio- SFT(010) SHIFT REGISTER Use otras instrucciones de
nes de des- desplazamiento.
plazamiento
Instruccio- STEP(008) y STEP y STEP NEXT Use WAIT(805).
nes de paso SNXT(009)
Instruccio- PID(190) PID CONTROL Ninguno
nes de con-
trol de datos
Instruccio- FPD(269) FAILURE POINT DETEC- Ninguno
nes de diag- TION
nstico
Instruccio- Nemnicos Instrucciones de diferen- Ninguno
nes de dife- con @ cial ascendente
rencial Nemnicos Instrucciones de diferen- Ninguno
ascendente con % cial descendente
y descen-
dente

3-32-2 BLOCK PROGRAM BEGIN/END: BPRG(096)/BEND(801)


Empleo Define un rea de programacin de bloques. Para cada BPRG(096) debe
haber un BEND(801) correspondiente.

Smbolos de diagrama de BLOCK PROGRAM BEGIN


rels
BPRG(096)
N: Nmero de programa
N
de bloques

BLOCK PROGRAM END

BEND(801)

1128
Instrucciones de programacin de bloques Seccin 3-32

Variaciones BPRG(096)
Variaciones Se ejecuta en cada ciclo con condicin ON BPRG(096)
Se ejecuta una vez en el diferencial ascendente Incompatible
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

BEND(801)
Variaciones Ejecutadas siempre en el programa de
bloques

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
(Ver nota). OK OK OK

Nota BPRG(096) slo se permite una vez al principio de cada programa de bloques.

Operandos N: Nmero de programa de bloques


El nmero de programa de bloques debe estar entre 0 y 127 decimal.

Especificaciones de
operando rea N
(BPRG(096))
rea CIO ---
rea de Trabajo ---
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes 0 hasta 127 (decimal)
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ---
recto utilizando regis-
tros de ndice

Descripcin BPRG(096) ejecuta el programa de bloques con el nmero de bloque desig-


nado en N, es decir, aquel inmediatamente posterior y que finaliza con
BEND(801). Todas las instrucciones entre BPRG(096) y BEND(801) se eje-
cutan con condiciones de ejecucin ON (es decir, incondicionalmente).

Programa de bloques
Ejecutado cuando la
condicin de ejecucin es
ON.

1129
Instrucciones de programacin de bloques Seccin 3-32

Cuando la condicin de ejecucin BPRG(096) est en OFF, el programa de


bloques no se ejecutar y no se requerir tiempo de ejecucin para la instruc-
cin en el programa de bloques.
La ejecucin del programa de bloques puede detenerse utilizando
BPPS(811) desde otro programa de bloques incluso si la condicin de ejecu-
cin para BPRG(096) est en ON.

Indicadores BPRG(096)
Nombre Etiqueta Operacin
Indicador de ER ON si BPRG(096) ya se est ejecutando.
error ON si N no est entre 0 y 127.
ON si se usa el mismo nmero de programa de bloques
ms de una vez.
OFF en el resto de los casos.

BEND(801)
Nombre Etiqueta Operacin
Indicador de ER ON si no se est ejecutando un programa de bloques.
error OFF en el resto de los casos.

Precauciones Cada nmero de programa de bloques puede usarse solamente una vez en
el programa de usuario.
Los programas de bloques no pueden anidarse.
NO es posible el anidamiento.

Si el programa de bloques es una seccin bloqueada del programa y la condi-


cin de ejecucin para IL(002) est en OFF, el programa de bloques no se
ejecutar.

BPRG(096) y la correspondiente BEND(801) deben estar en la misma tarea.


Se producir un error y el indicador de error se pondr en ON si BPRG(096) est
en el medio de un programa de bloques, BEND(801) no est en un programa de
bloques, N no est entre #0000 y #007F (binario), no hay programa de bloques o
se usa el mismo nmero de programa de bloques ms de una vez.

1130
Instrucciones de programacin de bloques Seccin 3-32

Ejemplos Cuando CIO 000000 se pone en ON en el siguiente ejemplo se ejecutar el


programa de bloques 0. Cuando CIO 000000 est en OFF no se ejecutar el
programa de bloques.

Programa de
bloques 0

Las dos secciones de programa mostradas a continuacin ejecutan


MOV(021), ++B(594) y SET para la misma condicin de ejecucin (es decir,
cuando CIO 000000 se pone en ON).

3-32-3 BLOCK PROGRAM PAUSE/RESTART: BPPS(811)/BPRS(812)


Empleo Detiene y reinicia el programa de bloques especificado desde otro programa
de bloques.

Smbolo de diagrama de
rels BPPS(811) N N: Nmero de programa
BPRS(812) N de bloques

Variaciones
Variaciones Ejecutadas siempre en el programa de bloques

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Nota BPRG(096) y BPRS(812) deben usarse en regiones de programacin de blo-


ques incluso en subrutinas y tareas de interrupcin.

Operandos N: Nmero de programa de bloques


El nmero de programa de bloques debe estar entre 0 y 127 decimal.

Especificaciones del
operando rea N
rea CIO ---
rea de Trabajo ---
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador ---

1131
Instrucciones de programacin de bloques Seccin 3-32

rea N
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indirec- ---
tas en binario
Direcciones DM/EM indirec- ---
tas en BCD
Constantes 0 hasta 127 (decimal)
Registros de datos ---
Registros de ndice ---
Direccionamiento indirecto ---
utilizando registros de ndice

Descripcin BPPS(811) se utiliza dentro de un programa de bloques para detener la ejecu-


cin de otro programa de bloques especificado por N, el nmero de programa de
bloques. El programa de bloques es detenido con BPPS(811) incluso si
BPRG(096) para el programa de bloques tiene un condicin de ejecucin en ON.
El programa de bloque no se reiniciar hasta que se ejecute para l BPRS(812).
BPRS(812) reinicia el programa de bloques especificado por N, el nmero de
programa de bloques. Una vez reiniciado, el programa de bloques se ejecu-
tar mientras BPRG(096) para el programa de bloques tenga una condicin
de ejecucin en ON.

hasta hasta
BPPS(811) ejecutado BPRS(812) ejecutado
hasta para programa de hasta para programa de
bloques n. bloques n.

Programa de bloques n. Una vez Programa de bloques n. Este


hasta que se ha detenido, este programa hasta programa de bloques no se
de bloques no se ejecutar aunque ejecutar mientras el bit a
el bit a est en ON. est en ON.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si BPPS(811) o BPRS(812) no est en un programa
error de bloques.
ON si N no est entre 0 y 127.
OFF en el resto de los casos.

Precauciones Se producir un error y el indicador de error se pondr en ON si BPPS(811) o


BPRS(812) no estn en un programa de bloques o si N no est entre #0000 y
#007F (binario).
BPPS(811) puede usarse para detener el programa de bloques que la con-
tiene. Cuando el programa de bloques se reinicia utilizando BPRS(812)
desde otro programa de bloques, el programa de bloques detenido se reini-
ciar desde la siguiente instruccin posterior a BPPS(811).
Si un programa de bloques detenido contiene TIMW(813), TIMWX(816),
TMHW(815) o TMHWX(817), el PV de tiempo continuar transcurriendo
incluso aunque el programa de bloques se detenga.

1132
Instrucciones de programacin de bloques Seccin 3-32

Ejemplos El siguiente diagrama muestra un ejemplo bsico de detencin de un pro-


grama de bloques.

0
Programa de bloques 0

El programa de bloques 1 se detendr si CIO


000000 y CIO 000001 estn en ON.

1
Programa de Si la instruccin BPPS(811) del programa
bloques 1 de bloques 0 ha sido ejecutada, el
programa de bloques 1 no se ejecutar
incluso si CIO 000002 est en ON.

Nota Si el programa de bloques que se detiene aparece detrs de BPPS(811), este


no se ejecutar. Si el programa de bloques aparece antes de BPPS(811),
este se detendr a partir del siguiente ciclo.
Si CIO 000000 est en ON, el siguiente programa detiene la ejecucin del
programa de bloques 1 o del programa de bloques 2 dependiendo del estado
de CIO 000001. El programa de bloques detenido se reinica despus de 10
segundos.

Direccin Instruccin Operandos

000000 LD 000000
0 000001 BPRG(096) 00
000002 IF(802) 000001
Detiene el programa de bloques 1 000003 BPPS(811) 01
Detiene el programa de bloques 2 000004 ELSE(803)
000005 BPPS(811) 02
000006 IEND(804)
Reinicia el programa de bloques 1 000007 TIMW(803) 0000
Reinicia el programa de bloques 2 # 0100
000008 BPRS(812) 1
000009 BPRS(812) 2
000010 BEND(801)

3-32-4 Bifurcacin: IF(802), ELSE(803) y IEND(804)


Empleo Bifurca el programa de bloques basndose en una condicin de ejecucin o
en el estado de un bit de operando.

Smbolo de diagrama de
rels IF(802) B B: Operando de bit
IF(802)
IF(802) NOT B
ELSE(803)
IEND(804)

Variaciones
Variaciones Ejecutadas siempre en el programa de bloques

1133
Instrucciones de programacin de bloques Seccin 3-32

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Nota IF(802), ELSE(803) y IEND(804) deben usarse en regiones de programacin


de bloques incluso en subrutinas y tareas de interrupcin.

Especificaciones del
operando rea B
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A00000 hasta A44715
A44800 hasta A95915
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
Indicadores de tarea TK0000 hasta TK0031
Indicadores de condicin ER, CY, >, =, <, N, OF, UF, >=, <>, <=, ON, OFF, AER
Impulsos del reloj 0,02 s, 0,1 s, 0,2 s, 1 s, 1 min
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Operacin sin operando para IF(802)


Si no se especifica un operando, debe crearse una condicin de ejecucin
antes de IF(802) que comience por LD. Si la condicin de ejecucin est en
ON, se ejecutarn las instrucciones entre IF(802) y ELSE(803) y si la condi-
cin de ejecucin est en OFF, se ejecutarn las instrucciones entre
ELSE(803) y IEND(804).
Condicin de
Condicin de
ejecucin ejecucin ON?

"A" ejecutado "B" ejecutado


(entre IF y ELSE). (despus de ELSE).

Si se omite la instruccin ELSE(803) y la condicin de ejecucin est en ON, se


ejecutarn las instrucciones entre IF(802) y IEND(804) y si la condicin de ejecu-
cin est en OFF slo se ejecutarn las instrucciones despus de IEND(804).

1134
Instrucciones de programacin de bloques Seccin 3-32

Condicin de
Condicin de
ejecucin ejecucin ON?

"A" ejecutado
(entre IF y IEND).

Operacin con operando para IF(802) o IF NOT(802)


Puede especificarse un bit de operando, B, para IF(802) o IF NOT(802). Si el
bit de operando est en ON, se ejecutarn las instrucciones entre IF(802) y
ELSE(803). Si el bit de operando est en OFF, se ejecutarn las instrucciones
entre ELSE(803) e IEND(804). En el caso de IF NOT(802), si el bit de ope-
rando est en ON se ejecutarn las instrucciones entre IF(802) y ELSE(803)
y si el bit de operando est en OFF, se ejecutarn las instrucciones entre
ELSE(803) e IEND(804).

Bit de operando
ON?

"A" ejecutado "B" ejecutado


(entre IF y ELSE). (despus de ELSE).

Si se omite la instruccin ELSE(803) y el bit de operando est en ON, se ejecuta-


rn las instrucciones entre IF(802) y IEND(804) y si el bit de operando est en
OFF slo se ejecutarn las instrucciones despus de IEND(804). Ocurrir lo
mismo para el estado opuesto del bit de operando si se utiliza IF NOT(802).

Bit de operando
ON?

"A" ejecutado
(entre IF y IEND).

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si las instrucciones de bifurcacin no estn en un pro-
error grama de bloques.
ON si se anidan ms de 254 bifurcaciones.
OFF en el resto de los casos.

Precauciones las instrucciones de los programas de bloques se ejecutan normalmente de


forma incondicional. No obstante puede utilizarse bifurcacin para crear ejecucio-
nes condicionadas basadas en condiciones de ejecucin o bits de operando.
Use IF A ELSE B IEND para bifurcar entre A y B.
Use IF A IEND para bifurcar entre A y no hacer nada.
Las bifurcaciones pueden anidarse hasta 253 niveles.

1135
Instrucciones de programacin de bloques Seccin 3-32

Se producir un error y el indicador de error se pondr en ON si las instruc-


ciones de bifurcacin no estn en un programa de bloques o si se anidan ms
de 254 bifurcaciones.

Anidamiento de Pueden anidarse hasta 253 bifurcaciones hasta el nivel superior de bifurcacin.
bifurcaciones

Ejemplos El siguiente ejemplo muestra dos programas de bloques diferentes controla-


dos por CIO 000000 y CIO 000002.
El primer bloque ejecuta una de las dos sumas dependiendo del estado de
CIO 000001. Este bloque se ejecuta cuando CIO 000000 est en ON. Si
CIO 000001 est en ON, se aade 0001 a los contenidos de CIO 0001. Si
CIO 000001 est en OFF, se aade 0002 a los contenidos de CIO 0001. En
ambos casos el resultado se coloca en D00000.
El segundo bloque se ejecuta cuando CIO 000002 est en ON y muestra un
anidamiento de dos niveles. Si CIO 000003 y CIO 000004 estn en ON, se
aaden los contenidos de CIO 1200 y CIO 0002 y el resultado se coloca en
D00010 y posteriormente 0001 se mueve a D00011 basndose en el estado
de CY. Si CIO 000003 o bien CIO 000004 est en OFF, se omite la operacin
de suma y CIO 000301 se pone en ON.

1136
Instrucciones de programacin de bloques Seccin 3-32

000000 Direccin Instruccin Operandos


000000 LD 000000
000001 BPRG(096) 00
0
000002 IF(802) 000001
IF(802) 000001 000003 +B(404)
+B(404)
0001
0001
#0001 #0001
D00000
ELSE(803) D00000
+B(404) 000004 ELSE(803)
0001
#0002 000005 +B(404)
D00000
0001
IEND(804)
BEND(801) #0002
000002 D00000
000006 IEND(804)
1 000007 BEND(801)
000008 LD 000002
LD 000003 000009 BPRG(096) 1
AND 000004
IF(802) 000010 LD 000003
+B(404) 000011 AND 000004
1200
0002 000012 IF(802)
D00010
CY
000013 +B(404)
IF(802)
MOV(030) 1200
#0001
D00011 0002
IEND(804) D00010
ELSE(803) 000014 IF(802) A50004
SET(016) 000301
IEND(804) 000015 MOV(030)
BEND(801)
#0001
D00011
000016 IEND(804)
000017 ELSE(803)
000018 SET(016) 000301
000019 IEND(804)
000020 BEND(801)

3-32-5 CONDITIONAL BLOCK EXIT (NOT): EXIT (NOT)(806)


Empleo Se abandona el programa de bloques (es decir, no se ejecuta ninguna ins-
truccin ms del programa de bloques hasta BEND(801) dependiendo del
estado del bit del operando o de la condicin de ejecucin. EXIT(806) sin un
bit de operando sale del programa si la condicin de ejecucin est en ON.
EXIT(806) con un bit de operando sale del programa si el bit est en ON.
EXIT NOT(806) debe tener un bit de operando y sale del programa si el bit
est en OFF.

Smbolo de diagrama de EXIT(806)


rels
EXIT(806) B B: Operando
de bit
EXIT NOT(806) B

1137
Instrucciones de programacin de bloques Seccin 3-32

Variaciones
Variaciones Ejecutadas siempre en el programa de bloques EXIT(806)
EXIT(806) B
EXIT NOT(806) B

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Nota EXIT(806) y EXIT NOT(806) deben usarse en regiones de programacin de


bloques incluso en subrutinas y tareas de interrupcin.

Especificaciones del
operando rea B
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A00000 hasta A44715
A44800 hasta A95915
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
Indicadores de tarea TK0000 hasta TK0031
Indicadores de condicin ER, CY, >, =, <, N, OF, UF, >=, <>, <=, ON, OFF, AER
Impulsos del reloj 0,02 s, 0,1 s, 0,2 s, 1 s, 1 min
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Operacin sin operando


EXIT(806) puede ejecutarse sin operando. Si es as, entonces debe crearse
una condicin de ejecucin para esta instruccin que comience por LD. Si la
condicin de ejecucin est en OFF el resto del programa de bloques se eje-
cutar normalmentee. Si la condicin de ejecucin est en ON, el resto de las
instrucciones del programa de bloques hasta BEND(801) no se ejecutarn.

1138
Instrucciones de programacin de bloques Seccin 3-32

Condicin de Condicin de
ejecucin ejecucin ON
OFF

"A" ejecutado. "A" ejecutado.

Condicin de
ejecucin

"B" ejecutado.

Bloque finalizado.

Operacin con operando


Si el bit de operando, B, est en OFF para EXIT(806), el resto del programa
de bloques se ejecutar normalmente. Si el bit de operando est en ON para
EXIT(806), el resto de las instrucciones del programa de bloques hasta
BEND(801) no se ejecutarn. En el caso de EXIT NOT(806), se ejecutar el
resto del programa si el bit de operando est en ON y se omitir si el bot de
operando est en OFF.
Bit de Bit de
operando OFF operando ON
(ON para (OFF para
EXIT NOT) EXIT NOT)

"A" ejecutado. "A" ejecutado.

"B" ejecutado.

Bloque finalizado.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si EXIT(806) o EXIT NOT(806) no estn en un pro-
error grama de bloques.
OFF en el resto de los casos.

Precauciones Se producir un error y el indicador de error se pondr en ON si EXIT(806) o


EXIT NOT(806) no estn en un programa de bloques.

Ejemplos Cuando CIO 000000 est en OFF se ejecuta el programa de bloques. Si


CIO 000001 est en ON, se ejecuta A y se omite B y el control del programa
salta a BEND(801). Seguir omitindose la seccin B del programa hasta que
CIO 000001 se ponga en OFF de nuevo.
Aunque EXIT (NOT)(806) es similar a la programacin IF-IEND, el tiempo de
ejecucin es normalmente ms corto para EXIT (NOT)(806) porque las ins-
trucciones desde EXIT (NOT)(806) hasta el final del programa de bloques no
se ejecutan.

1139
Instrucciones de programacin de bloques Seccin 3-32

CIO 000001 ON CIO 000001 OFF

Bloque

CIO 000003 y CIO 000003 o bien


2 CIO 000004 ON CIO 000004 OFF

Bloque

3-32-6 ONE CYCLE AND WAIT (NOT): WAIT(805)/WAIT(805) NOT


Empleo Detiene la ejecucin del resto del programa de bloques hasta que una condi-
cin de ejecucin se ponga en ON o un bit de operando cambie de ON a OFF.

Smbolo de diagrama de
rels WAIT(805)
WAIT(805) B B: Operando
de bit
WAIT(805) NOT B

Variaciones
Variaciones Ejecutadas siempre en el programa de bloques

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Nota WAIT(805)/WAIT(805) NOT deben usarse en regiones de programacin de


bloques incluso en subrutinas y tareas de interrupcin.

Especificaciones del
operando rea B
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A00000 hasta A44715
A44800 hasta A95915
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
Indicadores de tarea TK0000 hasta TK0031
Indicadores de condicin ER, CY, >, =, <, N, OF, UF, >=, <>, <=ON, OFF, AER
Impulsos del reloj 0,02 s, 0,1 s, 0,2 s, 1 s, 1 min

1140
Instrucciones de programacin de bloques Seccin 3-32

rea B
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Operacin sin operando


Si no se especifica un bit de operando, debe crearse una condicin de ejecu-
cin antes de WAIT(805)/WAIT(805 NOT que comience por LD. Si la condi-
cin de ejecucin est en ON para WAIT(805), se omitirn el resto de las
instrucciones del programa de bloques. En el ciclo siguiente no se ejecutar
ninguna parte del programa de bloques, excepto la condicin de ejecucin
para WAIT(805). Cuando la condicin de ejecucin se pone en ON, se ejecu-
tarn las instrucciones desde WAIT(805) hasta el final del programa de blo-
ques.
Condicin Condicin Condicin
de ejecucin de ejecucin de ejecucin
OFF OFF ON
"A"
ejecutado.

Condicin de "B" ejecutado.


ejecucin

"C" "C" "C" ejecutado.


ejecutado. ejecutado.

Esperar

1141
Instrucciones de programacin de bloques Seccin 3-32

Operacin con operando


Puede especificarse un bit de operando, B, para WAIT(805) o bien WAIT
NOT(805). Si el bit de operando est en OFF (ON para WAIT NOT(805)), se
omitirn el resto de la instrucciones del programa de bloques. En el ciclo
siguiente, no se ejecutar ninguna parte del programa de bloques, excepto la
condicin de ejecucin para WAIT(805) o WAIT(805) NOT. Cuando la condi-
cin de ejecucin se ponga en ON (OFF para WAIT(805) NOT), se ejecutarn
las instrucciones desde WAIT(805) o WAIT(805) NOT hasta el final del pro-
grama.
Bit de ope- Bit de ope- Bit de ope-
rando OFF rando OFF rando ON
"A"
ejecutado.

"B"

"C" "C" "C"


ejecutado. ejecutado.

Esperar

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si WAIT(805) o WAIT(805) NOT no est en un pro-
error grama de bloques.
OFF en el resto de los casos.

Precauciones WAIT(805) y WAIT(805) NOT pueden usarse para progresiones de pasos


dentro de los programas de bloques.
Se producir un error y el indicador de error se pondr en ON si WAIT(805) o
WAIT(805) NOT no estn en un programa de bloques.
Nota Las direcciones de programa de las instrucciones WAIT con operandos espe-
cificados y las direcciones de programa de la primera instruccin que crea las
condiciones de ejecucin para las instrucciones WAIT sin operando se regis-
tran en la memoria para permitir que la ejecucin continue basndose en el
operando de bit/condicin de ejecucin. No osbtante, si se realiza edicin
online desde un dispositivo perifrico, el estado WAIT se borrar y el pro-
grama de bloques se ejecutar de nuevo desde el principio.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo se ejecutar el pro-


grama de bloques 00. La ejecucin ser como sigue:

1,2,3... 1. Si CIO 000001 est en OFF, no se ejecutar ningn programa de bloques


hasta que CIO 000001 se ponga en ON. Cuando CIO 000001 se pone en
ON, se ejecutar A.
2. Si CIO 000002 est en OFF despus de ejecutar A, no se ejecutar el
resto del programa de bloques hasta que CIO 000002 se ponga en ON.
Cuando CIO 000002 se pone en ON, se ejecutar B.
3. Si CIO 000003 est en OFF despus de ejecutar B, no se ejecutar el
resto del programa de bloques hasta que CIO 000003 se ponga en ON.
Cuando CIO 000003 se pone en ON, se ejecutar C y el proceso de eje-
cucin se repetir.

1142
Instrucciones de programacin de bloques Seccin 3-32

CIO 00000
1 ON, CIO 000001,
CIO 00000 CIO 00000 CIO 00002 y
CIO 000 1 ON y CIO 2 ON y CIO 000003
0 001 00000 2 CIO 00000 ON
OFF OFF 3 OFF

La siguiente tabla muestra la relacin entre los bits de operando y la ejecu-


cin del programa de bloques.
Bits de operando Ejecucin del programa
CIO 000001 CIO 000002 CIO 000003 En el primer ciclo Siguiente ciclo Siguientes ciclos
CIO 000000 est en ON
OFF Cualquier Cualquier No se ha ejecutado No se ha ejecutado Cuando CIO 000001 se
estado estado nada. nada; esperamdo por pone en ON, se ejecuta
CIO 000001. A y se comprueba el
estado de CIO 000002.
ON OFF Cualquier "A" ejecutado. Esperando por Cuando CIO 000002 se
estado CIO 000002. pone en ON, se ejecuta
B y se comprueba el
estado de CIO 000003.
ON ON OFF "A" y "B" ejecutados. Esperando por Cuando CIO 000003 se
CIO 000003. pone en ON se ejcuta
C
ON ON ON "A", "B" y "C" ejecuta- "A", "B" y "C" ejecuta-
dos. dos.

Como se muestra en este ejemplo, WAIT(805) y WAIT(805) NOT no puede


utilizarse para ejecutar pasos progresivamente en un programa de bloques.

1143
Instrucciones de programacin de bloques Seccin 3-32

3-32-7 TIMER WAIT: TIMW(813) y TIMWX(816)


Empleo Retrasa la ejecucin del resto del programa de bloques hasta que haya trans-
currido el tiempo especificado. La ejecucin continuar desde la instruccin
siguiente a TIMW(813)/TIMWX(816) cuando termine el temporizador.

Smbolo de diagrama de Mtodo de refresco de PV: BCD


rels
TIMW(813) N N: Nmero de temporizador
SV SV: Valor seleccionado

Mtodo de refresco de PV: Binario


TIMWX(816) N N: Nmero de temporizador
SV SV: Valor seleccionado

Variaciones
Variaciones Ejecutadas siempre en el programa de bloques

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK No se admite.

Nota TIMW(813)/TIMWX(816) deben usarse en regiones de programacin de blo-


ques incluso en subrutinas.

Operandos N: Nm. de temporizador


BCD: 0 hasta 4095 (decimal)
Binario: 0 hasta 4095 (decimal)
S: Valor seleccionado
BCD: #0000 hasta #9999 (BCD)
Binary: &0 hasta &65535 (decimal)
#0000 hasta #FFFF (hexadecimal)

Especificaciones del
operando rea N SV
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 hasta A447
A448 hasta A959
rea Temporizador 0000 hasta 4095 T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)

1144
Instrucciones de programacin de bloques Seccin 3-32

rea N SV
Constantes --- BCD:
#0000 hasta 9999 (BCD)
& no se puede usar.
Binario:
&0 hasta &65535 (decimal)
#0000 hasta #FFFF (hexa-
decimal)
Registros de datos --- DR0 hasta DR15
Registros de ndice --- ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin TIMW(813)/TIMWX(816) crea un temporizador de retardo a ON (temporiza-


dor de 100 ms configurado en SV) entre la ejecucin de la instruccin prece-
dente del programa de bloques y la ejecucin de las instrucciones siguiente.
TIMW(813) puede temporizar desde 0 hasta 999,9 s con una precisin de 0
hasta 0,01 s. TIMWX(816) puede temporizar desde 0 hasta 6.553,5 s con una
precisin de 0 hasta 0,01 s.
Nota La precisin del temporizador para CPUs CS1D es de 10 ms + el tiempo de ciclo.
Se ejecuta la primera parte del programa de bloques la primera vez que se
entra en el programa de bloques. Cuando se alcanza TIMW(813)/
TIMWX(816), el indicador de finalizacin se resetea a OFF, el temporizador
se preselecciona al valor del SV, y la ejecucin del resto del programa de blo-
ques esperar hasta que haya transcurrido el SV.
Mientras el temporizador realiza la cuenta atrs slo se ejecutar TIMW(813)/
TIMWX(816) para actualizar el temporizador. Cuando el temporizador fina-
liza, el indicador de finalizacin se pondr en ON y se ejecutar el resto del
programa de bloques. Una vez se haya ejecutado el programa de bloques
completo se repetir el proceso.
TIMW(813)/TIMWX(816) puede considerarse como una instruccin WAIT con
un temporizador para la condicin de ejecucin, y puede por ello utilizarse
para temporizacin de progresiones de pasos.

"A" ejecu-
tado y SV
preseleccio-
nado.

Tiempo transcurrido.

"B" ejecutado.

"C" ejecutado.

Indicadores
Nombre Etiqueta Operacin
Indica- ER ON si TIMW(813)/TIMWX(816) no est en un programa de bloques.
dor de ON si se utiliza una designacin indirecta de IR para N en modo
error BCD y la direccin no es para un valor actual de un temporizador.
ON si se est en modo BCD y el SV no es BCD.
OFF en el resto de los casos.

1145
Instrucciones de programacin de bloques Seccin 3-32

Precauciones El resto del programa de bloques que sigue al temporizador se ejecutar si el


indicador de finalizacin del temporizador se fuerza a set (ON).
Si el indicador de finalizacin del temporizador se fuerza a reset (OFF), slo
se ejecutar TIMW(813/TIMWX(816)) en el programa de bloques hasta que
se elimine el estado de forzado a reset.
El valor actual de los temporizadores programados con nmero de temporizador
de 0000 hasta 2047 se actualizar incluso cuando el temporizador est en
reposo. El valor actual de los temporizadores programados con nmero de tem-
porizador de 2048 a 4095 se mantendr cuando el temporizador est en reposo.
Los nmeros de temporizador tambin son utilizados por las otras instruccio-
nes de temporizador. La operacin no ser predecible si se usa el mismo
nmero de temporizador para ms de una instruccin de temporizador. Use
cada nmero de temporizador solamente una vez. La nica forma de poder
utilizar el mismo nmero de temporizador de forma fiable es si solamente
opera un temporizador cada vez. Se producir un error en la comprobacin
del programa si se usa el mismo nmero de temporizador en ms de una ins-
truccin de temporizador.
Se producir un error y el indicador de error se pondr en ON si se utiliza una
designacin indirecta de IR para N en modo BCD y la direccin no es para un
valor actual de un temporizador o si el SV no es BCD.

Ejemplos En el siguiente ejemplo, B se ejecutar 20 segundos despus de A siem-


pre que CIO 000000 est en ON.

El temporizador termina.

Direccin Instruccin Operando


000200 LD 000000
000201 BPRG 0
. A .
. .
000210 TIMW 0001
#0200
. B .
. .
000220 BEND ---

1146
Instrucciones de programacin de bloques Seccin 3-32

La ejecucin del programa fluir de 2 a 3 a 4 y de vuelta a 2 durante los 20


segundos antes de que se ejecute B, tal y como se muestra en el siguiente
diagrama.

1 4

3-32-8 COUNTER WAIT: CNTW(814) y CNTWX(818)


Empleo Retrasa la ejecucin del resto del programa de bloques hasta alcanzar el con-
taje especificado. La ejecucin continuar desde la instruccin siguiente a
CNTW(814)/CNTWX(818) cuando el contador finalice la operacin.

Smbolo de diagrama de Mtodo de refresco de PV: BCD


rels
CNTW(814) N N: Nmero de contador
SV SV: Valor seleccionado
I I: Entrada de contador

Mtodo de refresco de PV: Binario


CNTWX(818) N N: Nmero de contador
SV SV: Valor seleccionado
I I: Entrada de contador

Variaciones
Variaciones Ejecutadas siempre en el programa de bloques

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Nota CNTW(814)/CNTWX(818) deben usarse en regiones de programacin de


bloques incluso en subrutinas y tareas de interrupcin.

Operandos N: Nm. contador


BCD: 0 hasta 4095 (decimal)
Binario: 0 hasta 4095 (decimal)
S: Valor seleccionado
BCD: #0000 hasta #9999 (BCD)
Binary: &0 hasta &65535 (decimal)
#0000 hasta #FFFF (hexadecimal)

1147
Instrucciones de programacin de bloques Seccin 3-32

Especificaciones del
operando rea N SV I
rea CIO --- CIO 0000 hasta CIO 6143 CIO 000000 hasta
CIO 614315
rea de Trabajo --- W000 hasta W511 W00000 hasta
W51115
rea de bit en Espera --- H000 hasta H511 H00000 hasta H51115
rea Bit Auxiliar --- A000 hasta A447 A00000 hasta A44715
A448 hasta A959 A44800 hasta A95915
rea Temporizador --- T0000 hasta T4095 T0000 hasta T4095
rea Contador C0000 C0000 hasta C4095 C0000 hasta C4095
hasta
C4095
Indicadores de tarea --- TK0000 hasta TK0031
Indicadores de condi- --- ER, CY, >, =, <, N, OF,
cin UF, >=, <>, <=,
ON,OFF, AER
Impulsos del reloj --- 0,02 s, 0,1 s, 0,2 s, 1 s,
1 min
rea DM --- D00000 hasta D32767 ---
rea EM sin banco --- E00000 hasta E32767 ---
rea EM con Banco --- En_00000 hasta En_32767 ---
(n = 0 a C)
Direcciones DM/EM --- @ D00000 hasta @ D32767 ---
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @
En_32767
(n = 0 a C)
Direcciones DM/EM --- *D00000 hasta *D32767 ---
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta
*En_32767
(n = 0 a C)
Constantes --- BCD: ---
#0000 hasta 9999 (BCD)
& no se puede usar.
Binario:
&0 hasta &65535 (deci-
mal)
#0000 hasta #FFFF (hexa-
decimal)
Registros de datos --- DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando registros 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin CNTW(814)/CNTWX(818) crea un contador de disminucin que retarda la


ejecucin de las instrucciones que lo siguen en el programa de bloques hasta
que el contador haya terminado. El valor de configuracin para CNTW(814)
se especifica en BCD entre 0000 y 9999. El valor de configuracin para
CNTWX(818) se especifica en binario entre 0000 y FFFF hexadecimal
Se ejecuta la primera parte del programa de bloques la primera vez que se
entra en el programa de bloques. Cuando se alcanza CNTW(814)/
CNTWX(818), el indicador de finalizacin se resetea a 0, el contador se pre-
selecciona al valor del SV, y la ejecucin del resto del programa de bloques

1148
Instrucciones de programacin de bloques Seccin 3-32

esperar hasta que el contador haya finalizado. Los contador cuenta impul-
sos (diferencial ascendente) en I, la entrada de contador.
Mientras el contador realiza la cuenta atrs slo se ejecutar CNTW(814)/
CNTWX(818) para actualizar el contador. Cuando el contador finaliza, el indi-
cador de finalizacin se pondr en ON y se ejecutar el resto del programa de
bloques. Una vez se haya ejecutado el programa de bloques completo se
repetir el proceso.
CNTW(814)/CNTWX(818) puede considerarse como una instruccin WAIT
con un contador para la condicin de ejecucin, y puede por ello utilizarse
para temporizacin de progresiones de pasos.

A
ejecutado.

SV preseleccionado.

Contaje alcanzado.

"B"

"C" "C" "C"


ejecutado. ejecutado ejecutado.

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si CNTW(814)/CNTWX(818) no est en un programa de blo-
de error ques.
ON si se utiliza una designacin indirecta de IR para N en modo
BCD y la direccin no es para un valor actual de un contador.
ON si el SV no es BCD cuando est seleccionado el modo BCD.
OFF en el resto de los casos.

Precauciones El resto del programa de bloques que sigue a CNTW(814)/CNTWX(818) se


ejecutar si el indicador de finalizacin del contador se fuerza a set (ON).
Si el indicador de finalizacin del contador se fuerza a reset (OFF), slo se
ejecutar CNTW(814)/CNTWX(818) en el programa de bloques hasta que se
elimine el estado de forzado a reset.
Los nmeros de comtador tambin son utilizados por las otras instrucciones
de contador. La operacin no ser predecible si se usa el mismo nmero de
contador para ms de una instruccin de contador. Use cada nmero de con-
tador solamente una vez. La nica forma de poder utilizar el mismo nmero
de contador de forma fiable es si solamente opera un contador cada vez. Se
producir un error en la comprobacin del programa si se usa el mismo
nmero de contador en ms de una instruccin de contador.
Se producir un error y el indicador de error se pondr en ON si se utiliza una
designacin indirecta de IR para N en modo BCD y la direccin no es para un
valor actual de un temporizador o si el SV no es BCD cuando est seleccio-
nado el modo BCD.

1149
Instrucciones de programacin de bloques Seccin 3-32

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, se ejecutar A y la


ejecucin del resto del programa de bloques B esperar hasta que se reali-
cen 7.000 contajes de CIO 000100.

0 CIO 000100
contado.
Actualizado
Actualizado

Contador finalizado.

Direccin Instruccin Operando


000200 LD 000000
000201 BPRG 0
. A .
. .
000210 CNTW 0005
#7000
000100
. B .
. .
000220 BEND ---

La ejecucin del programa fluir de 2 a 3 a 4 y de vuelta a 2 durante los 7.000


contajes antes de que se ejecute B, tal y como se muestra en el siguiente
diagrama.

1 4

3-32-9 HIGH-SPEED TIMER WAIT: TMHW(815) y TMHWX(817)


Empleo Retrasa la ejecucin del resto del programa de bloques hasta que haya trans-
currido el tiempo especificado. La ejecucin continuar desde la instruccin
siguiente a TMHW(815)/TMHWX(817) cuando termine el temporizador.
Smbolo de diagrama de Mtodo de refresco de PV: BCD
rels
TMHW(815) N N: Nmero de temporizador
SV SV: Valor seleccionado

Mtodo de refresco de PV: Binario


TMHWX(817) N N: Nmero de temporizador
SV SV: Valor seleccionado

1150
Instrucciones de programacin de bloques Seccin 3-32

Variaciones
Variaciones Ejecutadas siempre en el programa de bloques

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK No se admite.

Nota TMHW(815)/TMHWX(817)deben usarse en regiones de programacin de


bloques incluso en subrutinas.

Operandos N: Nm. de temporizador


BCD: 0 hasta 4095 (decimal)
Binario: 0 hasta 4095 (decimal)
S: Valor seleccionado
BCD: #0000 hasta #9999 (BCD)
Binary: &0 hasta &65535 (decimal)
#0000 hasta #FFFF (hexadecimal)

Especificaciones del
operando rea N SV
rea CIO --- CIO 0000 hasta CIO 6143
rea de Trabajo --- W000 hasta W511
rea de bit en Espera --- H000 hasta H511
rea Bit Auxiliar --- A000 hasta A447
A448 hasta A959
rea Temporizador 0000 hasta 4095 T0000 hasta T4095
rea Contador --- C0000 hasta C4095
rea DM --- D00000 hasta D32767
rea EM sin banco --- E00000 hasta E32767
rea EM con Banco --- En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta
@ En_32767
(n = 0 a C)
Direcciones DM/EM indi- --- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta
*En_32767
(n = 0 a C)
Constantes --- BCD:
#0000 hasta 9999 (BCD)
& no se puede usar.
Binario:
&0 hasta &65535 (deci-
mal)
#0000 hasta #FFFF
(hexadecimal)
Registros de datos --- DR0 hasta DR15
Registros de ndice --- ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

1151
Instrucciones de programacin de bloques Seccin 3-32

Descripcin TMHW(815)/TMHWX(817) crea un temporizador de retardo a ON (temporiza-


dor de 10 ms configurado en SV) entre la ejecucin de la instruccin prece-
dente del programa de bloques y la ejecucin de las instrucciones siguiente.
TMHW(815) puede temporizar desde 0 hasta 99,99 s con una precisin de 0
hasta 0,01 s. TMHWX(817) puede temporizar desde 0 hasta 655,35 s con
una precisin de 0 hasta 0,01 s.
Nota La precisin del temporizador para CPUs CS1D es de 10 ms + el tiempo de ciclo.
Se ejecuta la primera parte del programa de bloques la primera vez que se
entra en el programa de bloques. Cuando se alcanza TMHW(815)/
TMHWX(817), el indicador de finalizacin se resetea a OFF, el temporizador
se preselecciona al valor del SV, y la ejecucin del resto del programa de blo-
ques esperar hasta que haya transcurrido el SV.
Mientras el temporizador realiza la cuenta atrs slo se ejecutar
TMHW(815)/TMHWX(817) para actualizar el temporizador. Cuando el tempo-
rizador finaliza, el indicador de finalizacin se pondr en ON y se ejecutar el
resto del programa de bloques. Una vez se haya ejecutado el programa de
bloques completo se repetir el proceso.
TMHW(815)/TMHWX(817) puede considerarse como una instruccin WAIT
con un temporizador para la condicin de ejecucin, y puede por ello utili-
zarse para temporizacin de progresiones de pasos.

"A"
ejecutado.

SV preseleccionado.
Tiempo transcurrido.

"B" ejecutado.

"C"

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si TMHW(815)/TMHWX(817) no est en un programa de
de error bloques.
ON si se utiliza una designacin indirecta de IR para N en modo
BCD y la direccin no es para un valor actual de un temporizador.
ON si se est en modo BCD y el SV no es BCD.
OFF en el resto de los casos.

Precauciones El resto del programa de bloques que sigue a TMHW(815)/TMHWX(817) se


ejecutar si el indicador de finalizacin del temporizador se fuerza a set (ON).
Si el indicador de finalizacin del temporizador se fuerza a reset (OFF), slo
se ejecutar TMHW(815)/TMHWX(817) en el programa de bloques hasta que
se elimine el estado de forzado a reset.
El valor actual de los temporizadores programados con nmero de temporizador
de 0000 hasta 2047 se actualizar incluso cuando el temporizador est en
reposo. El valor actual de los temporizadores programados con nmero de tem-
porizador de 2048 a 4095 se mantendr cuando el temporizador est en reposo.
Los nmeros de temporizador tambin son utilizados por las otras instrucciones
de temporizador. La operacin no ser predecible si se usa el mismo nmero de

1152
Instrucciones de programacin de bloques Seccin 3-32

temporizador para ms de una instruccin de temporizador. Use cada nmero de


temporizador solamente una vez. La nica forma de poder utilizar el mismo
nmero de temporizador de forma fiable es si solamente opera un temporizador
cada vez. Se producir un error en la comprobacin del programa si se usa el
mismo nmero de temporizador en ms de una instruccin de temporizador.
Se producir un error y el indicador de error se pondr en ON si se utiliza una
designacin indirecta de IR para N en modo BCD y la direccin no es para un
valor actual de un temporizador o si el SV no es BCD.

Ejemplos En el siguiente ejemplo, B se ejecutar 20 segundos despus de A siem-


pre que CIO 000000 est en ON.

Direccin Instruccin Operando


000221 LD 000001
000222 BPRG 1
. A .
. .
000250 TMHW 0002
#0020
. B .
. .
000281 BEND ---

3-32-10 Control de lazo: LOOP(809)/LEND(810)/LEND(810) NOT


Empleo Crea un lazo que se ejecuta repetidamente hasta que una condicin de eje-
cucin se pone en ON o en OFF, o hasta que una condicin de ejecucin se
pone en ON.

Smbolo de diagrama de
rels LOOP(809)
LEND(810)
LEND(810) B B: Operando de bit
LEND(810) NOT B

Variaciones
Variaciones Ejecutadas siempre en el programa de bloques

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Nota LOOP(809), LEND(810) y LEND(810) NOT deben usarse en regiones de pro-


gramacin de bloques incluso en subrutinas y tareas de interrupcin.

1153
Instrucciones de programacin de bloques Seccin 3-32

Especificaciones del
operando rea B
rea CIO CIO 000000 hasta CIO 614315
rea de Trabajo W00000 hasta W51115
rea de bit en Espera H00000 hasta H51115
rea Bit Auxiliar A00000 hasta A44715
A44800 hasta A95915
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
Indicadores de tarea TK0000 hasta TK0031
Indicadores de condicin ER, CY, >, =, <, N, OF, UF, >=, <>, <=, ON,OFF, AER
Impulsos del reloj 0,02 s, 0,1 s, 0,2 s, 1 s, 1 min
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin LOOP(809) designa el comienzo del programa de lazo. LEND(810) o


LEND(810) NOT especifica el final del lazo. Cuando no se alcanza
LEND(810) o LEND(810) NOT, la ejecucin del programa enlazar con el
LOOP(809) anterior hasta que el bit de operando para LEND(810) o
LEND(810) NOT se ponga en ON u OFF (respectivamente) o hasta que la
condicin de ejecucin para LEND(810) se ponga en ON.

1154
Instrucciones de programacin de bloques Seccin 3-32

Utilizacin de una condicin de ejecucin para LEND(810)


LEND(810) puede programarse con o sin bit de operando. Si no se especifica
un bit de operando, debe crearse una condicin de ejecucin antes de
LEND(810) que comience por LD. Si la condicin de ejecucin est en OFF,
la ejecucin del lazo se repite comenzando por la siguiente instruccin des-
pus de LOOP(809). Si la condicin de ejecucin est en ON, el lazo finaliza
y la ejecucin contina hasta la siguiente instruccin despus de LEND(810).
Condicin Condicin Condicin Condicin
de ejecucin de ejecucin de ejecucin de ejecucin
ON OFF OFF OFF

Condicin de ejecucin

Lazo repetido

Utilizacin de un operando de bit para LEND(810) o LEND(810) NOT


LEND(810) y LEND(810) NOT pueden programarse con un bit de operando.
Si el bit de operando est en OFF para LEND(810) (o en ON para LEND(810)
NOT), se repite la ejecucin del lazo empezando por la instruccin siguiente a
LOOP(809). Si el bit de operando est en ON para LEND(810) (o en OFF
para LEND(810) NOT), el lazo finaliza y la ejecucin contina con la instruc-
cin siguiente a LEND(810) o LEND(810) NOT.
Bit de ope- Bit de op- Bit de ope- Bit de ope-
rando ON rando OFF rando OFF rando OFF

LEND R (LEND NOT B)

Lazo repetido

Nota El estado del bit de operando se


debe invertir para LEND(810) NOT.

Nota 1. La ejecucin dentro de un lazo no refresca los datos de E/S. Si los datos
de E/S deben refrescarse durante el lazo, use IORF(184).
2. Puede excederse el tiempo de ciclo mximo si los lazos se repiten dema-
siado tiempo. Disee el programa de tal manera no se exceda el tiempo
de ciclo mximo.

1155
Instrucciones de programacin de bloques Seccin 3-32

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si una instruccin de control de lazo no est en un
error programa de bloques.
OFF en el resto de los casos.

Precauciones Los lazos ni pueden anidarse con lazos.


Incorrecto:
LOOP(809)
LOOP(809)
LEND(810)
LEND(810)
No invierta el orden de LOOP y LEND.
Incorrecto:
LEND(810)
:
:
LOOP(809)
Puede usarse bifurcacin condicional de bloques dentro de un lazo, pero toda
la operacin de bifurcacin debe estar dentro del lazo.
Correcto: Incorrecto:
LOOP(809) LOOP(809)
IF(802) IF(802)
IF(802) IF(802)
IEND(804) IEND(804)
IEND(804) LEND(810)
LEND(810) IEND(804)
Se llevar a cabo procesamiento NOP si no se ejecuta LOOP(809).
Se producir un error y el indicador de error se pondr en ON si una instruc-
cin de control de lazo no est en un programa de bloques.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, se ejecuta el pro-


grama de bloques. Despus de ejecutar A, B y la instruccin IORF(184)
posterior se ejecutarn repetidamente hasta que CIO 000001 est en ON, en
cuyo momento se ejecutar C y el programa de bloques finalizar.

1156
Instrucciones de programacin de bloques Seccin 3-32

Condicin Condicin Condicin


de ejecucin de ejecucin de ejecucin
ON OFF OFF

Repeticin

Direccin Instruccin Operando


000220 LD 000000
000201 BPRG 0
. A .
. .
000210 LOOP ---
. B .
. .
000220 IORF .
.
0000
0000
000221 LEND 000001
. C .
. .
000220 BEND ---

1157
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

3-33 Instrucciones de procesamiento de cadenas de texto


Esta seccin describe las instrucciones utilizadas para manipular cadenas de
texto.
Instruccin Nemnico Cdigo de Pgina
funcin
MOV STRING MOV$ 664 1159
CONCATENATE STRING +$ 656 1161
GET STRING LEFT LEFT$ 652 1164
GET STRING RIGHT RGHT$ 653 1166
GET STRING MIDDLE MID$ 654 1168
FIND IN STRING FIND$ 660 1171
STRING LENGTH LEN$ 650 1173
REPLACE IN STRING RPLC$ 661 1175
DELETE STRING DEL$ 658 1178
EXCHANGE STRING XCHG$ 665 1180
CLEAR STRING CLR$ 666 1182
INSERT INTO STRING INS$ 657 1184
Instrucciones de comparacin =$, <>$, <$, <=$, 670 hasta 675 1187
de cadenas >$, >=$

3-33-1 Resumen de proceso de cadenas de texto


Los datos desde el principio hasta un cdigo NUL (00 hexadecimal) se ges-
tionan como datos de cadena de texto expresados en ASCII (excepto para
caracteres de 1byte, caracteres especiales). Se almacenan desde los bytes
de la izquierda a los bytes de la derecha, y desde los canales de la derecha a
los canales de la izquierda
Cuando hay un nmero impar de caracteres, se almacena 00 hexadecimal
(cdigo NUL) en el espacio disponible del byte de la derecha del canal final.
Ejemplo: Cadena de texto ABCDE
42
=

Cuando hay un nmero par de caracteres, se almacena 0000 hexadecimal


(dos cdigos NUL) en los bytes de la izquierda y de la derecha del canal
siguiente al canal final.
Ejemplo: Cadena de texto ABCD
42
=

Como se muestra en el siguiente diagrama, puede especificarse una cadena


de texto simplemente designando el primer canal de esa cadena. Los datos
de cadena de texto hasta el siguiente cdigo NUL (00 hexadecimal) se ges-
tionarn entonces como un nico bloque de datos ASCII.
Ejemplo: MOV$ D00000 D00100

Las instrucciones de procesamiento de cadenas de texto se pueden utilizar


para ejecutar en el PLC los distintos tipos de procesamiento de cadenas de
texto (datos de producto, etc.) que antes se ejecutaban en el ordenador host.

1158
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Procesa-
miento de Ordenador host Ordenador host
cadenas
de texto

PLC Procesa-
Cadena de texto miento de
cadenas
de texto

Por ejemplo, los datos de planificacin de produccin como los nombres de


producto pueden transferirse desde el ordenador host al PLC. As pueden lle-
varse a cabo distintas operaciones como la insercin y reorganizacin de tex-
tos en el PLC, reducindose as la carga de procesamiento de datos en el
ordenador host.

Caracteres ASCII Los caracteres ASCII que pueden gestionarse mediante instrucciones de pro-
cesamiento de cadenas de texto se muestran en la siguiente tabla:

Cuatro bits de la izquierda

S
P
Cuatro bits de la derecha

3-33-2 MOV STRING: MOV$(664)


Empleo Transfiere una cadena de texto.

Smbolo de diagrama de
rels
MOV$(664)

S S: Primer canal fuente

D D: Primer canal de destino

1159
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MOV$(664)
Se ejecuta una vez en el diferencial ascendente @MOV$(664)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Primer canal fuente


15 0
Datos de cadena de texto: 4.095 caracteres
S como mximo + NUL

hasta

S + mximo 2.047 canales

D: Primer canal de destino


15 0
Datos de cadena de texto: 4.095 caracteres
D como mximo + NUL

hasta

D + mximo 2.047 canales

Nota 1. Los datos desde S hasta S + mximo 2.047 canales y desde D hasta D +
mximo 2.047 canales deben estar en el mismo rea.
2. Los datos desde S hasta S + mximo 2.047 canales y desde D hasta D +
mximo 2.047 canales pueden solaparse.

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447 A448 hasta A959
A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---

1160
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

rea S D
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin MOV$(664) transfiere los datos de cadena de texto designados por S, tal y
como son, como datos de cadena de texto (incluido el NUL final) a D. El
nmero mximo de caracteres que pueden designarse mediante S es 4.095
(0FFF hexadecimal).

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se designan ms de 4.095 caracteres mediante S.
error ON si el indicador de habilitacin de puerto de comunica-
ciones para el nmero de puerto de comunicaciones
especificado como el N de puerto de comunicaciones
para Ejecucin en segundo plano est en OFF cuando
se especifica procesamiento en segundo plano.
OFF en el resto de los casos.
Indicador de = ON si se transfiere 0000 (hexadecimal) a D.
igual OFF en el resto de los casos.

Precauciones Si se designan ms de 4.095 mediante S, se generar un error y el indicador


de error se pondr en ON.
Si se transfiere 0000 (hexadecimal) a D, el indicador de igual que se pondr
en ON.

Ejemplo En este ejemplo, MOV$(664) se utiliza para transferir la cadena de texto ABC-
DEF.

0
S: D:

3-33-3 CONCATENATE STRING: +$(656)


Empleo Vincula una cadena de texto a otra.

Smbolo de diagrama de
rels
+$(656)

S1 S1: Cadena de texto 1

S2 S2: Cadena de texto 2

D D: Primer canal de destino

1161
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Variaciones
Variacio- Se ejecuta en cada ciclo con condicin ON +$(656)
nes Se ejecuta una vez en el diferencial ascendente @+$(656)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S1: Cadena de texto 1


15 0
S1 Datos de cadena de texto: 4.095 caracteres
como mximo + NUL

hasta

S1 + mximo 2.047 canales

S2: Cadena de texto 2


15 0
Datos de cadena de texto: 4.095 caracteres
S2 como mximo + NUL

hasta

S2 + mximo 2.047 canales

D: Primer canal de destino


15 0
Datos de cadena de texto: 4.095 caracteres
D como mximo + NUL

hasta

D + mximo 2.047 canales

Nota 1. Los datos desde S hasta S1 + mximo 2.047 canales, desde S2 hasta S2
+ mximo 2.047 canales y desde D hasta D + mximo 2.047 canales de-
ben estar en el mismo rea.
2. Los datos desde S2 hasta S2 + mximo 2.047 canales y desde D hasta D
+ mximo 2.047 canales no pueden solaparse.

Especificaciones del
operando rea S1 S2 D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447 A448 hasta A959
A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta 32767
(n = 0 a C)

1162
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

rea S1 S2 D
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0V hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin +$(664) conecta los datos de cadena de texto designados por S1 con los
datos de cadena de texto designados por S2, y entrega el resultado a D como
datos de cadena de texto (incluido el NUL final).
El nmero mximo de caracteres que pueden designarse mediante S1 y S2
es 4.095 (0FFF hexadecimal). Si no hay un NUL hasta 4.096 caracteres, se
generar un error y el indicador de error se pondr en ON. Adems, el resul-
tado del enlace no puede ser superior a 4.095 (0FFF hexadecimal). Si el
enlace resulta en un nmero de caracteres mayor, solamente se entregarn
los primeros 4.095 caracteres (con NUL aadido como el 4.096) a D.
Si hay un NUL para S1 y para S2, se entregarn los dos caracteres NUL
(0000 hexadecimal) a D.

+

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si se designan ms de 4.095 caracteres mediante S1
de error y S2.
ON si el indicador de habilitacin de puerto de comunica-
ciones para el nmero de puerto de comunicaciones
especificado como el N de puerto de comunicaciones
para Ejecucin en segundo plano est en OFF cuando se
especifica procesamiento en segundo plano.
OFF en el resto de los casos.
Indicador = ON si se transfiere 0000 (hexadecimal) a D.
de igual OFF en el resto de los casos.

Precauciones Si se designan ms de 4.095 mediante S1 y S2, se generar un error y el


indicador de error se pondr en ON.
Si se transfiere 0000 (hexadecimal) a D, el indicador de igual que se pondr
en ON.
No solape el canal inicial designado por D con el rea de datos de caracteres
para S2. Si se solapan la instruccin no puede ejecutarse correctamente.

1163
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Ejemplo En este ejemplo, +$(656) se utiliza para conectar las cadenas de texto ABCD
y EFG y entregar el resultado a D.

3-33-4 GET STRING LEFT: LEFT$(652)


Empleo Toma un nmero designado de caracteres situados a la izquierda (principio)
de una cadena de texto.

Smbolo de diagrama de
rels
LEFT$(652)
S1: Primer canal de cadena
S1
de texto
S2 S2: Nmero de caracteres

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON LEFT$(652)
Se ejecuta una vez en el diferencial ascendente @LEFT$(652)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S1: Cadena de texto


15 0
Datos de cadena de texto: 4.095 caracteres
S1 como mximo + NUL

hasta

S1 + mximo 2.047 canales

S2: Nmero de caracteres (0000 hasta 0FFF hexadecimal o bien &0 hasta
&4095)
15 0
Datos de cadena de texto: 4.095 caracteres
D como mximo + NUL

hasta

D + mximo 2.047 canales

Nota 1. Los datos desde S1 hasta S1 + mximo 2.047 canales y desde D hasta D
+ mximo 2.047 canales deben estar en el mismo rea.
2. Los datos desde S1 hasta S1 + mximo 2.047 canales y desde D hasta D
+ mximo 2.047 canales pueden solaparse.

1164
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Especificaciones del
operando rea S1 S2 D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447 A448 hasta A959
A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta ---
#0FFF (binario) o
bien &0 hasta
&4095
Registros de datos --- DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin LEFT$(652) lee el nmero de caracteres designado por S2, desde la


izquierda (el inicio) del primer canal de la cadena de texto designada por S1
hasta el cdigo NUL (00 hexadecimal), y entrega el resultado a D (con NUL
aadido al final).
Si el nmero de caracteres tomados excede el nmero de caracteres desig-
nados por S1, se entrega toda la cadena de texto S1.
Si se designa 0 (0000 hexadecimal) como el nmero de caracteres a leer, se
entregan los dos caracteres NUL (0000 hexadecimal) a D.

1165
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se designan ms de 4.095 caracteres mediante S1.
error ON si se designan ms de 4.095 caracteres (0FFF hexa-
decimal) mediante S2.
ON si el indicador de habilitacin de puerto de comunica-
ciones para el nmero de puerto de comunicaciones
especificado como el N de puerto de comunicaciones
para Ejecucin en segundo plano est en OFF cuando
se especifica procesamiento en segundo plano.
OFF en el resto de los casos.
Indicador de = ON si se entrega 0000 (hexadecimal) a D.
igual OFF en el resto de los casos.

Precauciones El nmero mximo de caracteres a leer que pueden designarse mediante S2


es 4.095 (0FFF hexadecimal). Si se designan ms se generar un error y el
indicador de error se pondr en ON.
Si se entrega 0000 (hexadecimal) a D, el indicador de igual que se pondr en
ON.

Ejemplo En este ejemplo, LEFT$(652) se utiliza para leer cuatro caracteres.


Cadena de texto ABCDE Cadena de texto ABCD
S2: D00200
S1: D: D00300
43 44 Cuatro caracteres
(bytes) ledos.
D

3-33-5 GET STRING RIGHT: RGHT$(653)


Empleo Lee un nmero designado de caracteres situados a la derecha (final) de una
cadena de texto.

Smbolo de diagrama de
rels
RGHT$(653)
S1: Primer canal de
S1
cadena de texto
S2 S2: Nmero de caracteres

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RGHT$(653)
Se ejecuta una vez en el diferencial ascendente @RGHT$(653)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

1166
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Operandos S1: Cadena de texto


15 0
Datos de cadena de texto: 4.095 caracteres
S1 como mximo + NUL

hasta

S1 + mximo 2.047 canales

S2: Nmero de caracteres (0000 hasta 0FFF hexadecimal o bien &0 hasta
&4095)
15 0
D Datos de cadena de texto: 4.095 caracteres
como mximo + NUL

hasta

D + mximo 2.047 canales

Nota 1. Los datos desde S1 hasta S1 + mximo 2.047 canales y desde D hasta D
+ mximo 2.047 canales deben estar en el mismo rea.
2. Los datos desde S1 hasta S1 + mximo 2.047 canales y desde D hasta D
+ mximo 2.047 canales pueden solaparse.

Especificaciones del
operando rea S1 S2 D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447 A448 hasta A959
A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta ---
#0FFF (binario) o
bien &0 hasta
&4095
Registros de datos --- DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

1167
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Descripcin RGHT$(653) lee el nmero de caracteres designado por S2, desde la


izquierda (el inicio) del primer canal de la cadena de texto designada por S1
hasta el cdigo NUL (00 hexadecimal), y entrega el resultado a D (con NUL
aadido al final).
Si el nmero de caracteres a leer excede el nmero de caracteres designa-
dos por S1, se entrega toda la cadena de texto S1.
Si se designa 0 (0000 hexadecimal) como el nmero de caracteres a leer, se
entregan los dos caracteres NUL (0000 hexadecimal) a D.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se designan ms de 4.095 caracteres mediante S1.
error ON si se designan ms de 4.095 caracteres (0FFF hexa-
decimal) mediante S2.
ON si el indicador de habilitacin de puerto de comunica-
ciones para el nmero de puerto de comunicaciones espe-
cificado como el N de puerto de comunicaciones para
Ejecucin en segundo plano est en OFF cuando se espe-
cifica procesamiento en segundo plano.
OFF en el resto de los casos.
Indicador de = ON si se entrega 0000 (hexadecimal) a D.
igual OFF en el resto de los casos.

Precauciones El nmero mximo de caracteres a leer que pueden designarse mediante S2


es 4.095 (0FFF hexadecimal). Si se designan ms se generar un error y el
indicador de error se pondr en ON.
Si se entrega 0000 (hexadecimal) a D, el indicador de igual que se pondr en
ON.

Ejemplo En este ejemplo, RGHT$(653) se utiliza para leer cuatro caracteres.


Cadena de texto ABCDEF Cadena de texto CDEF
S2: D00200
S1: D:
Cuatro caracteres
(bytes) ledos.

3-33-6 GET STRING MIDDLE: MID$(654)


Empleo Lee un nmero designado de caracteres situados en el centro de una cadena
de texto.

Smbolo de diagrama de
rels
MID$(654)
S1: Primer canal de
S1
cadena de texto
S2 S2: Nmero de caracteres

S3 S3: Posicin de inicio

D D: Primer canal de destino

1168
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MID$(654)
Se ejecuta una vez en el diferencial ascendente @MID$(654)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S1: Cadena de texto


15 0
Datos de cadena de texto: 4.095 caracteres
S1 como mximo + NUL

hasta

S1 + mximo 2.047 canales

S2: Nmero de caracteres (0000 hasta 0FFF hexadecimal o bien &0 hasta
&4095)
S3: Posicin inicial (0001 hasta 0FFF hexadecimal o bien &1 hasta &4095)
15 0
D Datos de cadena de texto: 4.095 caracteres
como mximo + NUL

hasta

D + mximo 2.047 canales

Nota 1. Los datos desde S1 hasta S1 + mximo 2.047 canales y desde D hasta D
+ mximo 2.047 canales deben estar en el mismo rea.
2. Los datos desde S1 hasta S1 + mximo 2.047 canales y desde D hasta D
+ mximo 2.047 canales pueden solaparse.

Especificaciones del
operando rea S1 S2 S3 D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447 A448 hasta
A448 hasta A959 A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta 32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)

1169
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

rea S1 S2 S3 D
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta #0001 hasta ---
#0FFF (bina- #0FFF (bina-
rio) o bien &0 rio) o bien &1
hasta &4095 hasta &4095
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin En la cadena de texto identificada mediante el primer canal designado por S1


hasta el cdigo NUL (00 hexadecimal), MID$(654) lee el nmero de caracte-
res designado por S2, desde el canal inicial designado por S3, y entrega el
resultado a D como datos de cadena de texto (con NUL aadido al final).
Si el nmero de caracteres a leer se extiende ms all del final de la cadena
de texto designada mediante S1, la cadena se entregar hasta el final.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se designan ms de 4.095 caracteres mediante S1.
error ON si se designan ms de 4.095 caracteres (0FFF hexa-
decimal) mediante S2.
ON si los datos S3 estn dentro del rango entre 1 hasta
4.095 (0001 hasta 0FFF hexadecimal).
ON si S3 es mayor que S1.
ON si el indicador de habilitacin de puerto de comunica-
ciones para el nmero de puerto de comunicaciones
especificado como el N de puerto de comunicaciones
para Ejecucin en segundo plano est en OFF cuando se
especifica procesamiento en segundo plano.
OFF en el resto de los casos.
Indicador de = ON si se entrega 0000 (hexadecimal) a D.
igual OFF en el resto de los casos.

Precauciones El rango desde la posicin inicial designada por S3 es del primero al 4.095
carcter (0001 hasta 0FFF hexadecimal). Cuando la configuracin est fuera
del rango, se generar un error y el indicador de error se pondr en ON.
El nmero mximo de caracteres a leer que pueden designarse mediante S2
es 4.095 (0FFF hexadecimal). Si se designan ms se generar un error y el
indicador de error se pondr en ON.

1170
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Si se designa 0 (0000 hexadecimal) como el nmero de caracteres a leer, se


entregan los dos caracteres NUL (0000 hexadecimal) a D.
Si se entrega 0000 (hexadecimal) a D, el indicador de igual que se pondr en
ON.

Ejemplo En este ejemplo, MID$(654) se utiliza para leer tres caracteres.


Cadena de texto ABCDEFGHIJ Cadena de texto EFG
S2: D00200
S1:
D: D00300
S3: Tres caracteres ledos.

S3: D00400
Desde el 5 carcter
(byte de la izquierda de D00102).

3-33-7 FIND IN STRING: FIND$(660)


Empleo Encuentra una cadena de texto designada dentro de otra cadena.

Smbolo de diagrama de
rels
FIND$(660)
S1: Primer canal de la cadena
S1 de texto de origen
S2: Primer canal de la cadena de
S2 texto encontrada
D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON FIND$(660)
Se ejecuta una vez en el diferencial ascendente @FIND$(660)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S1: Cadena de texto de origen


15 0
Datos de cadena de texto: 4.095 caracteres
S1 como mximo + NUL

hasta

S1 + mximo 2.047 canales

S2: Cadena de texto encontrada


15 0
Datos de cadena de texto: 4.095 caracteres
S2 como mximo + NUL

hasta

S2 + mximo 2.047 canales

1171
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Nota Los datos desde S1 hasta S1 + mximo 2.047 canales y desde S2 hasta S2 +
mximo 2.047 canales deben estar en el mismo rea.

Especificaciones del
operando rea S1 S2 D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447 A448 hasta A959
A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin FIND$(660) encuentra la cadena de texto designada por S2 dentro de la


cadena de texto designada por S1 y entrega el resultado (un nmero dado de
caracteres desde el inicio de S1) en datos binarios a D. Si no existe un texto
coincidente se entrega 0000 hexadecimal a D.
Datos encontrados

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se designan ms de 4.095 caracteres mediante S1 o S2.
error ON si el indicador de habilitacin de puerto de comunicaciones
para el nmero de puerto de comunicaciones especificado
como el N de puerto de comunicaciones para Ejecucin en
segundo plano est en OFF cuando se especifica procesa-
miento en segundo plano.
OFF en el resto de los casos.
Indicador de = ON si se entrega 0000 (hexadecimal) a D.
igual OFF en el resto de los casos.

1172
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Precauciones El nmero mximo de caracteres a leer que pueden designarse mediante S1


o S2 es 4.095 (0FFF hexadecimal). Si se designan ms se generar un error
y el indicador de error se pondr en ON.
Si se entrega 0000 (hexadecimal) a D, el indicador de igual que se pondr en
ON.

Ejemplo En este ejemplo, FIND$(660) se utiliza para buscar un carcter dentro de una
cadena de texto.
Cadena de texto: ABCDEF Cadena de texto C
S2: D00200
S1: D00100 D: D00300

3-33-8 STRING LENGTH: LEN$(650)


Empleo Calcula la longitud de una cadena de texto.

Smbolo de diagrama de
rels
LEN$(650)
S: Primer canal de cadena
S
de texto
D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON LEN$(650)
Se ejecuta una vez en el diferencial ascendente @LEN$(650)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Cadena de texto


15 0
Datos de cadena de texto: 4.095 caracteres
S como mximo + NUL

hasta

S + mximo 2.047 canales

Nota Los datos desde S hasta S + mximo 2.047 canales deben estar en el mismo
rea.

Especificaciones del
operando rea S D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447 A448 hasta A959
A448 hasta A959

1173
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

rea S D
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin LENS$(650) calcula el nmero de caracteres desde el primer canal de la


cadena de texto designado por S hasta el cdigo NUL (00 hexadecimal)
incluido el cdigo NUL y entrega el resultado a D como datos binarios. Si hay
un NUL al comienzo de la cadena de texto, el resultado calculado es 0000
hexadecimal.
1 2
3 4
5

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si el resultado calculado es mayor de 4.095.
de error ON si el indicador de habilitacin de puerto de comunicacio-
nes para el nmero de puerto de comunicaciones especifi-
cado como el N de puerto de comunicaciones para
Ejecucin en segundo plano est en OFF cuando se especi-
fica procesamiento en segundo plano.
OFF en el resto de los casos.
Indicador = ON cuando el resultado calculado es 0.
de igual OFF en el resto de los casos.

Precauciones El nmero mximo de caracteres es 4.095 (0FFF hexadecimal). Si hay ms


(es decir, no hay un NUL antes del carcter 4.096), se generar un error y el
indicador de error se pondr en ON.
Si se entrega 0000 (hexadecimal) a D, el indicador de igual que se pondr en
ON.

1174
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Ejemplo En este ejemplo, LENS$(650) se utiliza para calcular el nmero de caracteres


y entregar el resultado.
Cadena de texto: ABCDE

S: 41 42 D: D00200
43 44
45 00

3-33-9 REPLACE IN STRING: RPLC$(661)


Empleo Sustituye una cadena de texto por otra designada en una posicin tambin
designada.

Smbolo de diagrama de
rels
RPLC$(661)

S1 S1: Primer canal de cadena de texto


S2: Sustitucin del primer canal de
S2 la cadena de texto
S3 S3: Nmero de caracteres

S4 S4: Posicin de inicio

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON RPLC$(661)
Se ejecuta una vez en el diferencial ascendente @RPLC$(661)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S1: Cadena de texto


15 0
Datos de cadena de texto: 4.095 caracteres
S1 como mximo + NUL

hasta

S1 + mximo 2.047 canales

S2: Cadena de texto de sustitucin


15 0
Datos de cadena de texto: 4.095 caracteres
S2 como mximo + NUL

hasta

S2 + mximo 2.047 canales

1175
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

S3: Nmero de caracteres (0000 hasta 0FFF hexadecimal o bien &0 hasta
&4095)
S4: Posicin inicial (0001 hasta 0FFF hexadecimal o bien &0 hasta &4095)
15 0
Datos de cadena de texto: 4.095 caracteres
D como mximo + NUL

hasta

S2 + mximo 2.047 canales

Nota 1. Los datos desde S hasta S1 + mximo 2.047 canales, desde S2 hasta S2
+ mximo 2.047 canales y desde D hasta D + mximo 2.047 canales de-
ben estar en el mismo rea.
2. Los datos desde D hasta D + mximo 2.047 canales y desde S1 hasta S1
+ mximo 2.047 canales o desde S2 hasta S2 + mximo 2.047 canales
pueden solaparse.

Especificaciones del
operando rea S1 S2 S3 S4 D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447 A448
A448 hasta A959 hasta
A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 #0001 ---
hasta hasta
#0FFF #0FFF
(binario) o (binario) o
bien &0 bien &1
hasta hasta
&4095 &4095
Registros de datos --- DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

1176
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Descripcin RPLC$(661) sustituye parte de la cadena de texto designada por S1, desde
la posicin inicial designada por S4, con la cadena de texto designada por
S2, y entrega el resultado a D como datos de cadena de texto (con NUL aa-
dido al final). El nmero de caracteres a reemplazar es designado por S3.
El nmero mximo de caracteres del resultado es 4.095 (0FFF hexadecimal).
Si el nmero es mayor, slo se entregarn 4.095 caracteres (con NUL aa-
dido como el 4.096).
Pueden reemplazarse desde 0 hasta 4,095 caracteres (0000 hasta 0FFF
hexadecimal). Si el nmero es 0, entonces la cadena de texto designada por
S1 se entrega a D tal y como es, sin cambios. Si la cadena de texto S2 es
NUL, entonces la operacin ser la misma que borrar el rango designado de
texto de S1.
Si la cadena de texto S1 desde el principio al final NUL, entonces se entrega-
rn dos caracteres NUL (0000 hexadecimal) a D.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se designan ms de 4.095 caracteres mediante S1
error o S2.
ON si se designan ms de 4.095 caracteres (0FFF hexa-
decimal) mediante S3.
ON si los datos S4 estn dentro del rango entre 1 hasta
4.095 (0001 hasta 0FFF hexadecimal).
ON si el indicador de habilitacin de puerto de comunica-
ciones para el nmero de puerto de comunicaciones
especificado como el N de puerto de comunicaciones
para Ejecucin en segundo plano est en OFF cuando se
especifica procesamiento en segundo plano.
OFF en el resto de los casos.
Indicador de = ON si se entrega 0000 (hexadecimal) a D.
igual OFF en el resto de los casos.

Precauciones El nmero mximo de caracteres para S1 o S2 es 4.095 (0FFF hexadecimal).


Si hay ms (es decir, no hay un NUL antes del carcter 4.096), se generar
un error y el indicador de error se pondr en ON.
El rango desde la posicin inicial designada por S4 es del primero al 4.095
caracter (0001 hasta 0FFF hexadecimal). Cuando la configuracin est fuera
del rango, se generar un error y el indicador de error se pondr en ON.
Si la posicin designada por S4 est ms all de la cadena de texto S1, se
generar un error y el indicador de error se pone en ON.
Si se entrega 0000 (hexadecimal) a D, el indicador de igual que se pondr en
ON.
Configure el primer canal de destino D de tal manera que no solape las reas
configuradas con el primer canal de la cadena dede sustitucin S2.
RPLC$(654) no funcionar correctamente si estas reas se solapan.

1177
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Ejemplo En este ejemplo, RPLC$(654) se utiliza para leer tres caracteres.


Cadena de texto ABCDEFGHI Cadena de texto ABCDHI
S3: D00300
S1: D:
Tres caracteres sutituidos

D2: D00200
Cadena de texto M
D4: D00500
Desde el 5 byte.

3-33-10 DELETE STRING: DEL$(658)


Empleo Elimina una cadena de texto designada del centro de otra cadena.

Smbolo de diagrama de
rels
DEL$(658)
S1: Primer canal de
S1
cadena de texto
S2 S2: Nmero de caracteres

S3 S3: Posicin de inicio

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DEL$(658)
Se ejecuta una vez en el diferencial ascendente @DEL$(658)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S1: Cadena de texto


15 0
Datos de cadena de texto: 4.095 caracteres
S1 como mximo + NUL

hasta

S1 + mximo 2.047 canales

S2: Nmero de caracteres (0000 hasta 0FFF hexadecimal o bien &0 hasta
&4095)
S3: Posicin inicial (0001 hasta 0FFF hexadecimal o bien &1 hasta &4095)
15 0
Datos de cadena de texto: 4.095 caracteres
D como mximo + NUL

hasta

D + mximo 2.047 canales

1178
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Nota 1. Los datos desde S hasta S1 + mximo 2.047 canales, desde S2 hasta S2
+ mximo 2.047 canales y desde D hasta D + mximo 2.047 canales de-
ben estar en el mismo rea.
2. Los datos desde S1 hasta S1 + mximo 2.047 canales y desde D hasta D
+ mximo 2.047 canales pueden solaparse.

Especificaciones del
operando rea S1 S2 S3 D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447 A448 hasta
A448 hasta A959 A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta #0001 hasta ---
#0FFF (bina- #0FFF (bina-
rio) o bien &0 rio) o bien &1
hasta &4095 hasta &4095
Registros de datos --- DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin En la cadena de texto designada por S1, DEL$(658) borra el nmero de


caracteres designado por S2, desde el canal inicial designado por S3, y
entrega el resultado a D como datos de cadena de texto (con NUL aadido al
final).

1179
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Indicadores
Nombre Etiqueta Operacin
Indicador ER ON si se designan ms de 4.095 caracteres mediante S1.
de error ON si se designan ms de 4.095 caracteres (0FFF hexade-
cimal) mediante S2.
ON si los datos S3 estn dentro del rango entre 1 hasta
4.095 (0001 hasta 0FFF hexadecimal).
ON si S3 es mayor que S1.
ON si el indicador de habilitacin de puerto de comunica-
ciones para el nmero de puerto de comunicaciones espe-
cificado como el N de puerto de comunicaciones para
Ejecucin en segundo plano est en OFF cuando se espe-
cifica procesamiento en segundo plano.
OFF en el resto de los casos.
Indicador = ON si se entrega 0000 hexadecimal a D.
de igual OFF en el resto de los casos.

Precauciones El nmero mximo de caracteres para S1 es 4.095 (0FFF hexadecimal). Si


hay ms (es decir, no hay un NUL antes del carcter 4.096), se generar un
error y el indicador de error se pondr en ON.
El rango desde la posicin inicial designada por S3 es del primero al 4.095
carcter (0001 hasta 0FFF hexadecimal). Cuando la configuracin est fuera
del rango, se generar un error y el indicador de error se pondr en ON.
Si el nmero de canales especificado por S1 excede la longitud de la cadena
de texto, el indicador de error se pondr en ON.
Si el nmero de caracteres a borrar se extiende ms all del final de la
cadena de texto S1, se borrarn todos los caracteres de la cadena. Si se
designan todos los caracteres desde el inicio de S1 hasta el final para ser
borrados, entonces se entregar 000 hexadecimal a D.

Ejemplo En este ejemplo, DEL$(658) se utiliza para leer tres caracteres.

Cadena de texto ABCDEFGHI Cadena de texto ABCDMHI


S2: D00200
S1: D:
Tres bytes borrados.
00
S3: D00500
Desde el 5 carcter.

3-33-11 EXCHANGE STRING: XCHG$(665)


Empleo Sustituye una cadena de texto designada por otra.

Smbolo de diagrama de
rels
XCHG$(665)
Ex1: Primer canal
Ex1 de intercambio 1
Ex2 Ex2: Primer canal de
intercambio 2

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON XCHG$(665)
Se ejecuta una vez en el diferencial ascendente @XCHG$(665)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

1180
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos Ex1: Primer canal de intercambio 1


15 0
Ex1 Datos de cadena de texto: 4.095 caracteres
como mximo + NUL

hasta

Ex1 + mximo 2.047 canales

Ex2: Primer canal de intercambio 2


15 0
Datos de cadena de texto: 4.095 caracteres
Ex2 como mximo + NUL

hasta

Ex2 + mximo 2.047 canales

Nota 1. Los datos desde Ex1 hasta Ex1 + mximo 2.047 canales y desde Ex2 has-
ta Ex2 + mximo 2.047 canales deben estar en el mismo rea.
2. Los datos desde Ex1 hasta Ex1 + mximo 2.047 canales y desde Ex2 has-
ta Ex2 + mximo 2.047 canales no pueden solaparse.

Especificaciones del
operando rea Ex1 Ex2
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---

1181
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

rea Ex1 Ex2


Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin XCHG$(665) intercambia la cadena de texto designada por Ex1 por la


cadena de texto designada por Ex2. Si Ex1 o Ex2 es NUL, entonces se entre-
gan dos caracteres NUL (0000 hexadecimal) al otro.
Ex1 Ex1

Ex2 Ex2

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se designan ms de 4.095 caracteres mediante Ex1
error o Ex2.
ON si los datos de Ex1 y Ex2 se solapan.
ON si el indicador de habilitacin de puerto de comunica-
ciones para el nmero de puerto de comunicaciones espe-
cificado como el N de puerto de comunicaciones para
Ejecucin en segundo plano est en OFF cuando se espe-
cifica procesamiento en segundo plano.
OFF en el resto de los casos.

Precauciones El nmero mximo de caracteres que pueden designarse mediante Ex1 o


Ex2 es 4.095 (0FFF hexadecimal). Si se designan ms se generar un error y
el indicador de error se pondr en ON.
Si los datos de cadena de texto designados por Ex1 y Ex2 se solapan, se
generar un error y el indicador de error se pondr en ON.

Ejemplo En este ejemplo, XCHG$(665) se utiliza para intercambiar dos cadenas de


texto.

Cadenas de texto ABCDE y FG Cadenas de texto: FG y ABCDE

Ex1 Ex1: D00100 Ex1: D00100


Ex2 Se mantienen
los datos
anteriores.
Ex2: D00200 Ex2: D00200

3-33-12 CLEAR STRING: CLR$(666)


Empleo Borra una cadena de texto completa y la sustituye por NUL (00 hexadecimal).

Smbolo de diagrama de
rels
CLR$(666)
S: Primer canal de
S cadena de texto

1182
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON CLR$(666)
Se ejecuta una vez en el diferencial ascendente @CLR$(666)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S: Primer canal de cadena de texto


15 0
Datos de cadena de texto: 4.095 caracteres
S como mximo + NUL

hasta

S + mximo 2.047 canales

Nota Los datos desde S hasta S + mximo 2.047 canales deben estar en el mismo
rea.

Especificaciones del
operando rea S
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

1183
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Descripcin CLR$(666) borra y sustituye por NUL (00 hexadecimal) la cadena de texto
completa del primer canal designado por S hasta el cdigo NUL (00 hexade-
cimal). El nmero mximo de caracteres que pueden borrase es 4.096. Si no
hay un NUL antes del carcter 4.096, slo se borrarn 4.096 caracteres.
S A B S
C D
NUL

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si el indicador de habilitacin de puerto de comunica-
error ciones para el nmero de puerto de comunicaciones
especificado como el N de puerto de comunicaciones
para Ejecucin en segundo plano est en OFF cuando se
especifica procesamiento en segundo plano.
OFF en el resto de los casos.

Ejemplo En este ejemplo, CLR$(666) se utiliza para borrar la cadena de texto ABCDE.

Cadena de texto ABCDE


S
S: S:

3-33-13 INSERT INTO STRING: INS$(657)


Empleo Elimina una cadena de texto designada del centro de otra cadena.

Smbolo de diagrama de
rels
INS$(657)
S1: Primer canal de la
S1 cadena de texto base
S2 S2: Primer canal de la cadena
de texto insertada
S3 S3: Posicin de inicio

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON INS$(657)
Se ejecuta una vez en el diferencial ascendente @INS$(657)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos S1: Cadena de texto base


15 0
Datos de cadena de texto: 4.095 caracteres
S1 como mximo + NUL

hasta

S1 + mximo 2.047 canales

1184
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

S2: Cadena de texto insertada


15 0
Datos de cadena de texto: 4.095 caracteres
S2 como mximo + NUL

hasta

S2 + mximo 2.047 canales

S3: Posicin inicial (0000 hasta 0FFF hexadecimal o bien &0 hasta &4095)
15 0
Datos de cadena de texto: 4.095 caracteres
D como mximo + NUL

hasta

D + mximo 2.047 canales

Nota 1. Los datos desde S hasta S1 + mximo 2.047 canales, desde S2 hasta S2
+ mximo 2.047 canales y desde D hasta D + mximo 2.047 canales de-
ben estar en el mismo rea.
2. Los datos desde S2 hasta S2 + mximo 2.047 canales y desde D hasta D
+ mximo 2.047 canales no pueden solaparse. Los datos desde S1 hasta
S1 + mximo 2.047 canales y desde D hasta D + mximo 2.047 canales
pueden solaparse. Los datos desde S1 hasta S1 + mximo 2.047 canales
y desde S2 hasta S 2+ mximo 2.047 canales tambin pueden solaparse.

Especificaciones del
operando rea S1 S2 S3 D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447 A448 hasta
A448 hasta A959 A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta ---
#0FFF (bina-
rio) o bien &0
hasta &4095
Registros de datos --- DR0 hasta ---
DR15

1185
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

rea S1 S2 S3 D
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin En la cadena de texto designada por S1, INS$(657) inserta la cadena de


texto designada por S2, despus del canal inicial designado por S3, y entrega
el resultado a D como datos de cadena de texto (con NUL aadido al final).
El nmero mximo de caracteres que pueden insertarse es 4.095 (0FFF
hexadecimal). Si el nmero es mayor, slo se entregarn 4.095 a D (con NUL
aadido como el carcter 4.096).
Si S1 o S2 es NUL, entonces la cadena de texto designada por el otro se
entrega a D tal y como es. Si S1 y S2 son ambos NUL, entonces se entrega-
rn dos caracteres NUL (0000 hexadecimal) a D.

Caracteres
insertados

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se designan ms de 4.095 caracteres mediante S1
error o S2.
ON si S3 excede de 4.095 (0FFF hexadecimal).
ON si el indicador de habilitacin de puerto de comunica-
ciones para el nmero de puerto de comunicaciones
especificado como el N de puerto de comunicaciones
para Ejecucin en segundo plano est en OFF cuando se
especifica procesamiento en segundo plano.
OFF en el resto de los casos.
Indicador de = ON si se entrega 0000 (hexadecimal) a D.
igual OFF en el resto de los casos.

Precauciones El nmero mximo de caracteres para S1 y S2 es 4.095 (0FFF hexadecimal).


Si hay ms (es decir, no hay un NUL antes del carcter 4.096), se generar
un error y el indicador de error se pondr en ON.
El rango para la posicin inicial designada por S3 es de 0 hasta 4.095. Si la
configuracin est fuera de este rango, se generar un error y el indicador de
error se pondr en ON.
Si se entrega 0000 (hexadecimal) a D, el indicador de igual que se pondr en
ON.
No solape los canales de destino designados por D con los datos de cadena
de texto designados por S2. Si se solapan, la operacin no se ejecutar
correctamente.

1186
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Ejemplo En este ejemplo, INS$(657) se utiliza para insertar dos caracteres.

Cadena de texto Cadena de texto JK Cadena de texto


ABCDEFGHI S2: D00200 ABCDEFJKGHI
S3: D00400
S1: D:

3-33-14 Instrucciones de comparacin de cadenas (670 hasta 675)


Empleo Las instrucciones de comparacin de cadenas (=$, <>$, <$, <=$, >$, >=$)
comparan dos cadenas de texto desde el principio, expresadas en valores del
cdigo ASCII. Si el resultado de la comparacin es verdadero, se crear una
condicin de ejecucin ON para LOAD, AND o para OR.

Smbolo de diagrama de
rels
LD (carga)

Smbolo
S1: Cadena
S1
de texto 1
S2 S2: Cadena
de texto 2

AND (conexin en serie)

Smbolo

S1 S1: Cadena
de texto 1
S2 S2: Cadena
de texto 2

OR (conexin en paralelo)

Smbolo
S1: Cadena
S1 de texto 1
S2: Cadena
S2 de texto 2

Variaciones
Variacio- Crea ON cada ciclo que la com- Instrucciones de comparacin de
nes paracin es verdadera. cadenas
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

1187
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Operandos S1: Cadena de texto 1


15 0
Datos de cadena de texto: 4.095 caracteres
S1 como mximo + NUL

hasta

S1 + mximo 2.047 canales

S2: Cadena de texto 2


15 0
Datos de cadena de texto: 4.095 caracteres
S2 como mximo + NUL

hasta

S2 + mximo 2.047 canales

Nota 1. Los datos desde S1 hasta S1 + mximo 2.047 canales y desde S2 hasta
S2 + mximo 2.047 canales deben estar en el mismo rea.
2. Los datos desde S1 hasta S1 + mximo 2.047 canales y desde S2 hasta
S2 + mximo 2.047 canales no pueden solaparse.

Especificaciones del
operando rea S1 S2
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A447
A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

1188
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Descripcin Las instrucciones de comparacin de cadenas comparan las cadenas de


texto designadas por S1 y S2. Si el resultado de la comparacin es verda-
dero, se crear una condicin de ejecucin ON en le diagrama de rels. El
nmero mximo de caracteres para S1 o S2 es 4.095 (0FFF hexadecimal).
Las instrucciones de comparacin de cadenas se expresan utilizando los 18
nmonicos listados a continuacin. (LD, AND y OR no aparecen en el
diagrama de rels).
LD=$, AND=$, OR=$
LD<>$, AND<>$, OR<>$
LD<$, AND<$, OR<$
LD<=$, AND<=$, OR<=$
LD>$, AND>$, OR>$
LD>=$, AND>=$, OR>=$
La siguiente tabla proporciona detalles sobre estas instrucciones.
Nemnico (incluso Nombre Funcin
cdigo de funcin)
LD=$(670) LOAD STRING EQUALS Verdadero cuando la cadena
AND=$(670) AND STRING EQUALS de texto S1 es igual que la
cadena de texto S2.
OR=$(670) OR STRING EQUALS
LD<>$(671) LOAD STRING NOT EQUAL Verdadero cuando la cadena
AND<>$(671) AND STRING NOT EQUAL de texto S1 no es igual que la
cadena de texto S2.
OR<>$(671) OR STRING NOT EQUAL
LD<$(672) LOAD STRING LESS THAN Verdadero cuando la cadena
AND<$(672) AND STRING LESS THAN de texto S1 es menor que la
cadena de texto S2.
OR<$(672) OR STRING LESS THAN
LD<=$(673) LOAD STRING LESS THAN Verdadero cuando la cadena
OR EQUALS de texto S1 es menor o igual
AND<=$(673) AND STRING LESS THAN que la cadena de texto S2.
OR EQUALS
OR<=$(673) OR STRING LESS THAN
OR EQUALS
LD>$(674) LOAD STRING GREATER Verdadero cuando la cadena
THAN de texto S1 es mayor que la
AND>$(674) AND STRING GREATER cadena de texto S2.
THAN
OR>$(674) OR STRING GREATER
THAN
LD>=$(675) LOAD STRING GREATER Verdadero cuando la cadena
THAN OR EQUALS de texto S1 es mayor que la
AND>=$(675) AND STRING GREATER cadena de texto S2.
THAN OR EQUALS
OR>=$(675) OR STRING GREATER
THAN OR EQUALS

Mtodos de comparacin
Los mtodos de comparacin son los siguientes:
El primer carcter (byte) de cada cadena de texto se compara con su contra-
rio de la otra cadena como cdigo ASCII. Si ambos cdigos ASCII no son
iguales, entonces la relacin mayor/menor se convierte en la relacin mayor/
menor para ambas cadenas de texto. Si ambos cdigos ASCII son iguales se
comparan los siguientes caracteres. Si estos dos cdigos ASCII no son igua-
les, entonces la relacin mayor/menor se convierte en la relacin mayor/
menor para ambas cadenas de texto.

1189
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

De esta manera las dos cadenas de texto se comparan en orden, carcter por
carcter. Si todos los caracteres, incluyendo el NUL, son iguales, entonces
las dos cadenas de texto tendrn una relacin de igual.
Si las dos cadenas de texto son de distintas longitudes, entonces se aadir
NUL (00 hexadecimal) a la cadena ms corta para rellenar la diferencia,, y la
comparacin se llevar a cabo basndose en esto.
Ejemplos de comparacin
AD (414400 hexadecimal) y BC (424300 hexadecimal):
AD < BC, porque al comienzo de las cadenas de texto 41 (hexadecimal) es
menor que 42 (hexadecimal).
ADC (41444300 hexadecimal) y B (4200 hexadecimal):
ADC < B, porque al comienzo de las cadenas de texto 41 (hexadecimal) es
menor que 42 (hexadecimal).
ABC (41424300 hexadecimal) y ABD (41424400 hexadecimal):
ABC < ABD, porque al comienzo de las cadenas de texto los 41 y los 42 coin-
ciden, as que el resultado es determinado por 43 que es menor que 44.
ABC (41424300 hexadecimal) y AB (414200 hexadecimal):
ABC > AB, porque al comienzo de las cadenas de texto los 41 y los 42 coinci-
den, as que el resultado es determinado por 43 que es mayor que 00.
AB (414200 hexadecimal) y AB (414200 hexadecimal):
AB = AB, porque los 41, los 42, y los 00 coinciden todos.
Continue programando una instruccin tras otra tratando LD, AND y OR de la
misma manera. Las instrucciones LD y OR pueden conectarse directamente
a la barra de bus, pero las instrucciones AND no pueden conectarse.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se designan ms de 4.095 caracteres mediante S1
error o S2.
OFF en el resto de los casos.
Indicador de > ON si los resultados de comparacin de S1 son mayores
mayor que que S2.
OFF en el resto de los casos.
Indicador de >= ON si los resultados de comparacin de S1 son mayores
mayor o igual o iguales que S2.
que OFF en el resto de los casos.
Indicador de = ON si los resultados de comparacin de S1 son iguales
igual que S2.
OFF en el resto de los casos.
Indicador de <> ON si los resultados de comparacin de S1 no son
distinto de iguales que S2.
OFF en el resto de los casos.
Indicador de < ON si los resultados de comparacin de S1 son menores
menor que que S2.
OFF en el resto de los casos.
Indicador de <= ON si los resultados de comparacin de S1 son menores
menor o igual o iguales que S2.
que OFF en el resto de los casos.

Nota Las instrucciones de comparacin de cadenas se utilizan para reorganizar el


orden de las cadenas de texto en orden ASCII. Por ejemplo, el orden ASCII
de ms bajo a ms alto es el orden del alfabeto desde A hasta Z, as que las
cadenas de texto pueden ordenarse en orden alfabtico.

1190
Instrucciones de procesamiento de cadenas de texto Seccin 3-33

Precauciones Coloque una instruccin de la derecha despus de estas instrucciones. Las


instrucciones de comparacin de cadenas no pueden aparecer en el lado
derecho del diagrama de rels.
Estas instrucciones no pueden utilizarse en la ltima lnea de programa de un
bloque lgico.
El nmero mximo de caracteres que pueden compararse es 4.095 (0FFF
hexadecimal). Si se excede este nmero (es decir, no hay un NUL antes del
carcter 4.096), se producir un error y el indicador de error se pondr en
ON. Cuando esto sucede se entregar una condicin de ejecucin OFF a la
siguiente instruccin.

Ejemplo En este ejemplo las instrucciones de comparacin de cadenas se utilizan


para comparar datos.
Direccin Nemnico Operando
> ---

000000
000001
---

000002
000003
<> ---

000004

> = <>

Cadena de texto ABCD Cadena de texto ABC

Cadena de texto ABC Cadena de texto ABC

En este ejemplo las tres cadenas de texto se reorganizan en orden alfabtico.


El orden original es el siguiente:
D00100: Leche
D00200: Jugo
D00300: Cerveza

1191
Instrucciones de control de tareas Seccin 3-34

Cuando se reordenen alfabticamente el orden cambia al siguiente: cerveza,


jugo, leche.

>$ Las dos cadenas de texto que comienzan por D00100 y D00200 se
comparan en orden ASCII de menor a mayor. Si la cadena de texto que
empieza por D00100 es mayor en orden ASCII que la que empieza por
D00200, entonces la posicin de las dos cadenas de texto se invertir.

>$ Las dos cadenas de texto que comienzan por D00200 y D00300 se
comparan en orden ASCII de menor a mayor. Si la cadena de texto que
empieza por D00200 es mayor en orden ASCII que la que empieza por
D00300, entonces la posicin de las dos cadenas de texto se invertir.

Cadena de texto Orden alfabtico

D00100: Las cadenas de Jugo Las cadenas de texto Jugo Las cadenas de Cerveza
texto leche y jugo leche y cerveza se texto jugo y cerveza
D00200: Jugo se comparan y sus Leche comparan y sus Cerveza se comparan y sus Jugo
D00300: posiciones se posiciones se posiciones se
invierten porque Cerveza invierten porque Leche invierten porque Leche
L>J L > C. J > C.
De esta manera las tres cadenas de texto pueden reorganizarse en orden alfabtico.

3-34 Instrucciones de control de tareas


Esta seccin describe las instrucciones utilizadas para controlar tareas.
Instruccin Nemnico Cdigo de funcin Pgina
TASK ON TKON 820 1192
TASK OFF TKOF 821 1196

3-34-1 TASK ON: TKON(820)


Empleo Convierte la tarea especificada en ejecutable. Adems causa que una tarea
de interrupcin opere como una tarea cclica adicional. (Las tareas cclicas
adicionales slo son admitidas por las CPUs CS1-H, CJ1-H y CJ1M).

Smbolo de diagrama de
rels
TKON(820)

N N: Nmero de tarea

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TKON(820)
Se ejecuta una vez en el diferencial ascendente @TKON(820)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK No se admite

Operandos N: Nmero de tarea


El rango permitido para N depende del tipo de tarea especificada.

1192
Instrucciones de control de tareas Seccin 3-34

Tareas cclicas:
N debe ser una constante entre 0 y 31 decimal. (Los valores 0 hasta 31
especifican las tareas cclicas 0 hasta 31).
Tareas cclicas adicionales (slo CPUs CS1-H, CJ1-H, CJ1M y CS1D):
N debe ser una constante entre 8000 y 8255 decimal. (Los valores 8000
hasta 8255 especifican las tareas cclicas adicionales 0 hasta 255).

Especificaciones del
operando rea N
rea CIO ---
rea de Trabajo ---
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes 00 hasta 31 o bien 8000 hasta 8255 (decimal)
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ---
recto utilizando regis-
tros de ndice

Descripcin TKON(820) pone la tarea cclica especificada o la tarea cclica adicional en


estado ejecutable. Cuando N es desde 0 hasta 31 (especificando una tarea
cclica), el correspondiente indicador de tarea (TK00 hasta TK31) se pone en
ON simultneamente.
Esta instruccin solamente puede ejecutarse en una tarea cclica regular o en
una tarea cclica adicional. Se producir un error si se intenta ejecutar en una
tarea de interrupcin.
La tarea cclica o la la tarea cclica adicional especificada en TKON(820) tam-
bin ser ejecutable en ciclos posteriores siempre que no se ponga en
estado de espera mediante TKOF(821).
Cualquier tarea puede hacerse ejecutable desde cualquier tarea cclica, aun-
que la tarea especificada no se ejecutar hasta el siguiente ciclo si el nmero
de tarea es inferior al nmero de la tarea local. La tarea se ejecutar en el
mismo ciclo si el nmero de tarea es mayor que el nmero de tarea de la
tarea local.

1193
Instrucciones de control de tareas Seccin 3-34

El nmero de la tarea El nmero de la tarea


especificada es superior al especificada es inferior al nmero
nmero de la tarea local (m<n). de la tarea local (m>n).

Tarea m Tarea

Se vuelve
ejecutable
Se vuelve
en el
ejecutable
siguiente
en ese ciclo.
ciclo.

Tarea n Tarea m

TKON(820) se tratar como NOP(000) si la tarea especificada ya es ejecuta-


ble o si se especifica la tarea local.
Una tarea en estado ejecutable puede ponerse en estado de espera con
TKOF(821), CX-Programmer o un comando FINS.
Los trminos "ejecutable" y "en ejecucin" no son intercambiables. Las tareas
ejecutables se ejecutan por orden de sus nmeros de tarea durante la ejecu-
cin cclica del programa. Una tarea ejecutable no se ejecutar si se pone en
un estado de espera antes de que la ejecucin del programa alcance su
nmero de tarea.
Nota 1. En CX-Programmer, la Ficha de propiedades generales de cada tarea dis-
pone de una configuracin (el cuadro Inicio de la operacin) que especifi-
ca si la tarea cclica es ejecutable al inicio. Cuando el cuadro Inicio de la
operacin ha sido marcado, la tarea cclica correspondiente se pondr en
estado ejecutable automticamente cuando comience la operacin del
PLC. El resto de las tareas cclicas estarn en estado no ejecutable.
(No obstante, si se ejecuta desde la consola de programacin la operacin
de borrar toda la memoria, la tarea cclica 0 se har ejecutable automti-
camente).
2. Si una tarea est en estado no ejecutable, puede ejecutarse TKON(820)
para poner esa tarea en estado ejecutable. De la misma manera, una ta-
rea en estado ejecutable puede ponerse en estado no ejecutable con la
instruccin TKOF(821).
3. Las tareas cclicas o las tareas cclicas adicionales que fueron hechas eje-
cutables se pondrn en estado ejecutable en ese ciclo por orden de nme-
ro de tarea. Por lo tanto una tarea no se ejecutar si se pone en estado de
reposo antes de que el procesamiento del ciclo alcance esa tarea al ir eje-
cutando las tareas por orden de nmero de tarea.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no es una constante entre 00 y 31 o entre 8000 y
error 8255 (Slo CPUs CS1-H, CJ1-H y CJ1M).
ON si la tarea especificada con N no existe.
ON si TKON(820) se ejecuta en una tarea de interrupcin.
OFF en el resto de los casos.

1194
Instrucciones de control de tareas Seccin 3-34

Nombre Direcciones Operacin


Indicado- TK00 hasta Estos indicadores se ponen en ON cuando la tarea
res de tarea TK31 cclica correspondiente es ejecutable y estn en
OFF cuando la tarea cclica correspondiente no es
ejecutable o est en modo de reposo.
TK00 hasta TK31 se corresponden con los nmeros
de tarea cclica 00 hasta 31.

Ejemplos Especificacin de una tarea posterior


Cuando CIO 000000 est en ON en el siguiente ejemplo se hace ejecutable el
nmero de tarea 3 en el nmero de tarea 1. El nmero de tarea 3 se ejecutar en
el mismo ciclo cuando la ejecucin del programa alcance el nmero de tarea 3.

Tarea 1

03

El nmero de tarea 3 se
ejecuta en el mismo ciclo.

Tarea 3

Especificacin de una tarea anterior


Cuando CIO 000000 est en ON en el siguiente ejemplo se hace ejecutable el
nmero de tarea 1 en el nmero de tarea 3. El nmero de tarea 1 se ejecutar en
el siguiente ciclo cuando la ejecucin del programa alcance el nmero de tarea 1.

Tarea 1

El nmero de tarea 1 se
ejecuta en el siguiente
ciclo.

Tarea 3

1195
Instrucciones de control de tareas Seccin 3-34

3-34-2 TASK OFF: TKOF(821)


Empleo Pone la tarea cclica especificada o la tarea cclica adicional en modo de
reposo, es decir, deshabilita la ejecucin de la tarea. (Las tareas cclicas adi-
cionales slo son admitidas por las CPUs CS1-H, CJ1-H y CJ1M).

Smbolo de diagrama de
rels
TKOF(821)
N: Nmero de
N
tarea

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON TKOF(821)
Se ejecuta una vez en el diferencial ascendente @TKOF(821)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK No se admite

Operandos N: Nmero de tarea


El rango permitido para N depende del tipo de tarea especificada.
Tareas cclicas:
N debe ser una constante entre 0 y 31 decimal. (Los valores 0 hasta 31
especifican las tareas cclicas 0 hasta 31).
Tareas cclicas adicionales (slo CPUs CS1-H, CJ1-H, CJ1M y CS1D):
N debe ser una constante entre 8000 y 8255 decimal. (Los valores 8000
hasta 8255 especifican las tareas cclicas adicionales 0 hasta 255).

Especificaciones del
operando rea N
rea CIO ---
rea de Trabajo ---
rea de bit en Espera ---
rea Bit Auxiliar ---
rea Temporizador ---
rea Contador ---
rea DM ---
rea EM sin banco ---
rea EM con Banco ---
Direcciones DM/EM indi- ---
rectas en binario
Direcciones DM/EM indi- ---
rectas en BCD
Constantes 00 hasta 31 o bien 8000 hasta 8255 (decimal)
Registros de datos ---
Registros de ndice ---
Direccionamiento indi- ---
recto utilizando regis-
tros de ndice

1196
Instrucciones de control de tareas Seccin 3-34

Descripcin TKOF(821) Pone la tarea cclica o la tarea ciclica adicional especificada en


estado de reposo y pone en OFF el correpondiente indicador de tarea (TK00
hasta TK31).
La tarea especificada en TKOF(821) tambin estar en estado de reposo en
ciclos posteriores siempre que no se ponga en estado ejecutable mediante
TKON(820), un dispositivo perifrico que ejecute CX-Programmer o un
comando FINS.
Una tarea puede ponerse en estado de reposo desde cualquier otra tarea nor-
mal, aunque la tarea especificada no se pondr en estado de reposo hasta el
siguiente ciclo si el nmero de tarea es inferior al nmero de tarea de la tarea
local (ya se hubiera ejecutado). La tarea estar en estado de reposo en el mismo
ciclo si el nmero de tarea es mayor que el nmero de tarea de la tarea local.
Si se especifica la tarea local en TKOF(821), la tarea se pondr en estado de
reposo inmediatamente y no se ejecutar ninguna de las instrucciones sub-
secuentes de la tarea.

Nota 1. En CX-Programmer, la Ficha de propiedades generales de cada tarea dispo-


ne de una configuracin (el cuadro Inicio de la operacin) que especifica si la
tarea cclica es ejecutable al inicio. Cuando el cuadro Inicio de la operacin ha
sido marcado, la tarea cclica correspondiente se pondr en estado ejecutable
automticamente cuando comience la operacin del PLC. El resto de las ta-
reas cclicas estarn en estado no ejecutable. (No obstante, si se ejecuta des-
de la consola de programacin la operacin de borrar toda la memoria, la
tarea cclica 0 se har ejecutable automticamente).
2. Si una tarea est en estado no ejecutable, puede ejecutarse TKON(820)
para poner esa tarea en estado ejecutable. De la misma manera, una ta-
rea en estado ejecutable puede ponerse en estado no ejecutable con la
instruccin TKOF(821).
3. Las tareas cclicas o las tareas cclicas adicionales que estn es estado
ejecutable pueden ponerse en estado de reposo mediante la instruccin
TKOF(821).
El nmero de la tarea El nmero de la tarea
especificada es superior al de la especificada es inferior al de la
tarea local (m<n). tarea local (m>n).

Tarea m Tarea n

En modo de En modo
espera durante de espera
ese ciclo. durante el
siguiente
Tarea n Tarea m ciclo.

Una tarea normal que ha sido configurada para ser ejecutada al inicio se pon-
dr en estado ejecutable automticamente cuando comience la operacin del
PLC. El resto de las tareas normales estarn en estado no ejecutable.

1197
Instrucciones de control de tareas Seccin 3-34

Una tarea en estado ejecutable puede ponerse en estado de espera con


TKOF(821), un dispositivo perifrico que ejecute CX-Programmer o un
comando FINS.
Los trminos "ejecutable" y "en ejecucin" no son intercambiables. Las tareas
ejecutables se ejecutan por orden de sus nmeros de tarea durante la ejecu-
cin cclica del programa. Una tarea ejecutable no se ejecutar si se pone en
un estado de espera antes de que la ejecucin del programa alcance su
nmero de tarea.
Al contrario que en el caso de TKON(820), esta instruccin puede colocarse
en tareas de interrupcin y en tareas cclicas.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no es una constante entre 00 y 31 o entre 8000 y
error 8255 (Slo CPUs CS1-H, CJ1-H y CJ1M).
ON si la tarea especificada con N no existe.
ON si TKOF(821) se ejecuta en una tarea de interrupcin.
OFF en el resto de los casos.

Nombre Direcciones Operacin


Indicado- TK00 hasta Estos indicadores se ponen en ON cuando la tarea
res de tarea TK31 cclica correspondiente es ejecutable y estn en OFF
cuando la tarea cclica correspondiente no es ejecu-
table o est en modo de reposo.
TK00 hasta TK31 se corresponden con los nmeros
de tarea cclica 00 hasta 31.

Ejemplos Especificacin de una tarea posterior


Cuando CIO 000000 est en ON en el siguiente ejemplo se pone en estado
de reposo el nmero de tarea 3 en el nmero de tarea 1. El nmero de tarea
3 no se ejecutar en ese ciclo cuando la ejecucin del programa alcance el
nmero de tarea 3.

Tarea 1

03

El nmero de tarea 3 est


en modo de reposo en el
mismo ciclo, es decir, no se
ejecuta en el ciclo actual ni
en los ciclos siguientes.
Tarea 3

1198
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Especificacin de una tarea anterior


Cuando CIO 000000 est en ON en el siguiente ejemplo se pone en estado
de reposo el nmero de tarea 3 en el nmero de tarea 1. El nmero de tarea
1 no se ejecutar en el prximo ciclo cuando la ejecucin del programa
alcance el nmero de tarea 1.

Tarea 1

El nmero de tarea 1 est


en modo de reposo en el
siguiente ciclo, es decir, se
ejecuta en el ciclo actual
pero no en los ciclos
Tarea 3 siguientes.

01

3-35 Instrucciones de conversin de modelo (Unidades Ver. 3.0


o superior)
Esta seccin describe las instrucciones utilizadas para cambiar los modelos
de PLC.
Instruccin Nemnico Cdigo de funcin Pgina
BLOCK TRANSFER XFERC 565 1201
SINGLE WORD DISTRIBUTE DISTC 566 1203
DATA COLLECT COLLC 567 1206
MOVE BIT MOVBC 568 1211
BIT COUNTER BCNTC 621 1212

Las instrucciones de conversin de modelo proporcionan la misma funcionali-


dad que otras instrucciones pero utilizan datos BCD para los operandos,
como las instrucciones de la serie C. (La serie CJ/CS utiliza datos binarios
para los operandos). Hay cinco modelos de instrucciones de conversin
como se muestra en la anterior tabla, y todas tienen una C aadida al final del
nemnico de la funcin equivalente para datos de operando binarios.
Las instrucciones de conversin de modelo posibilitan convertir programas de
la serie C a programas de la serie CS/CJ sin cambiar los datos de operando
para estas instrucciones.
Cuando se convierten programas de la serie C a programas de la serie CS/
CJ con CX-Programmer de la versin 5.0 o superior (ver nota), estas instruc-
ciones se utilizarn automticamente cuando se realicen conversiones (por
ejemplo, XFER se convertir en XFERC), eliminando as la necesidad de
corregir los datos de operando manualmente.
Cuando se convierten programas de la serie C a programas de la serie CS/
CJ con CX-Programmer de la versin 4.0 o inferior (ver nota), cualquier ope-
rando para el que se especifica una constante se convertir de BCD a binario,
pero los datos de operando para los que se especifica una direccin de canal
debern corregirse manualmente.
1199
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Nota La conversin se realiza especificando la serie CS/CJ como el tipo de dispo-


sitivo en el cuadro de dilogo de cambio de PLC.
Diferencias con las La Serie C incluye los tipos C200H, C1000H, C2000H, C200HS, C2000HX/
instrucciones de la serie C HG/HE(-Z), CQM1, CQM1H, CPM1/CPM1A, CPM2C y SRM1.
Nombre Instrucciones de Instruccin de Diferencias con las Cuando se convierten tipos Cuando se convierten
conversin de la serie C instrucciones de la serie C de dispositivo a CS/CJ con tipos de dispositivo a
modelo (Unidad Ver. correspon- CX-Programmer Ver. 4.0 o CS/CJ con
3.0 posterior) diente inferior CX-Programmer Ver. 5.0
o superior
Nemnico Nemnico C200H, C1000H C200HS,
(cdigo de funcin) (cdigo de fun- o C2000H C2000HX/HG/
cin) HE(-Z), CQM1,
CQM1H,
CPM1/CPM1A,
CPM2C o
SRM1
BLOCK XFERC(565) XFER(70) Igual Igual Convertida a XFER. Si se espe- XFER se convierte a
TRANSFER cifica una direccin de canal XFERC. Los operandos no
para el primer operando requieren correccin.
(nmero de canales a transferir)
ser necesario corregirla
manualmente a datos binarios
en el programa.
SINGLE WORD DISTC(566) DIST(80) Junto con la ope- Igual Convertida a DIST. Si se espe- DIST se convierte a
DISTRIBUTE racin de distribu- (operacin de cifica una direccin de canal DICTC. Los operandos no
cin de datos, fa- distribucin y para el tercer operando (datos requieren correccin.
cilita la operacin operacin de de desplazamiento) ser nece-
de escritura en escritura en sario corregirla manualmente a
pila que no era pila) datos binarios en el programa.
soportada ante-
riormente.
DATA COLLECT COLLC(567) COLL(81) Junto con la ope- Igual Convertida a COLL. Si se espe- COLL se convierte a
racin de reco- (operacin de cifica una direccin de canal COLLC. Los operandos no
gida de datos, fa- recogida de para el segundo operando requieren correccin.
cilita la operacin datos y opera- (datos de desplazamiento) ser
de lectura en pila cin de lectura necesario corregirla manual-
que no era sopor- en pila) mente a datos binarios en el
tada anterior- programa.
mente.
MOVE BIT MOVBC(568) MOVB(82) Igual Igual Convertida a MOVB. Si se es- MOVB se convierte a
pecifica una direccin de canal MOVBC. Los operandos
para el segundo operando no requieren correccin.
(datos de control) ser necesa-
rio corregirla manualmente a
datos binarios en el programa.
BIT COUNTER BCNTC(621) BCNT(67) Igual Igual Convertida a BCNT. Si se espe- BCNT se convierte a
cifica una direccin de canal BCNTC. Los operandos no
para el primer operando (nme- requieren correccin.
ro de canales a contar) ser
necesario corregirla manual-
mente a datos binarios en el
programa.

Nota La operacin de los indicadores de condicin difiere de las siguientes mane-


ras. Consulte la descripcin de los indicadores de condicin de cada instruc-
cin para obtener informacin ms detallada sobre el particular.
La operacin de los indicadores de condicin difiere para todas las ins-
trucciones cuando los contenidos de un rea DM utilizados para direccio-
namiento indirecto no son BCD (*BCD) o se excede el rango de
direccionamiento del rea DM.
Para DISTC(566), la operacin de los indicadores de condicin difiere
respecto de los de C200H, C1000H y C2000H para operacin de escri-
tura en pila.
Para COLLC(567), la operacin de los indicadores de condicin difiere
respecto de los de C200H, C1000H y C2000H para operacin de escri-
tura en pila.
Diferencias respecto a las instrucciones anteriores de la serie CS/CJ
Nombre Instrucciones de Instruccin de la Diferencias respecto a las instrucciones anteriores de la serie CS/CJ
conversin de modelo serie C corres-
(Unidad Ver. 3.0 pondiente
posterior)
Nemnico (cdigo de Nemnico (cd.
funcin) de funcin)
BLOCK XFERC(565) XFER(70) El tipo de datos para el primer operando (nmero de canales a transferir) es
TRANSFER BCD (0000 hasta 9999) en lugar de binario (0000 hasta FFFF hexadecimal).
SINGLE DISTC(566) DIST(80) Se soporta la operacin de escritura en pila adems de la operacin de distri-
WORD bucin de datos.
DISTRIBUTE El tipo de datos para el tercer operando (datos de desplazamiento) es BCD
(distribucin de datos: 0000 hasta 7999, escritura en pila: 0000 hasta 9999)
en lugar de binario (0000 hasta FFFF hexadecimal).

1200
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Nombre Instrucciones de Instruccin de la Diferencias respecto a las instrucciones anteriores de la serie CS/CJ
conversin de modelo serie C corres-
(Unidad Ver. 3.0 pondiente
posterior)
Nemnico (cdigo de Nemnico (cd.
funcin) de funcin)
DATA COLLC(567) COLL(81) Se soporta la operacin de lectura en pila adems de la operacin de distri-
COLLECT bucin de datos.
El tipo de datos para el segundo operando (datos de desplazamiento) es
BCD (distribucin de datos: 0000 hasta 7999, lectura en pila para FIFO: 9000
hasta 9999, lectura en pila para LIFO: 8000 hasta 8999) en lugar de binario
(0000 hasta FFFF hexadecimal).
MOVE BIT MOVBC(568) MOVB(82) El tipo de datos para las especificaciones de bit de origen y destino del
segundo operando (datos de control) es BCD (00 hasta 15) en lugar de bina-
rio (00 hasta 0F hexadecimal).
BIT BCNTC(621) BCNT(67) El tipo de datos para el primer operando (nmero de canales a contar) es
COUNTER BCD (0000 hasta 9999) en lugar de binario (0000 hasta FFFF hexadecimal).
El tipo de datos almacenado para el tercer operando (resultado de contaje) es
BCD (0000 hasta 9999) en lugar de binario (0000 hasta FFFF hexadecimal).

Nota La operacin de los indicadores de condicin difiere de las siguientes mane-


ras. Consulte la descripcin de los indicadores de condicin de cada instruc-
cin para obtener informacin ms detallada sobre el particular.
El indicador de error se pondr en ON si los datos de los operandos men-
cionados anteriormente no son BCD.
Para DISTC(566) se ha aadido la operacin de los indicadores de condi-
cin para la operacin de escritura en pila.
Para COLLC(567) se ha aadido la operacin de los indicadores de con-
dicin para la operacin de lectura en pila.

3-35-1 BLOCK TRANSFER: XFERC(565)


Empleo Transfiere el nmero especificado de canales consecutivos.
Smbolo de diagrama de
rels
XFERC(565)

N N: Nmero de canales

S S: Primer canal fuente

D D: Primer canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON XFERC(565)
Se ejecuta una vez en el diferencial ascendente @XFERC(565)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible
reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de canales


Especifica el nmero de canales que han de transmitirse. El rango posible
para N es desde 0000 hasta 9999 BCD.
S: Primer canal fuente
Especifica el primer canal fuente.
15 0
S

hasta hasta
S+(N1)

1201
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

D: Primer canal de destino


Especifica el primer canal de destino.
15 0
D

hasta hasta
D+(N1)

Especificaciones del
operando rea N S D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 a #9999 --- ---
(BCD)
Registros de datos DR0 hasta DR15 ---
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin XFERC(565) copia N canales comenzando por S (S hasta S+(N1)) en los N


canales comenzando por D (D hasta D+(N1)).

Canales
hasta hasta
S+(N1) D+
(N1)

1202
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Es posible el solapamiento de los canales fuente y los canales de destino, as


que XFERC(565) puede llevar a cabo operaciones de desplazamiento de canal.

XFERC
#0010
&10

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de N (el nmero de canales) no son BCD.
error

Nota En los PLC de la serie C, la instruccin BLOCK TRANSFER (XFER) causar


que el indicador de error se ponga en ON si el contenido de un canal DM
direccionado indirectamente (*DM) no es BCD o si se excede el lmite del
rea DM. XFERC(565) no causar que el indicador de error se ponga en ON
en estos casos.

Precauciones Asegrese de que los canales fuente (S hasta S+N1) y los canales de des-
tino (D hasta D+N1) no excedan el final de rea de datos.
Ser necesario algn tiempo para finalizar la operacin de XFERC(565)
cuando se transfiere un gran nmero de canales. En este caso, la transferen-
cia mediante la instruccin XFERC(565) puede no completarse si se produce
una interrupcin de la alimentacin durante la ejecucin de la instruccin.
El contenido de N debe ser BCD. Si N no es BCD se producir un error y el
indicador de error se pondr en ON.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, los 10 canales


desde D00100 hasta D00109 se copian en D00200 hasta D00209.

XFERC
#0010

10
canales

3-35-2 SINGLE WORD DISTRIBUTE: DISTC(566)


Empleo Transfiere el canal fuente a un canal de destino, que se calcula aadiendo un
valor de desplazamiento a la direccin base.

Smbolo de diagrama de
rels
DISTC(566)

S S: Canal fuente

Bs Bs: Direccin base de destino

Of Of: Desplazamiento

1203
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON DISTC(566)
Se ejecuta una vez en el diferencial ascendente @DISTC(566)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos Bs: Direccin base de destino


Especifica la direccin base de destino: El desplazamiento se aade a esta
direccin para calcular el canal de destino.
Of: Desplazamiento
Operacin de distribucin de datos (0000 hasta 7999 BCD)
Este valor se aade a la direccin base para calcular el canal de destino.
El desplazamiento puede ser cualquier valor desde 0000 hasta 7999 en
BCD, pero la Bs y la Bs+Of deben estar en el mismo rea de datos.
15 0

Bs
hasta
hasta
Bs+Of

Operacin de escritura en pila (9000 hasta 9999 BCD)


Cuando el dgito de la izquierda de Of es 9, los 3 dgitos de la derecha de
Of especifican el nmero de canales de la pila. El desplazamiento puede
ser cualquier valor desde 9000 hasta 9999 BCD.

Especificaciones del
operando rea S Bs Of
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959 A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM @ D00000 hasta @ D32767
indirectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM *D00000 hasta *D32767
indirectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta --- #0000 hasta #7999
#FFFF (binario) para distribucin
#9000 hasta #9999
para operacin en pila

1204
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

rea S Bs Of
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento ,IR0 hasta ,IR15
indirecto utilizando 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
registros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Operacin de distribucin de datos


DISTC(566) copia S al canal destino calculado aadiendo Of a Bs. Se puede
utilizar la misma instruccin DISTC(566) para distribuir el canal fuente a
varios canales del rea de datos con slo cambiar el valor de Of.

S Bs Of

Bs+n

Operacin de escritura en pila


Cuando el dgito de la izquierda (bits 12 hasta 15) de Of es 9 BCD,
DISTC(566) opera en una pila desde Bs hasta Bs+Of-9000. La direccin
base de destino (Bs) contiene el puntero de la pila y el resto de los canales de
la pila contienen los datos de la pila.
DISTC(566) copia S al canal de destino calculado aadiendo el puntero de la
pila (contenido de Bs) + 1 a la direccin Bs. Se puede utilizar la misma ins-
truccin DISTC(566) para distribuir el canal fuente a varios canales del rea
de datos con slo cambiar el valor de Of.
S se copia a:
Bs + puntero de pila +1.
rea de pila
S
Puntero
Bs de pila Of 9 m
Bs+1
Bs+ +1 m Tamao del
Datos canales
del rea rea de pila
de pila

Bs+(m-1)

Cada vez que el contenido de S se copia a un canal de rea de datos de la


pila, el puntero de la pila de Bs aumenta automticamente en +1.
Nota Use COLLC(567) para leer datos apilados del rea de pila.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si se especifica operacin de escritura en pila, pero
error los datos del puntero de pila de Bs no son BCD.
ON si se especifica operacin de escritura en pila y el
puntero de la pila indica un canal que excede el rea de
datos de la pila.
Indicador de = ON si los datos de origen son 0000.
igual OFF en el resto de los casos.

1205
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Nota En los PLC de la serie C, la instruccin SINGLE WORD DISTRIBUTE (DIST)


causar que el indicador de error se ponga en ON si el contenido de un canal
DM direccionado indirectamente (*DM) no es BCD o si se excede el lmite del
rea DM. DISTC(566) no causar que el indicador de error se ponga en ON
en estos casos.

Precauciones Una vez se ha ejecutado DISTC(566) con operacin de escritura en pila para
asignar un rea de pila, especifique siempre la misma longitud de rea de pila
en las instrucciones DISTC(566) subsecuentes. La operacin no ser fiable si
se especifica un tamao de rea de pila diferente en las instrucciones
DISTC(566) posteriores.
Asegrese de que el desplazamiento o el tamao de pila especificado por Of
no excede el final del rea de datos cuando se aaden a Bs.

Ejemplos Operacin de distribucin de datos


El byte de la izquierda D00300 es 0, as que DISTC(566) lleva a cabo la ope-
racin de distribucin de datos.
Cuando CIO 000000 est en ON en el siguiente ejemplo, los contenidos de
D00100 se copian a D00210 (D00200 + 10) si el contenido de D00300 es
0010 BCD. El contenido de D00100 puede copiarse a otros canales cam-
biando el desplazamiento de D00300.

S: D00100
DISTC
Copiado mediante DISTC(566).
S
Bs Of:
Bs: 0 0 10
Of
BCD de 4 dgitos
Desplazamiento +10 canales
D00210

Operacin de escritura en pila


El byte de la izquierda de Of es 9, as que DISTC(566) lleva a cabo la opera-
cin de escritura en pila.
Cuando CIO 000000 est en ON en el siguiente ejemplo, DISTC(566) asigna
un rea de pila de 10 canales (ya que los 3 dgitos de la derecha de Of son
#010) entre D00200 y D00209. Al mismo tiempo, los contenidos de D00100
se copiarn al canal calculado aadiendo D00200 + puntero de pila +1. Final-
mente, el puntero de pila aumenta en +1.
Of 9 010
S: D00100 000F
Pila asignada Despus de la 1 ejecucin Despus de la 2 ejecucin
Escritura
rea de pila en pila rea de pila rea de pila

Puntero
DISTC Bs: D00200 de pila #0001 #0002
S D00100 D00201 000F 000F
Datos
Bs D00260 del rea 000F
de pila
Of #9010
D00209

3-35-3 DATA COLLECT: COLLC(567)


Empleo Transfiere el canal fuente (que se calcula aadiendo un valor de desplaza-
miento a la direccin base) al canal de destino.

1206
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Smbolo de diagrama de
rels
COLL(081)

Bs Bs: Direccin base de fuente

Of Of: Desplazamiento

D D: Canal de destino

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON COLLC(567)
Se ejecuta una vez en el diferencial ascendente @COLLC(567)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos Bs: Direccin base de origen


Especifica la direccin base de origen El desplazamiento se aade a esta
direccin para calcular el canal fuente.
Of: Desplazamiento
El valor de Of determina la operacin de COLLC(567).
Operacin de recogida de datos (Of = 0000 hasta 7999 BCD)
El valor de Of se aade a la direccin base para calcular el canal fuente.
El desplazamiento puede ser cualquier valor desde 0000 hasta 7999 en
BCD, pero la Bs y la Bs+Of deben estar en el mismo rea de datos.
15 0

Bs
hasta
hasta
Bs+Of

Operacin de lectura de pila LIFO (Of = 8000 hasta 8999 BCD)


Si el dgito de la izquierda de Of es 8, COLLC(567) operar como una
instruccin de pila LIFO. La pila comienza en Bs con una longitud especi-
ficada en los 3 dgitos de la derecha de Of.
Operacin de lectura de pila FIFO (Of = 9000 hasta 9999 BCD)
Si el dgito de la izquierda de Of es 9, COLLC(567) operar como una
instruccin de pila FIFO. La pila comienza en Bs con una longitud especi-
ficada en los 3 dgitos de la derecha de Of.

Especificaciones del
operando rea Bs Of D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767

1207
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

rea Bs Of D
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes --- #0000 hasta #7999 ---
para recogida de
datos
#8000 hasta #8999
para lectura de pila
LIFO
#9000 hasta #9999
para lectura de pila
FIFO
Registros de datos --- DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin Dependiendo del valor de Of, COLLC(567) operar como una instruccin de
recogida de datos, una instruccin de pila FIFO o una instruccin de pila LIFO.
Operacin de recogida de datos (Of = 0000 hasta 7999 BCD)
COLLC(567) copia el contenido del canal fuente (resultado de sumar Of a Bs)
al canal destino. Tambin se puede utilizar la misma instruccin COLLC(567)
para recoger los datos de varios canales fuente del rea de datos cambiando
el valor de Of.

Bs Of

Bs+n

Operacin de lectura de pila LIFO (Of = 8000 hasta 8999 BCD)


Si el dgito de la izquierda de Of es 8, COLLC(567) operar como una instruc-
cin de pila LIFO (last in, first out ltimo en entrar, primero en salir). En este
caso los 3 dgitos de la derecha de Of especifican el tamao de la pila.
COLLC(567) copia los datos registrados ms recientemente en la pila a D. El
canal fuente es Bs + puntero de pila (contenido de Bs). Una vez se han
copiado los datos el puntero de pila disminuye en 1.

1208
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Los datos se copian


de Bs + puntero de
pila. rea de pila
8 m
Puntero
Bs de pila

Bs+1 m Tamao del


canales rea de pila
Datos
del rea
de pila

Nota Use DISTC(566) para escribir datos apilados en el rea de pila.


Operacin de lectura de pila FIFO (Of = 9000 hasta 9999 BCD)
Si el dgito de la izquierda de Of es 9, COLLC(567) operar como una instruc-
cin de pila FIFO (first in, first out primero en entrar, primero en salir). En
este caso los 3 dgitos de la derecha de Of especifican el tamao de la pila.
COLLC(567) copia los datos de canal ms antiguo registrado de la pila a D. El
canal fuente es Bs + 1. Una vez se han copiado los datos el puntero de pila
disminuye en 1.
Se copian datos de
Bs + 1. rea de pila

Puntero
Bs de pila Of 9 m
Bs+1
m Tamao del
Datos canales
S1+ del rea rea de pila
de pila

Nota Use DISTC(566) para escribir datos apilados en el rea de pila.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los datos de desplazamiento de OF no son BCD.
error ON si se especifica operacin de pila LIFO o FIFO, pero
los datos del puntero de pila de Bs no son BCD.
ON si se especifica operacin de pila LIFO o FIFO y el
puntero de la pila indica un canal que excede el rea de
datos de la pila.
OFF en el resto de los casos.
Indicador de = ON si los datos de origen son 0000.
igual OFF en el resto de los casos.

Nota En los PLC de la serie C, la instruccin DATA COLLECT (COLL) causar que
el indicador de error se ponga en ON si el contenido de un canal DM direccio-
nado indirectamente (*DM) no es BCD o si se excede el lmite del rea DM.
COLLC(567) no causar que el indicador de error se ponga en ON en estos
casos.

Precauciones Una vez se ha ejecutado DISTC(566) con operacin de escritura en pila para
asignar un rea de pila, especifique siempre la misma longitud de rea de pila en
las instrucciones COLLC(567). La operacin no ser fiable si se especifica un
tamao de rea de pila diferente en las instrucciones COLLC(567) posteriores.
Asegrese de que el desplazamiento o el tamao de pila especificado por Of
no excede el final del rea de datos cuando se aaden a Bs.
Los datos de desplazamiento de Of deben ser BCD.

1209
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Ejemplos Operacin de recogida de datos


El byte de la izquierda D00200 es 0, as que COLLC(567)) lleva a cabo la
operacin de recogida de datos.
Cuando CIO 000000 est en ON en el siguiente ejemplo, los contenidos de
D00110 (D00100 + 10) se copian a D00300 si el contenido de D00200 es 10
(0010 BCD). El contenido de otros canales puede copiarse a D00300 cam-
biando el desplazamiento de D00200.

D00200 0 0 1 0
COLLC
Bs: D00100
Bs BCD de 4 dgitos
D00101
Of
Desplazamiento +10 canales
D
D00110 Copiado mediante COLLC(567.

Operacin de pila FIFO


El byte de la izquierda de Of es 9, as que COLLC(567) lleva a cabo la opera-
cin de pila FIFO.
Cuando CIO 000000 est en ON en el siguiente ejemplo, COLLC(567) asigna
un rea de pila de 10 canales (ya que los 3 dgitos de la derecha de Of son
#010) entre D00100 y D00109. Al mismo tiempo los contenidos de D00101
(Bs +1) se copian a D00300. Finalmente, el puntero de la pila disminuye en 1.
Of 9 010

Pila asignada Despus de la 1 ejecucin Despus de la 2 ejecucin


FIFO
rea de pila Leer rea de pila rea de pila

Puntero
COLLC D00100 0002 de pila 0001 0000
Bs D00100 D00101 1234 5678
Datos
Of #9010 D00102 5678 del rea
de pila
D D00300
D00109

D00300 1234 5678

Operacin de pila LIFO


El byte de la izquierda de Of es 8, as que COLLC(567) lleva a cabo la opera-
cin de pila LIFO.
Cuando CIO 000000 est en ON en el siguiente ejemplo, COLLC(567) asigna
un rea de pila de 10 canales (ya que los 3 dgitos de la derecha de Of son
#010) entre D00100 y D00109. Al mismo tiempo los contenidos del canal
fuente (D00100 + puntero de pila) se copian a D00300. Finalmente, el pun-
tero de la pila disminuye en 1.
Of 8 010

Pila asignada Despus de la 1 ejecucin Despus de la 2 ejecucin


LIFO
rea de pila Leer rea de pila rea de pila

Puntero
COLLC D00100 0002 de pila 0001 0000
Bs D00100 D00101 1234 1234
Datos
Of #8010 D00102 5678 del rea
de pila
D D00300
D00109

D00300 5678 1234

1210
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

3-35-4 MOVE BIT: MOVBC(568)


Empleo Transfiere el bit especificado.

Smbolo de diagrama de
rels
MOVBC(568)

S S: Canal o datos fuente

C C: Canal de control

D D: Canal de destino
Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON MOVBC(568)
Se ejecuta una vez en el diferencial ascendente @MOVBC(568)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos C: Canal de control


Los dos dgitos de la derecha de C indican qu bit de S es el bit fuente y los
dos de la izquierda de C indican el bit destino de D.
15 8 7 0
C m n

Bit fuente: 00 hasta


15 (BCD de dos
dgitos)
Bit de destino: 00 hasta
15 (BCD de dos dgitos)

Especificaciones del
operando rea S C D
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0000 hasta Slo valores ---
#FFFF (binario) especificados

1211
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

rea S C D
Registros de datos DR0 hasta DR15
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin MOVBC(568) copia el bit especificado (n) de S al bit especificado (m) de D. El


resto de los bits del canal de destino permanecen sin cambios.

Nota Puede especificarse el mismo canal para S y D para copiar un bit dentro de
un canal.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si los dos dgitos de la izquierda y de la derecha de C no
error son BCD o fuera del rango especificado de 00 hasta 15.
OFF en el resto de los casos.

Nota En los PLC de la serie C, la instruccin MOVE BIT (MOVB) causar que el indi-
cador de error se ponga en ON si el contenido de un canal DM direccionado indi-
rectamente (*DM) no es BCD o si se excede el lmite del rea DM. MOVBC(568)
no causar que el indicador de error se ponga en ON en estos casos.

Ejemplos Cuando CIO 000000 est en ON en el siguiente ejemplo, el 5o bit del canal
fuente (CIO 0200) se copia al 12avo bit del canal de destino (CIO 0300) de
acuerdo al valor del canal de control de 1205.

1 2 0 5

3-35-5 BIT COUNTER: BCNTC(621)


Empleo Cuenta el nmero total de bits en ON de los canales especificados.

1212
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Smbolo de diagrama de
rels
BCNTC(621)

N N: Nmero de canales

S S: Primer canal fuente

R R: Canal de resultado

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON BCNTC(621)
Se ejecuta una vez en el diferencial ascendente @BCNTC(621)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa de reas de programa de Subrutinas Tareas de
bloques pasos interrupcin
OK OK OK OK

Operandos N: Nmero de canales


El nmero de canales debe ser desde 0001 hasta 9999 (BCD)
S: Primer canal fuente
S y S+(N1) deben estar en el mismo rea de datos.

Especificaciones del
operando rea N S R
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959 A448 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes #0001 hasta ---
#9999 (BCD)
Registros de datos DR0 hasta DR15 --- DR0 hasta DR15

1213
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

rea N S R
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin BCNTC(621) cuenta el nmero total de bits que estn en ON en todos los
canales comprendidos entre S y S+(N-1) y entrega el resultado BCD en R.

Canales N
Cuenta el nmero
hasta de bits en ON.

S+(N1) Resultado BCD

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si N no est dentro del rango de 0001 hasta 9999 BCD.
error ON si el resultado excede 9999 BCD.
OFF en el resto de los casos.
Indicador de = ON cuando el resultado es 0000.
igual OFF en el resto de los casos.

Nota En los PLC de la serie C, la instruccin BIT COUNTER (BITC) causar que el
indicador de error se ponga en ON si el contenido de un canal DM direccio-
nado indirectamente (*DM) no es BCD o si se excede el lmite del rea DM.
BCNTC(621) no causar que el indicador de error se ponga en ON en estos
casos.

Precauciones Se producir un error si N no es BCD entre 0001 y 9999, o si el resultado


excede 9.999.

Ejemplo Cuando CIO 000000 est en ON en el siguiente ejemplo, BCNTC(621)


cuenta el nmero total de bits en ON en los 10 canales de CIO 0100 hasta
CIO 0109 y escribe el resultado en D00100.

000000
BCNTC Cuenta el nmero de
N #0010 bits en ON (35).
hasta hasta
S D100
R D00100
R:D00100 3 5 0035 BCD

3-35-6 GET VARIABLE ID: GETID(286)


Empleo Transmite el tipo de variable de comando FINS (rea de datos) y la direccin
de canal de la variable o direccin especificada. Normalmente, esta instruc-
cin se utiliza para obtener la direccin asignada de una variable en un blo-
que de funciones.

1214
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Smbolo de diagrama de
rels
GETID(286)

S S: Datos de origen

D1 D1: Cdigo de variable

D2 D2: Direccin de canal

Variaciones
Variaciones Se ejecuta en cada ciclo con condicin ON GETID(286)
Se ejecuta una vez en el diferencial ascendente @GETID(286)
Se ejecuta una vez en el diferencial descendente Incompatible
Especificacin de refresco inmediato Incompatible

reas de programa
aplicables reas de programa reas de programa Subrutinas Tareas de
de bloques de pasos interrupcin
OK OK OK OK

Operandos S: Datos de origen


Especifica la variable o direccin para la que se recuperar el tipo de variable
y la direccin de canal.
D1: Cdigo de variable
Contiene el cdigo de tipo de variable FINS (cdigo de rea de datos) de los
datos de origen.
D2: Direccin de canal
Contiene la direccin de canal de los datos de origen en hexdecimal de 4 dgitos.

Especificaciones del
operando rea S D1 D2
rea CIO CIO 0000 hasta CIO 6143
rea de Trabajo W000 hasta W511
rea de bit en Espera H000 hasta H511
rea Bit Auxiliar A000 hasta A959
rea Temporizador T0000 hasta T4095
rea Contador C0000 hasta C4095
rea DM D00000 hasta D32767
rea EM sin banco E00000 hasta E32767
rea EM con Banco En_00000 hasta En_32767
(n = 0 a C)
Direcciones DM/EM indi- @ D00000 hasta @ D32767
rectas en binario @ E00000 hasta @ E32767
@ En_00000 hasta @ En_32767
(n = 0 a C)
Direcciones DM/EM indi- *D00000 hasta *D32767
rectas en BCD *E00000 hasta *E32767
*En_00000 hasta *En_32767
(n = 0 a C)
Constantes ---
Registros de datos DR0 hasta DR15

1215
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

rea S D1 D2
Registros de ndice ---
Direccionamiento indi- ,IR0 hasta ,IR15
recto utilizando regis- 2048 hasta +2047 ,IR0 hasta 2048 hasta +2047 ,IR15
tros de ndice
DR0 hasta DR15, IR0 hasta IR15
,IR0+(++) hasta ,IR15+(++)
,( )IR0 hasta, ( )IR15

Descripcin GETID(286) recupera la direccin de rea de datos de la variable o direccin


de origen especificada, entrega el cdigo de rea de datos a D1 en hexadeci-
mal de 4 dgitos, y entrega el nmero de direccin de canal a D2 en hexade-
cimal de 4 dgitos.
La siguiente tabla muestra los cdigos de tipo de variable (rea de datos) y
los rangos de direccin correspondientes para las reas de datos del PLC.
rea de datos Volu- Cdigo de rea de Direccin
men de datos (Se entrega (Se entrega a D2).
datos a D1).
rea CIO CIO Canal 00B0 hexadecimal 0000 hasta 17FF
hexadecimal
(0000 hasta 6143)
rea de Trabajo W 00B1 hexadecimal 0000 hasta 01FF
hexadecimal
(000 hasta 511)
rea de bit en H 00B2 hexadecimal 0000 hasta 01FF
Espera hexadecimal
(000 hasta 511)
rea Bit Auxiliar 00B3 hexadecimal 0000 hasta 03BF
hexadecimal
(000 hasta 959)
rea DM 0082 hexadecimal 0000 hasta 7FFF
hexadecimal
(00000 hasta 32767)
rea EM En_ 00A0 hasta 00AC 0000 hasta 7FFF
(Banco especfi- (n = 0 a C) hexadecimal hexadecimal
cado) (00000 hasta 32767)
rea EM E 0098 hexadecimal 0000 hasta 7FFF
(Banco actual) hexadecimal
(00000 hasta 32767)

A las variables de los bloques de funcin se les asignan automticamente


direcciones mediante CX-Programmer Ver. 5.0 y superiores, a no ser que se
utilice especificacin AT. Por ejemplo, si es necesario especificar indirecta-
mente las configuraciones extendidas de parmetros de una Unidad especial
como una Unidad Motion Control y se usa una variable al comienzo del rea
de configuraciones ampliadas de parmetros, debe configurarse la direccin
de esa variable. En este caso puede utilizarse GETID(286) para recuperar la
direccin de rea de datos de la variable.

Indicadores
Nombre Etiqueta Operacin
Indicador de ER ON si S no est dentro del rango permitido.
error

1216
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

Ejemplo
Funcionamiento normal
rea DM asignada a la rea de configuraciones
Unidad Motion Control extendidas de parmetros.
D00100
#0082
&100 Especifi-
cacin
indirecta

La direccin inicial del rea de configuraciones extendidas


de parmetros es especificada por el tipo del cdigo de vari-
able del comando FINS (rea de datos) y la direccin de
canal. En este ejemplo #0082 especifica el rea DM y &100
especifica un desplazamiento de 100 canales desde el inicio
del rea.

Utilizando bloques de funcin


rea DM asignada a la rea de configuraciones
Unidad Motion Control extendidas de parmetros.
Variable A D00200 Datos
m #0082
m+1 &200
La direccin del rea de datos
de la variable A se recupera
mediante GETID(286).

GETID
A
m
m+1

1217
Instrucciones de conversin de modelo (Unidades Ver. 3.0 o superior) Seccin 3-35

1218
SECCIN 4
Tiempos de ejecucin de instruccin y nmero de pasos

Esta seccin proporciona los tiempos de ejecucin de las instrucciones y el nmero de pasos para cada instruccin de la
serie CS/CJ.

4-1 Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS . . . . . . . . . . . . . . . . . . . . . 1221


4-1-1 Instrucciones de la entrada de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1222
4-1-2 Instrucciones de la salida de secuencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1223
4-1-3 Instrucciones del control de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1224
4-1-4 Instrucciones de temporizador y contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1225
4-1-5 Instrucciones de comparacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1226
4-1-6 Instrucciones de movimiento de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1228
4-1-7 Instrucciones de desplazamiento de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1229
4-1-8 Instrucciones de aumento/disminucin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1230
4-1-9 Instrucciones matemticas de smbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1231
4-1-10 Instrucciones de conversin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1233
4-1-11 Instrucciones lgicas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1235
4-1-12 Instrucciones matemticas especiales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1235
4-1-13 Instrucciones matemticas de coma flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1236
4-1-14 Instrucciones de coma flotante de doble precisin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1237
4-1-15 Instrucciones de proceso de datos de tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1238
4-1-16 Instrucciones de control de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1240
4-1-17 Instrucciones de subrutina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1241
4-1-18 Instrucciones de control de interrupcin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1241
4-1-19 Instrucciones de paso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1241
4-1-20 Instrucciones de unidad de E/S bsica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1242
4-1-21 Instrucciones de comunicaciones serie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1243
4-1-22 Instrucciones de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1243
4-1-23 Instrucciones de memoria de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244
4-1-24 Instrucciones de visualizacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244
4-1-25 Instrucciones de reloj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1245
4-1-26 Instrucciones de depuracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1245
4-1-27 Instrucciones de diagnstico de fallo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1245
4-1-28 Otras instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1246
4-1-29 Instrucciones de programacin de bloques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1246
4-1-30 Instrucciones de proceso de cadenas de texto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1248
4-1-31 Instrucciones de control de tareas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1249
4-1-32 Instrucciones de conversin de modelo (CPUs Ver. 3.0 o superior solamente) . . . . . . . . . 1249
4-1-33 Instrucciones de bloque de funciones especiales (CPUs Ver. 3.0 o superior solamente) . . 1250
4-2 Tiempos de ejecucin de instruccin y nmero de pasos de la serie CJ. . . . . . . . . . . . . . . . . . . . . . 1250
4-2-1 Instrucciones de la entrada de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1251
4-2-2 Instrucciones de la salida de secuencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1252
4-2-3 Instrucciones del control de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1253

1219
4-2-4 Instrucciones de temporizador y contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1254
4-2-5 Instrucciones de comparacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1255
4-2-6 Instrucciones de movimiento de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1257
4-2-7 Instrucciones de desplazamiento de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1258
4-2-8 Instrucciones de aumento/disminucin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1260
4-2-9 Instrucciones matemticas de smbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1260
4-2-10 Instrucciones de conversin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1262
4-2-11 Instrucciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1264
4-2-12 Instrucciones matemticas especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1265
4-2-13 Instrucciones matemticas de coma flotante. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1265
4-2-14 Instrucciones de coma flotante de doble precisin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1267
4-2-15 Instrucciones de proceso de datos de tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1268
4-2-16 Instrucciones de control de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1269
4-2-17 Instrucciones de subrutina. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1270
4-2-18 Instrucciones de control de interrupcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1271
4-2-19 Instrucciones de salida de impulsos, contador de alta velocidad . . . . . . . . . . . . . . . . . . . 1271
4-2-20 Instrucciones de paso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1273
4-2-21 Instrucciones de unidad de E/S bsica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1273
4-2-22 Instrucciones de comunicaciones serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1274
4-2-23 Instrucciones de red. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1275
4-2-24 Instrucciones de memoria de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1276
4-2-25 Instrucciones de visualizacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1276
4-2-26 Instrucciones de reloj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1276
4-2-27 Instrucciones de depuracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1277
4-2-28 Instrucciones de diagnstico de fallo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1277
4-2-29 Otras instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1278
4-2-30 Instrucciones de programacin de bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1278
4-2-31 Instrucciones de proceso de cadenas de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1280
4-2-32 Instrucciones de control de tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1281
4-2-33 Instrucciones de conversin de modelo (CPUs Ver. 3.0 o superior solamente) . . . . . . . . 1281
4-2-34 Instrucciones de bloque de funciones especiales (CPUs Ver. 3.0 o superior solamente) . . . . . 1282
4-2-35 Nmero de pasos del programa de bloque de funciones
(CPUs con versin de unidad 3.0 o posterior) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1282
4-2-36 Directrices para la conversin de capacidades de programa de los
PLC OMRON anteriores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1283
4-2-37 Tiempo de ejecucin de instancia de bloque de funciones
(CPUs con versin de unidad 3.0 o posterior) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1284

1220
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1 Tiempos de ejecucin de instruccin y nmero de pasos


de la serie CS
La siguiente tabla presenta una lista de los tiempos de ejecucin de todas las
instrucciones disponibles para los PLC de la serie CS.
El tiempo de ejecucin total de instrucciones dentro de un programa de usua-
rio completo es el tiempo de procesamiento de la ejecucin del programa al
calcular el tiempo de ciclo (ver nota).
Nota Los programas de usuario tienen asignadas tareas que se pueden ejecutar
dentro de las tareas cclicas, y tambin dentro de tareas de interrupcin que
cumplen las condiciones de interrupcin.
Los tiempos de ejecucin de la mayora de las instrucciones difieren depen-
diendo de la CPU utilizada (CS1@-CPU6@H, CS1@-CPU6@, CS1@-
CPU4@H, CS1@-CPU4@) y de las condiciones existentes al ejecutar la ins-
truccin. La lnea superior de cada instruccin de la siguiente tabla indica el
tiempo mnimo necesario para procesar la instruccin y las condiciones de
ejecucin necesarias; la lnea inferior indica el tiempo mximo y las condicio-
nes de ejecucin necesarias para procesar la instruccin.
El tiempo de ejecucin puede tambin variar si la condicin de ejecucin est
en OFF.
Por otra parte, la siguiente tabla muestra tambin la longitud de cada instruc-
cin, en la columna Longitud (pasos). El nmero de pasos necesarios en el
rea del programa de usuario para cada una de las instrucciones de la serie
CS vara entre 1 y 7 pasos, en funcin de la instruccin y de los operandos
utilizados con la misma. El nmero de pasos de un programa no es igual al
nmero de instrucciones.

Nota 1. La capacidad de programa de los PLC de la serie CS se mide en pasos,


en tanto que la capacidad de los PLC OMRON anteriores (series C y CV,
por ejemplo), se meda en palabras. Bsicamente, 1 paso equivale a 1 pa-
labra. No obstante, la cantidad de memoria necesaria para cada instruc-
cin es diferente en el caso de algunas las instrucciones de la serie CS.
Por ello, se producirn imprecisiones en caso de realizarse una conversin
de capacidad de un programa de usuario de otro PLC a la de un PLC de
la serie CS, basndose en el supuesto de que 1 palabra equivale a 1 paso.
Consulte en la informacin que aparece al final de 4-1 Tiempos de ejecu-
cin de instruccin y nmero de pasos de la serie CS las directrices de
conversin de capacidades de programa de los antiguos PLC de OMRON.
La mayora de las instrucciones se admiten en forma de diferencial (lo que
se indica con , , @ y %). La especificacin del diferencial aumentar los
tiempos de ejecucin en las siguientes cantidades.
Smbolo CPUs CS1-H CPUs CS1
CPU6@H CPU4@H CPU6@ CPU4@
o +0,24 +0,32 +0,41 +0,45
@o% +0,24 +0,32 +0,29 +0,33

2. Utilice los siguientes tiempos como gua si las instrucciones no se ejecutan.


CPUs CS1-H CPUs CS1
CPU6@H CPU4@H CPU6@ CPU4@
Aprox. 0,1 Aprox. 0,2 Aprox. de 0,1 a 0,3 Aprox. de 0,2 a 0,4

1221
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-1 Instrucciones de la entrada de secuencia


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU6@H CPU4@H CPU6@ CPU4@
LOAD LD --- 1 0,02 0,04 0,04 0,08 ---
!LD --- 2 +21,14 +21,16 +21,16 +21,16 Incremento para
la serie CS
+45,1 +45,1 +45,1 +45,1 Incremento para
C200H
LOAD NOT LD NOT --- 1 0,02 0,04 0,04 0,08 ---
!LD NOT --- 2 +21,14 +21,16 +21,16 +21,16 Incremento para
la serie CS
+45,1 +45,1 +45,1 +45,1 Incremento para
C200H
AND AND --- 1 0,02 0,04 0,04 0,08 ---
!AND --- 2 +21,14 +21,16 +21,16 +21,16 Incremento para
la serie CS
+45,1 +45,1 +45,1 +45,1 Incremento para
C200H
AND NOT AND NOT --- 1 0,02 0,04 0,04 0,08 ---
!AND NOT --- 2 +21,14 +21,16 +21,16 +21,16 Incremento para
la serie CS
+45,1 +45,1 +45,1 +45,1 Incremento para
C200H
OR OR --- 1 0,02 0,04 0,04 0,08 ---
!OR --- 2 +21,14 +21,16 +21,16 +21,16 Incremento para
la serie CS
+45,1 +45,1 +45,1 +45,1 Incremento para
C200H
OR NOT OR NOT --- 1 0,02 0,04 0,04 0,08 ---
!OR NOT --- 2 +21,14 +21,16 +21,16 +21,16 Incremento para
la serie CS
+45,1 +45,1 +45,1 +45,1 Incremento para
C200H
AND LOAD AND LD --- 1 0,02 0,04 0,04 0,08 ---
OR LOAD OR LD --- 1 0,02 0,04 0,04 0,08 ---
NOT NOT 520 1 0,02 0,04 0,04 0,08 ---
CONDITION UP 521 3 0,3 0,42 0,46 0,54 ---
ON
CONDITION DOWN 522 4 0,3 0,42 0,46 0,54 ---
OFF
LOAD BIT LD TST 350 4 0,14 0,24 0,25 0,37 ---
TEST
LOAD BIT LD TSTN 351 4 0,14 0,24 0,25 0,37 ---
TEST NOT
AND BIT AND TSTN 351 4 0,14 0,24 0,25 0,37 ---
TEST NOT
OR BIT TEST OR TST 350 4 0,14 0,24 0,25 0,37 ---
OR BIT TEST OR TSTN 351 4 0,14 0,24 0,25 0,37 ---
NOT

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

1222
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-2 Instrucciones de la salida de secuencia


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
OUTPUT OUT --- 1 0,02 0,04 0,17 0,21 ---
!OUT --- 2 +21,37 +21,37 +21,37 +21,37 Incremento para
la serie CS
+49,3 +49,3 +49,3 +49,3 Incremento para
C200H
OUTPUT NOT OUT NOT --- 1 0,02 0,04 0,17 0,21 ---
!OUT NOT --- 2 +21,37 +21,37 +21,37 +21,37 Incremento para
la serie CS
+49,3 +49,3 +49,3 +49,3 Incremento para
C200H
KEEP KEEP 011 1 0,06 0,08 0,25 0,29 ---
DIFFEREN- DIFU 013 2 0,24 0,40 0,46 0,54 ---
TIATE UP
DIFFEREN- DIFD 014 2 0,24 0,40 0,46 0,54 ---
TIATE DOWN
SET SET --- 1 0,02 0,06 0,17 0,21 ---
!SET --- 2 +21,37 +21,37 +21,37 +21,37 Incremento para
la serie CS
+49,3 +49,3 +49,3 +49,3 Incremento para
C200H
RESET RSET --- 1 0,02 0,06 0,17 0,21 Canal especifi-
cado
!RSET --- 2 +21,37 +21,37 +21,37 +21,37 Incremento para
la serie CS
+49,3 +49,3 +49,3 +49,3 Incremento para
C200H
MULTIPLE SETA 530 4 5,8 6,1 7,8 7,8 Con configura-
BIT SET cin de 1 bit
25,7 27,2 38,8 38,8 Con configura-
cin de
1000 bits
MULTIPLE RSTA 531 4 5,7 6,1 7,8 7,8 Con reconfigu-
BIT RESET racin de 1 bit
25,8 27,1 38,8 38,8 Con reconfigu-
racin de 1000
bits
SINGLE BIT SETB 532 2 0,24 0,34 --- --- ---
SET !SETB 3 +21,44 +21,54 --- --- ---
SINGLE BIT RSTB 534 2 0,24 0,34 --- --- ---
RESET !RSTB 3 +21,44 +21,54 --- --- ---
SINGLE BIT OUTB 534 2 0,22 0,32 --- --- ---
OUTPUT !OUTB 3 +21,42 +21,52 --- --- ---

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

1223
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-3 Instrucciones del control de secuencia


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
END END 001 1 5,5 6,0 4,0 4,0 ---
NO OPERA- NOP 000 1 0,02 0,04 0,08 0,12 ---
TION
INTERLOCK IL 002 1 0,06 0,06 0,12 0,12 ---
INTERLOCK ILC 003 1 0,06 0,06 0,12 0,12 ---
CLEAR
MULTI- MILH 517 3 6,1 6,5 --- --- Durante el blo-
INTERLOCK queo
DIFFEREN- 7,5 7,9 --- --- No durante el
TIATION bloqueo y si el
HOLD bloqueo no est
(Ver nota 2). configurado
8,9 9,7 --- --- No durante el
bloqueo y si el
bloqueo est
configurado
MULTI- MILR 518 3 6,1 6,5 --- --- Durante el blo-
INTERLOCK queo
DIFFEREN- 7,5 7,9 --- --- No durante el
TIATION bloqueo y si el
RELEASE bloqueo no est
(Ver nota 2.) configurado
8,9 9,7 --- --- No durante el
bloqueo y si el
bloqueo est
configurado
MULTI- MILC 519 2 5,0 5,6 --- --- Bloqueo no
INTERLOCK borrado
CLEAR 5,7 6,2 --- --- Bloqueo
(Ver nota 2). borrado
JUMP JMP 004 2 0,38 0,48 8,1 8,1 ---
JUMP END JME 005 2 --- --- --- --- ---
CONDITIO- CJP 510 2 0,38 0,48 7,4 7,4 Si se cumple la
NAL JUMP condicin JMP
CONDITIO- CJPN 511 2 0,38 0,48 8,5 8,5 Si se cumple la
NAL JUMP condicin JMP
NOT
MULTIPLE JMP0 515 1 0,06 0,06 0,12 0,12 ---
JUMP
MULTIPLE JME0 516 1 0,06 0,06 0,12 0,12 ---
JUMP END
FOR LOOP FOR 512 2 0,52 0,54 0,12 0,21 Si se designa
una constante
BREAK BREAK 514 1 0,06 0,06 0,12 0,12 ---
LOOP
NEXT LOOP NEXT 513 1 0,18 0,16 0,17 0,17 Si el lazo conti-
na
0,22 0,40 0,12 0,12 Si el lazo fina-
liza

Nota 1. Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.
2. Compatible slo con las CPUs Ver. 2.0 o superior.

1224
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-4 Instrucciones de temporizador y contador


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
TIMER TIM --- 3 0,56 0,88 0,37 0,42 ---
TIMX 550 3 0,56 0,88 --- --- ---
COUNTER CNT --- 3 0,56 0,88 0,37 0,42 ---
CNTX 546 3 0,56 0,88 --- --- ---
HIGH-SPEED TIMH 015 3 0,88 1,14 0,37 0,42 ---
TIMER TIMHX 551 3 0,88 1,14 --- --- ---
ONE-MS TMHH 540 3 0,86 1,12 0,37 0,42 ---
TIMER TMHHX 552 3 0,86 1,12 --- --- ---
ACCUMULA- TTIM 087 3 16,1 17,0 21,4 21,4 ---
TIVE TIMER 10,9 11,4 14,8 14,8 Al poner a cero
8,5 8,7 10,7 10,7 Al bloquear
TTIMX 555 3 16,1 17,0 --- --- ---
10,9 11,4 --- --- Al poner a cero
8,5 8,7 --- --- Al bloquear
LONG TIMER TIML 542 4 7,6 10,0 12,8 12,8 ---
6,2 6,5 7,8 7,8 Al bloquear
TIMLX 553 4 7,6 10,0 --- --- ---
6,2 6,5 --- --- Al bloquear
MULTI- MTIM 543 4 20,9 23,3 26,0 26,0 ---
OUTPUT 5,6 5,8 7,8 7,8 Al poner a cero
TIMER
MTIMX 554 4 20,9 23,3 --- --- ---
5,6 5,8 --- --- Al poner a cero
REVERSIBLE CNTR 012 3 16,9 19,0 20,9 20,9 ---
COUNTER CNTRX 548 3 16,9 19,0 --- --- ---
RESET CNR 545 3 9,9 10,6 13,9 13,9 Al resetear 1
TIMER/ canal
COUNTER 4,16 ms 4,16 ms 5,42 ms 5,42 ms Al resetear 1000
canales
CNRX 547 3 9,9 10,6 --- --- Al resetear 1
canal
4,16 ms 4,16 ms --- --- Al resetear 1000
canales

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

1225
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-5 Instrucciones de comparacin


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
Instrucciones LD, AND, 300 4 0,10 0,16 0,21 0,37 ---
de compara- OR +=
cin de entrada LD, AND, 305
(sin signo) OR +<>
LD, AND, 310
OR +<
LD, AND, 315
OR +<=
LD, AND, 320
OR +>
LD, AND, 325
OR +>=
Instrucciones LD, AND, 301 4 0,10 0,16 0,29 0,54 ---
de compara- OR +=+L
cin de entrada LD, AND, 306
(doble, sin OR +<>+L
signo)
LD, AND, 311
OR +<+L
LD, AND, 316
OR +<=+L
LD, AND, 321
OR +>+L
LD, AND, 326
OR +>=+L
Instrucciones LD, AND, 302 4 0,10 0,16 6,50 6,50 ---
de compara- OR +=+S
cin de entrada LD, AND, 307
(con signo) OR +<>+S
LD, AND, 312
OR +<+S
LD, AND, 317
OR +<=
LD, AND, 322
OR +>+S
LD, AND, 327
OR +>=+S
Instrucciones LD, AND, 303 4 0,10 0,16 6,50 6,50 ---
de compara- OR +=+SL
cin de entrada LD, AND, 308
(doble, con OR +<>+SL
signo)
LD, AND, 313
OR +<+SL
LD, AND, 318
OR +<=+SL
LD, AND, 323
OR +>+SL
LD, AND, 328
OR +>=+SL

1226
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones


(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
Instrucciones LD, AND, 341 4 25,1 36,4 --- --- Los tiempos de
de compara- OR +DT ejecucin en
cin de tiempo LD, AND, 342 4 25,2 36,4 --- --- ON y en OFF
(Ver nota 2). OR +<>DT son los mis-
mos que los
LD, AND, 343 4 25,2 36,4 --- --- dados a la
OR +<DT izquierda.
LD, AND, 344 4 25,2 36,4 --- ---
OR +<=DT
LD, AND, 345 4 25,1 36,4 --- ---
OR +>DT
LD, AND, 346 4 25,2 36,4 --- ---
OR +>=DT
COMPARE CMP 020 3 0,04 0,04 0,17 0,29 ---
!CMP 020 7 +42,1 +42,1 +42,4 +42,4 Incremento
para la serie
CS
+90,4 +90,4 +90,5 +90,5 Incremento
para C200H
DOUBLE CMPL 060 3 0,08 0,08 0,25 0,46 ---
COMPARE
SIGNED CPS 114 3 0,08 0,08 6,50 6,50 ---
BINARY COM- !CPS 114 7 +35,9 +35,9 +42,4 +42,4 Incremento
PARE para la serie
CS
+84,1 +84,1 +90,5 +90,5 Incremento
para C200H
DOUBLE SIG- CPSL 115 3 0,08 0,08 6,50 6,50 ---
NED BINARY
COMPARE
TABLE COM- TCMP 085 4 14,0 15,2 21,9 21,9 ---
PARE
MULTIPLE MCMP 019 4 20,5 22,8 31,2 31,2 ---
COMPARE
UNSIGNED BCMP 068 4 21,5 23,7 32,6 32,6 ---
BLOCK COM-
PARE
AREA RANGE ZCP 088 3 5,3 5,4 --- --- ---
COMPARE
DOUBLE ZCPL 116 3 5,5 6,7 --- --- ---
AREA RANGE
COMPARE

Nota 1. Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.
2. Compatible slo con las CPUs Ver. 2.0 o superior.

1227
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-6 Instrucciones de movimiento de datos


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
MOVE MOV 021 3 0,18 0,20 0,25 0,29 ---
!MOV 021 7 +21,38 +21,40 +42,36 +42,36 Incremento para
la serie CS
+90,52 +90,52 +90,52 +90,52 Incremento para
C200H
DOUBLE MOVL 498 3 0,32 0,34 0,42 0,50 ---
MOVE
MOVE NOT MVN 022 3 0,18 0,20 0,25 0,29 ---
DOUBLE MVNL 499 3 0,32 0,34 0,42 0,50 ---
MOVE NOT
MOVE BIT MOVB 082 4 0,24 0,34 7,5 7,5 ---
MOVE DIGIT MOVD 083 4 0,24 0,34 7,3 7,3 ---
MULTIPLE XFRB 062 4 10,1 10,8 13,6 13,6 Transferencia de
BIT TRANS- 1 bit
FER 186,4 189,8 269,2 269,2 Transferencia de
255 bits
BLOCK XFER 070 4 0,36 0,44 11,2 11,2 Transferencia de
TRANSFER 1 canal
300,1 380,1 633,5 633,5 Transferencia de
1000 canales
BLOCK SET BSET 071 4 0,26 0,28 8,5 8,5 Configuracin
de 1 canal
200,1 220,1 278,3 278,3 Configuracin
de 1000 canales
DATA XCHG 073 3 0,40 0,56 0,5 0,7 ---
EXCHANGE
DOUBLE XCGL 562 3 0,76 1,04 0,9 1,3 ---
DATA
EXCHANGE
SINGLE DIST 080 4 5,1 5,4 7,0 7,0 ---
WORD DIS-
TRIBUTE
DATA COLL 081 4 5,1 5,3 7,1 7,1 ---
COLLECT
MOVE TO MOVR 560 3 0,08 0,08 0,42 0,50 ---
REGISTER
MOVE TIMER/ MOVRW 561 3 0,42 0,50 0,42 0,50 ---
COUNTER PV
TO REGIS-
TER

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

1228
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-7 Instrucciones de desplazamiento de datos


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
SHIFT SFT 010 3 7,4 10,4 10,4 10,4 Desplazamiento
REGISTER de 1 canal
433,2 488,0 763,1 763,1 Desplazamiento
de 1000 canales
REVERSIBLE SFTR 084 4 6,9 7,2 9,6 9,6 Desplazamiento
SHIFT de 1 canal
REGISTER 615,3 680,2 859,6 859,6 Desplazamiento
de 1000 canales
ASYNCHRO- ASFT 017 4 6,2 6,4 7,7 7,7 Desplazamiento
NOUS SHIFT de 1 canal
REGISTER 1,22 ms 1,22 ms 2,01 ms 2,01 ms Desplazamiento
de 1000 canales
WORD SHIFT WSFT 016 4 4,5 4,7 7,8 7,8 Desplazamiento
de 1 canal
171,5 171,7 781,7 781,7 Desplazamiento
de 1000 canales
ARITHMETIC ASL 025 2 0,22 0,32 0,29 0,37 ---
SHIFT LEFT
DOUBLE ASLL 570 2 0,40 0,56 0,50 0,67 ---
SHIFT LEFT
ARITHMETIC ASR 026 2 0,22 0,32 0,29 0,37 ---
SHIFT RIGHT
DOUBLE ASRL 571 2 0,40 0,56 0,50 0,67 ---
SHIFT RIGHT
ROTATE LEFT ROL 027 2 0,22 0,32 0,29 0,37 ---
DOUBLE ROLL 572 2 0,40 0,56 0,50 0,67 ---
ROTATE LEFT
ROTATE LEFT RLNC 574 2 0,22 0,32 0,29 0,37 ---
WITHOUT
CARRY
DOUBLE RLNL 576 2 0,40 0,56 0,50 0,67 ---
ROTATE LEFT
WITHOUT
CARRY
ROTATE ROR 028 2 0,22 0,32 0,29 0,37 ---
RIGHT
DOUBLE RORL 573 2 0,40 0,56 0,50 0,67 ---
ROTATE
RIGHT
ROTATE RRNC 575 2 0,22 0,32 0,29 0,37 ---
RIGHT WITH-
OUT CARRY
DOUBLE RRNL 577 2 0,40 0,56 0,50 0,67 ---
ROTATE
RIGHT WITH-
OUT CARRY
ONE DIGIT SLD 074 3 5,9 6,1 8,2 8,2 Desplazamiento
SHIFT LEFT de 1 canal
561,1 626,3 760,7 760,7 Desplazamiento
de 1000 canales
ONE DIGIT SRD 075 3 6,9 7,1 8,7 8,7 Desplazamiento
SHIFT RIGHT de 1 canal
760,5 895,5 1,07 ms 1,07 ms Desplazamiento
de 1000 canales

1229
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones


(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
SHIFT N-BIT NSFL 578 4 7,5 8,3 10,5 10,5 Desplazamiento
DATA LEFT de 1 bit
40,3 45,4 55,5 55,5 Desplazamiento
de 1000 bits
SHIFT N-BIT NSFR 579 4 7,5 8,3 10,5 10,5 Desplazamiento
DATA RIGHT de 1 bit
50,5 55,3 69,3 69,3 Desplazamiento
de 1000 bits
SHIFT N-BITS NASL 580 3 0,22 0,32 0,29 0,37 ---
LEFT
DOUBLE NSLL 582 3 0,40 0,56 0,50 0,67 ---
SHIFT N-BITS
LEFT
SHIFT N-BITS NASR 581 3 0,22 0,32 0,29 0,37 ---
RIGHT
DOUBLE NSRL 583 3 0,40 0,56 0,50 0,67 ---
SHIFT N-BITS
RIGHT

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

4-1-8 Instrucciones de aumento/disminucin


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
INCREMENT ++ 590 2 0,22 0,32 0,29 0,37 ---
BINARY
DOUBLE ++L 591 2 0,40 0,56 0,50 0,67 ---
INCREMENT
BINARY
DECREMENT 592 2 0,22 0,32 0,29 0,37 ---
BINARY
DOUBLE L 593 2 0,40 0,56 0,50 0,67 ---
DECREMENT
BINARY
INCREMENT ++B 594 2 6,4 4,5 7,4 7,4 ---
BCD
DOUBLE ++BL 595 2 5,6 4,9 6,1 6,1 ---
INCREMENT
BCD
DECREMENT B 596 2 6,3 4,6 7,2 7,2 ---
BCD
DOUBLE BL 597 2 5,3 4,7 7,1 7,1 ---
DECREMENT
BCD

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

1230
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-9 Instrucciones matemticas de smbolos


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
SIGNED + 400 4 0,18 0,20 0,25 0,37 ---
BINARY
ADD
WITHOUT
CARRY
DOUBLE +L 401 4 0,32 0,34 0,42 0,54 ---
SIGNED
BINARY
ADD
WITHOUT
CARRY
SIGNED +C 402 4 0,18 0,20 0,25 0,37 ---
BINARY
ADD WITH
CARRY
DOUBLE +CL 403 4 0,32 0,34 0,42 0,54 ---
SIGNED
BINARY
ADD WITH
CARRY
BCD ADD +B 404 4 8,2 8,4 14,0 14,0 ---
WITHOUT
CARRY
DOUBLE +BL 405 4 13,3 14,5 19,0 19,0 ---
BCD ADD
WITHOUT
CARRY
BCD ADD +BC 406 4 8,9 9,1 14,5 14,5 ---
WITH
CARRY
DOUBLE +BCL 407 4 13,8 15,0 19,6 19,6 ---
BCD ADD
WITH
CARRY
SIGNED 410 4 0,18 0,20 0,25 0,37 ---
BINARY
SUBTRACT
WITHOUT
CARRY
DOUBLE L 411 4 0,32 0,34 0,42 0,54 ---
SIGNED
BINARY
SUBTRACT
WITHOUT
CARRY
SIGNED C 412 4 0,18 0,20 0,25 0,37 ---
BINARY
SUBTRACT
WITH
CARRY
DOUBLE CL 413 4 0,32 0,34 0,42 0,54 ---
SIGNED
BINARY
SUBTRACT
WITH
CARRY

1231
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones


(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
BCD SUB- B 414 4 8,0 8,2 13,1 13,1 ---
TRACT
WITHOUT
CARRY
DOUBLE BL 415 4 12,8 14,0 18,2 18,2 ---
BCD SUB-
TRACT
WITHOUT
CARRY
BCD SUB- BC 416 4 8,5 8,6 13,8 13,8 ---
TRACT
WITH
CARRY
DOUBLE BCL 417 4 13,4 14,7 18,8 18,8 ---
BCD SUB-
TRACT
WITH
CARRY
SIGNED * 420 4 0,38 0,40 0,50 0,58 ---
BINARY
MULTIPLY
DOUBLE *L 421 4 7,23 8,45 11,19 11,19 ---
SIGNED
BINARY
MULTIPLY
UNSIGNED *U 422 4 0,38 0,40 0,50 0,58 ---
BINARY
MULTIPLY
DOUBLE *UL 423 4 7,1 8,3 10,63 10,63 ---
UNSIGNED
BINARY
MULTIPLY
BCD MULTI- *B 424 4 9,0 9,2 12,8 12,8 ---
PLY
DOUBLE *BL 425 4 23,0 24,2 35,2 35,2 ---
BCD MULTI-
PLY
SIGNED / 430 4 0,40 0,42 0,75 0,83 ---
BINARY
DIVIDE
DOUBLE /L 431 4 7,2 8,4 9,8 9,8 ---
SIGNED
BINARY
DIVIDE
UNSIGNED /U 432 4 0,40 0,42 0,75 0,83 ---
BINARY
DIVIDE
DOUBLE /UL 433 4 6,9 8,1 9,1 9,1 ---
UNSIGNED
BINARY
DIVIDE
BCD DIVIDE /B 434 4 8,6 8,8 15,9 15,9 ---
DOUBLE /BL 435 4 17,7 18,9 26,2 26,2 ---
BCD DIVIDE

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

1232
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-10 Instrucciones de conversin


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU- CPU- CPU-6@ CPU-4@
(Ver nota). 6@H 4@H
BCD-TO- BIN 023 3 0,22 0,24 0,25 0,29 ---
BINARY
DOUBLE BINL 058 3 6,5 6,8 9,1 9,1 ---
BCD-TO-
DOUBLE
BINARY
BINARY-TO- BCD 024 3 0,24 0,26 8,3 8,3 ---
BCD
DOUBLE BCDL 059 3 6,7 7,0 9,2 9,2 ---
BINARY-TO-
DOUBLE
BCD
2S COM- NEG 160 3 0,18 0,20 0,25 0,29 ---
PLEMENT
DOUBLE NEGL 161 3 0,32 0,34 0,42 0,5 ---
2'S COM-
PLEMENT
16-BIT TO SIGN 600 3 0,32 0,34 0,42 0,50 ---
32-BIT
SIGNED
BINARY
DATA MLPX 076 4 0,32 0,42 8,8 8,8 Decodificacin de
DECODER 1 dgito (4 a 16)
0,98 1,20 12,8 12,8 Decodificacin de
4 dgitos (4 a 16)
3,30 4,00 20,3 20,3 Decodificacin de
1 dgito (8 a 256)
6,50 7,90 33,4 33,4 Decodificacin de
2 dgitos (8 a 256)
DATA DMPX 077 4 7,5 7,9 10,4 10,4 Codificacin de
ENCODER 1 dgito (16 a 4)
49,6 50,2 59,1 59,1 Codificacin de
4 dgitos (16 a 4)
18,2 18,6 23,6 23,6 Codificacin de
1 dgito (256 a 8)
55,1 57,4 92,5 92,5 Codificacin de
2 dgitos (256 a 8)
ASCII CON- ASC 086 4 6,8 7,1 9,7 9,7 Conversin de
VERT 1 dgito en ASCII
11,2 11,7 15,1 15,1 Conversin de
4 dgitos en ASCII
ASCII TO HEX 162 4 7,1 7,4 10,1 10,1 Conversin de
HEX 1 dgito
COLUMN LINE 063 4 19,0 23,1 29,1 29,1 ---
TO LINE
LINE TO COLM 064 4 23,2 27,5 37,3 37,3 ---
COLUMN

1233
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones


(pasos) CPU- CPU- CPU-6@ CPU-4@
(Ver nota). 6@H 4@H
SIGNED BINS 470 4 8,0 8,3 12,1 12,1 Configuracin del for-
BCD-TO- mato de datos n 0
BINARY 8,0 8,3 12,1 12,1 Configuracin del for-
mato de datos n 1
8,3 8,6 12,7 12,7 Configuracin del for-
mato de datos n 2
8,5 8,8 13,0 13,0 Configuracin del for-
mato de datos n 3
DOUBLE BISL 472 4 9,2 9,6 13,6 13,6 Configuracin del for-
SIGNED mato de datos n 0
BCD-TO- 9,2 9,6 13,7 13,7 Configuracin del for-
BINARY mato de datos n 1
9,5 9,9 14,2 14,2 Configuracin del for-
mato de datos n 2
9,6 10,0 14,4 14,4 Configuracin del for-
mato de datos n 3
SIGNED BCDS 471 4 6,6 6,9 10,6 10,6 Configuracin del for-
BINARY-TO- mato de datos n 0
BCD 6,7 7,0 10,8 10,8 Configuracin del for-
mato de datos n 1
6,8 7,1 10,9 10,9 Configuracin del for-
mato de datos n 2
7,2 7,5 11,5 11,5 Configuracin del for-
mato de datos n 3
DOUBLE BDSL 473 4 8,1 8,4 11,6 11,6 Configuracin del for-
SIGNED mato de datos n 0
BINARY-TO- 8,2 8,6 11,8 11,8 Configuracin del for-
BCD mato de datos n 1
8,3 8,7 12,0 12,0 Configuracin del for-
mato de datos n 2
8,8 9,2 12,5 12,5 Configuracin del for-
mato de datos n 3
GRAY CODE GRY 474 4 46,9 72,1 --- --- Binario de 8 bits
CONVER- 49,6 75,2 --- --- BCD de 8 bits
SION
(Ver nota 2). 57,7 87,7 --- --- ngulo de 8 bits
61,8 96,7 --- --- Binario de 15 bits
64,5 99,6 --- --- BCD de 15 bits
72,8 112,4 --- --- ngulo de 15 bits
52,3 87,2 --- --- 360 binario
55,1 90,4 --- --- 360 BCD
64,8 98,5 --- --- 360 ngulo

Nota 1. Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.
2. Compatible slo con las CPUs Ver. 2.0 o superior.

1234
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-11 Instrucciones lgicas


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
LOGICAL ANDW 034 4 0,18 0,20 0,25 0,37 ---
AND
DOUBLE ANDL 610 4 0,32 0,34 0,42 0,54 ---
LOGICAL
AND
LOGICAL OR ORW 035 4 0,22 0,32 0,25 0,37 ---
DOUBLE ORWL 611 4 0,32 0,34 0,42 0,54 ---
LOGICAL OR
EXCLUSIVE XORW 036 4 0,22 0,32 0,25 0,37 ---
OR
DOUBLE XORL 612 4 0,32 0,34 0,42 0,54 ---
EXCLUSIVE
OR
EXCLUSIVE XNRW 037 4 0,22 0,32 0,25 0,37 ---
NOR
DOUBLE XNRL 613 4 0,32 0,34 0,42 0,54 ---
EXCLUSIVE
NOR
COMPLE- COM 029 2 0,22 0,32 0,29 0,37 ---
MENT
DOUBLE COML 614 2 0,40 0,56 0,50 0,67 ---
COMPLE-
MENT

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

4-1-12 Instrucciones matemticas especiales


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
BINARY ROTB 620 3 49,6 50,0 530,7 530,7 ---
ROOT
BCD SQUARE ROOT 072 3 13,7 13,9 514,5 514,5 ---
ROOT
ARITHMETIC APR 069 4 6,7 6,9 32,3 32,3 Si se designa
PROCESS SIN y COS
17,2 18,4 78,3 78,3 Si se designa
aproximacin de
segmento lineal
FLOATING FDIV 079 4 116,6 176,6 176,6 176,6 ---
POINT
DIVIDE
BIT COUN- BCNT 067 4 0,3 0,38 22,1 22,1 Si se cuenta
TER 1 canal

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

1235
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

4-1-13 Instrucciones matemticas de coma flotante


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
FLOATING TO FIX 450 3 10,6 10,8 14,5 14,5 ---
16-BIT
FLOATING TO FIX 451 3 10,8 11,0 14,6 14,6 ---
32-BIT
16-BIT TO FLT 452 3 8,3 8,5 11,1 11,1 ---
FLOATING
32-BIT TO FLTL 453 3 8,3 8,5 10,8 10,8 ---
FLOATING
FLOATING- +F 454 4 8,0 9,2 10,2 10,2 ---
POINT ADD
FLOATING- F 455 4 8,0 9,2 10,3 10,3 ---
POINT SUB-
TRACT
FLOATING- /F 457 4 8,7 9,9 12,0 12,0 ---
POINT
DIVIDE
FLOATING- *F 456 4 8,0 9,2 10,5 10,5 ---
POINT MULTI-
PLY
DEGREES TO RAD 458 3 10,1 10,2 14,9 14,9 ---
RADIANS
RADIANS TO DEG 459 3 9,9 10,1 14,8 14,8 ---
DEGREES
SINE SIN 460 3 42,0 42,2 61,1 61,1 ---
COSINE COS 461 3 31,5 31,8 44,1 44,1 ---
TANGENT TAN 462 3 16,3 16,6 22,6 22,6 ---
ARC SINE ASIN 463 3 17,6 17,9 24,1 24,1 ---
ARC COSINE ACOS 464 3 20,4 20,7 28,0 28,0 ---
ARC TAN- ATAN 465 3 16,1 16,4 16,4 16,4 ---
GENT
SQUARE SQRT 466 3 19,0 19,3 28,1 28,1 ---
ROOT
EXPONENT EXP 467 3 65,9 66,2 96,7 96,7 ---
LOGARITHM LOG 468 3 12,8 13,1 17,4 17,4 ---
EXPONEN- PWR 840 4 125,4 126,0 181,7 181,7 ---
TIAL POWER
Comparacin LD, AND, 329 3 6,6 8,3 --- --- ---
de smbolo flo- OR +=F
tante LD, AND, 330
OR +<>F
LD, AND, 331
OR +<F
LD, AND, 332
OR +<=F
LD, AND, 333
OR +>F
LD, AND, 334
OR +>=F

1236
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones


(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
FLOATING- FSTR 448 4 48,5 48,9 --- --- ---
POINT TO
ASCII
ASCII TO FVAL 449 3 21,1 21,3 --- --- ---
FLOATING-
POINT

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

4-1-14 Instrucciones de coma flotante de doble precisin


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
DOUBLE LD, AND, 335 3 8,5 10,3 --- --- ---
SYMBOL OR +=D
COMPARI- LD, AND, 336
SON OR +<>D
LD, AND, 337
OR +<D
LD, AND, 338
OR +<=D
LD, AND, 339
OR +>D
LD, AND, 340
OR +>=D
DOUBLE FIXD 841 3 11,7 12,1 --- --- ---
FLOATING TO
16-BIT
BINARY
DOUBLE FIXLD 842 3 11,6 12,1 --- --- ---
FLOATING TO
32-BIT
BINARY
16-BIT DBL 843 3 9,9 10,0 --- --- ---
BINARY TO
DOUBLE
FLOATING
32-BIT DBLL 844 3 9,8 10,0 --- --- ---
BINARY TO
DOUBLE
FLOATING
DOUBLE +D 845 4 11,2 11,9 --- --- ---
FLOATING-
POINT ADD
DOUBLE D 846 4 11,2 11,9 --- --- ---
FLOATING-
POINT SUB-
TRACT
DOUBLE *D 847 4 12,0 12,7 --- --- ---
FLOATING-
POINT MULTI-
PLY
DOUBLE /D 848 4 23,5 24,2 --- --- ---
FLOATING-
POINT
DIVIDE

1237
Tiempos de ejecucin de instruccin y nmero de pasos de la serie CS Seccin 4-1

Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones


(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
DOUBLE RADD 849 3 27,4 27,8 --- --- ---
DEGREES TO
RADIANS
DOUBLE DEGD 850 3 11,2 11,9 --- --- ---
RADIANS TO
DEGREES
DOUBLE SIND 851 3 45,4 45,8 --- --- ---
SINE
DOUBLE COSD 852 3 43,0 43,4 --- --- ---
COSINE
DOUBLE TAND 853 3 20,1 20,5 --- --- ---
TANGENT
DOUBLE ARC ASIND 854 3 21,5 21,9 --- --- ---
SINE
DOUBLE ARC ACOSD 855 3 24,7 25,1 --- --- ---
COSINE
DOUBLE ARC ATAND 856 3 19,3 19,7 --- --- ---
TANGENT
DOUBLE SQRTD 857 3 47,4 47,9 --- --- ---
SQUARE
ROOT
DOUBLE EXPD 858 3 121,0 121,4 --- --- ---
EXPONENT
DOUBLE LOGD 859 3 16,0 16,4 --- --- ---
LOGARITHM
DOUBLE PWRD 860 4 223,9 224,2 --- --- ---
EXPONEN-
TIAL POWER

Nota Si se utiliza un operando de longitud doble, sume 1 al valor indicado en la


columna Longitud de la tabla siguiente.

4-1-15 Instrucciones de proceso de datos de tabla


Instruccin Nemnico Cdigo Longitud Tiempo de ejecucin en ON (s) Condiciones
(pasos) CPU-6@H CPU-4@H CPU-6@ CPU-4@
(Ver nota).
SET STACK SSET 630 3 8,0 8,3 8,5 8,5 Designacin de
5 canales en el
rea de pila
231,6 251,8 276,8 276,8 Designacin de
1000 canales en
el rea de pila
PUSH ONTO PUSH 632 3 6,5 8,6 9,1 9,1 ---
STACK
FIRST IN FIFO 633 3 6,9 8,9 10,6 10,6 Designacin de
FIRST OUT 5 canales en el
rea de pila
352,6 434,3

También podría gustarte