0% encontró este documento útil (0 votos)
193 vistas370 páginas

ch5 PDF

1. Este capítulo describe las diversas instrucciones disponibles en los PLCs DL06 organizadas por categoría. 2. Se proporcionan tablas de índice con las páginas de cada instrucción específica para facilitar su búsqueda. 3. Las instrucciones incluyen operaciones lógicas, aritméticas, de comparación, temporizadores, conversión de datos y E/S.

Cargado por

Erik Martinez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
193 vistas370 páginas

ch5 PDF

1. Este capítulo describe las diversas instrucciones disponibles en los PLCs DL06 organizadas por categoría. 2. Se proporcionan tablas de índice con las páginas de cada instrucción específica para facilitar su búsqueda. 3. Las instrucciones incluyen operaciones lógicas, aritméticas, de comparación, temporizadores, conversión de datos y E/S.

Cargado por

Erik Martinez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 370

CAÍPTULO

APÍTULO
INSTRUCCIONES RLL DEL
PLC DL06
5
En este capítulo
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5–2
Usando instrucciones booleanas . . . . . . . . . . . . . . . . . . . . . . . . . . . .5–5
Instrucciones booleanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5–10
Instrucciones de comparación booleanas . . . . . . . . . . . . . . . . . . . .5–26
Instrucciones de acción inmediata . . . . . . . . . . . . . . . . . . . . . . . .5–32
Instrucciones de temporizadores, contadores y Shift Register . . . .5–39
Operaciones de carga y copia con el acumulador y Stack . . . . . .5–52
Instrucciones lógicas (Acumulador) . . . . . . . . . . . . . . . . . . . . . . . .5–69
Instrucciones aritméticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5–86
Instrucciones de funciones transcendentales . . . . . . . . . . . . . . . .5–118
Instrucciones de operación con bits . . . . . . . . . . . . . . . . . . . . . .5–120
Instrucciones de conversión de números (Acumulador) . . . . . . . .5–127
Instrucciones de tablas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5–141
Instrucciones de fecha y hora . . . . . . . . . . . . . . . . . . . . . . . . . . .5–171
Instrucciones de control de la CPU . . . . . . . . . . . . . . . . . . . . . . .5–173
Instrucciones de control de programa . . . . . . . . . . . . . . . . . . . . .5–175
Instrucciones de Interrupción . . . . . . . . . . . . . . . . . . . . . . . . . . . .5–183
Instrucciones de mensajes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5–186
Instrucciones de MODBUS RTU . . . . . . . . . . . . . . . . . . . . . . . . . .5–201
Instrucciones de texto ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . .5–210
Instrucciones de tipo Intelligent Box (IBox) . . . . . . . . . . . . . . . . .5–230
Capítulo 5: Instrucciones

Introducción
1 Los PLCs DL06 ofrecen una amplia variedad de instrucciones para realizar diversos tipos de
operaciones. Este capítulo le muestra cómo utilizar cada instrucción normal de lógica ladder de
2 relevadores (RLL). Además de estas instrucciones, usted puede también necesitar referirse a las
instrucciones de tambor (DRUM) en el capítulo 6, o a las instrucciones de programación por
etapas en el capítulo 7.
3 Hay dos formas de encontrar rápidamente la instrucción que usted necesita.
• Si sabe la categoría de la instrucción (booleana, comparativos booleanos, etc.) use el título en la parte
4 superior de las páginas para encontrar las páginas que discuten las instrucciones en esa categoría.
• Si usted sabe el nombre individual de la instrucción, utilice el índice siguiente para encontrar la
5 Instrucción
página que discute la instrucción.
Página Instrucción Página
6 Accumulating Fast Timer (TMRAF) 5–42 And Store (AND STR) 5–16
Accumulating Timer (TMRA) 5–42 And with Stack (ANDS) 5–72
7 Add (ADD)
Add Binary (ADDB)
5–86
5–99
Arc Cosine Real (ACOSR)
Arc Sine Real (ASINR)
5–119
5–118

8 Add Binary Double (ADDBD)


Add Binary Top of Stack (ADDBS)
5–100
5–114
Arc Tangent Real (ATANR)
ASCII Clear Buffer (ACRB)
5–119
5–228
Add Double (ADDD) 5–87 ASCII Compare (CMPV) 5–220
9 Add Formatted (ADDF) 5–106 ASCII Constante (ACON) 5–187
Add Real (ADDR) 5–88 ASCII Extract (AEX) 5–219
10 Add to Top (ATT) 5–162 ASCII Find (AFIND) 5–216
Add Top of Stack (ADDS) 5–110 ASCII Input (AIN) 5–212
11 And (AND) 5–14 ASCII Print from V–memory (PRINTV) 5–226
And Bit-of-Word (AND) 5–15 ASCII Print to V–memory (VPRINT) 5–221
12 And (AND) 5–31 ASCII Swap Bytes (SWAPB) 5–227
AND (AND logical) 5–69 ASCII to HEX (ATH) 5–134
13 And Double (ANDD)
And Formatted (ANDF)
5–70
5–71
Binary (BIN)
Binary Coded Decimal (BCD)
5–127
5–128

14 And If Equal (ANDE)


And If Not Equal (ANDNE)
5–28
5–28
Binary to Real Conversion (BTOR)
Compare (CMP)
5–131
5–81
And Immediate (ANDI) 5–33 Compare Double (CMPD) 5–82
A AND Move (ANDMOV) 5–167 Compare Formatted (CMPF) 5–83
And Negative Differential (ANDND) 5–22 Compare Real Number (CMPR) 5–85
B And Not (ANDN) 5–14 Compare with Stack (CMPS) 5–84
And Not Bit-of-Word (ANDN) 5–15 Cosine Real (COSR) 5–118
C And Not (ANDN) 5–31 Contador (CNT) 5–45
And Not Immediate (ANDNI) 5–33 Data Label (DLBL) 5–187
D And Positive Differential (ANDPD) 5–22 Date (DATE) 5–171

5–2 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones

Instrucción Página Instrucción Página


Decode (DECO)
Decrement (DEC)
5–126
5–98
Load Accumulator Indexed from Data Constantes (LDSX) 5–62
Load Address (LDA) 5–60
1
Decrement Binary (DECB) 5–105 Load Double (LDD) 5–58
Degree Real Conversion (DEGR) 5–133 Load Formatted (LDF) 5–59
2
Disable Interrupts (DISI) 5–184 Load Immediate (LDI) 5–37
Divide (DIV) 5–95 Load Immediate Formatted (LDIF) 5–38 3
Divide Binary (DIVB) 5–104 Load Label (LDLBL) 5–142
Divide Binary by Top OF Stack (DIVBS) 5–117 Load Real Number (LDR) 5–63 4
Divide by Top of Stack (DIVS) 5–113 Master Line Reset (MLR) 5–181
Divide Double (DIVD) 5–96 Master Line Set (MLS) 5–181 5
Divide Formatted (DIVF) 5–109 MODBUS Read from Network (MRX) 5–204
Divide Real (DIVR)
Enable Interrupts (ENI)
5–97
5–183
MODBUS Write to Network (MWX)
Move Block (MOVBLK)
5–207
5-189
6
Encode (ENCO)
End (END)
5–125
5–173
Move (MOV)
Move Memory Cartridge (MOVMC)
5–141
5–142
7
Exclusive Or (XOR) 5–77 Multiply (MUL) 5–92
Exclusive Or Double (XORD) 5–78 Multiply Binary (MULB) 5–103
8
Exclusive Or Formatted (XORF) 5–79 Multiply Binary Top of Stack (MULBS) 5–116
Exclusive OR Move (XORMOV) 5–167 Multiply Double (MULD) 5–93 9
Exclusive Or with Stack (XORS) 5–80 Multiply Formatted (MULF) 5–108
Fault (FAULT) 5–186 Multiply Real (MULR) 5–94 10
Fill (FILL) 5–146 Multiply Top of Stack (MULS) 5–112
Find (FIND) 5–147 No Operation (NOP) 5–173 11
Find Block (FINDB) 5–169 Not (NOT) 5–19
Find Greater Than (FDGT)
For / Next (FOR) (NEXT)
5–148
5–176
Numerical Constante (NCON)
Or (OR)
5–187
5–12
12
Goto Label (GOTO) (LBL)
Goto Subroutine (GTS) (SBR)
5–175
5–178
Or (OR)
Or (OR logical)
5–30
5–73
13
Gray Code (GRAY) 5–138 Or Bit-of-Word (OR) 5–13
HEX to ASCII (HTA) 5–135 Or Double (ORD) 5–74
14
Increment (INC) 5–98 Or Formatted (ORF) 5–75
Increment Binary (INCB) 5–105 Or If Equal (ORE) 5–27 A
Interrupt (INT) 5–183 Or Immediate (ORI) 5–32
Interrupt Return (IRT) 5–183 OR Move (ORMOV) 5–167 B
Interrupt Return Conditional (IRTC) 5–183 Or Negative Differential (ORND) 5–21
Invert (INV) 5–129 Or Not (ORN) 5–12 C
LCD 5–200 Or Not (ORN) 5–30
Load (LD)
Load Accumulator Indexed (LDX)
5–57
5–61
Or Not Bit-of-Word (ORN)
Or Not Immediate (ORNI)
5–13
5–32
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–3


Capítulo 5: Instrucciones

Instrucción Página Instrucción Página

1 Or Out (OROUT)
Or Out Immediate (OROUTI)
5–17
5–34
Shuffle Digits (SFLDGT)
Sine Real (SINR)
5–139
5–118
Or Positive Differential (ORPD) 5–21 Source to Table (STT) 5–156
2 Or Store (ORSTR) 5–16 Square Root Real (SQRTR) 5–119
Or with Stack (ORS) 5–76 Etapas Contador (SGCNT) 5–47
3 Out (OUT) 5–17 Stop (STOP) 5–173
Out (OUT) 5–18 Store (STR) 5–10
4 Out Bit-of-Word (OUT) 5–64 Store (STR) 5–29
Out Double (OUTD) 5–64 Store Bit-of-Word (STRB) 5–11
5 Out Formatted (OUTF) 5–65 Store If Equal (STRE) 5–26
Out Immediate (OUTI) 5–34 Store If Not Equal (STRNE) 5–26

6 Out Immediate Formatted (OUTIF)


Out Indexed (OUTX)
5–35
5–67
Store Immediate (STRI)
Store Negative Differential (STRND)
5–32
5–20

7 Out Least (OUTL)


Out Most (OUTM)
5–68
5–68
Store Not (STRN)
Store Not (STRN)
5–29
5–10
Pause (PAUSE) 5–25 Store Not Bit-of-Word (STRNB) 5–11
8 Pop (POP) 5–65 Store Not Immediate (STRNI) 5–32
Positive Differential (PD) 5–19 Store Positive Differential (STRPD) 5–20
9 Print Message (PRINT) 5–190 Subroutine Return (RT) 5–178
Radian Real Conversion (RADR) 5–133 Subroutine Return Conditional (RTC) 5–178
10 Read from Intelligent I/O Module (RD) 5-194 Subtract (SUB) 5–89
Read from Network (RX) 5–196 Subtract Binary (SUBB) 5–101
11 Real to Binary Conversion (RTOB) 5–132 Subtract Binary Double (SUBBD) 5–102
Remove from Bottom (RFB) 5–153 Subtract Binary Top of Stack (SUBBS) 5–115

12 Remove from Table (RFT)


Reset (RST)
5–159
5–23
Subtract Double (SUBD)
Subtract Formatted (SUBF)
5–90
5–107

13 Reset Bit-of-Word (RST)


Reset Immediate (RSTI)
5–24
5–36
Subtract Real (SUBR)
Subtract Top of Stack (SUBS)
5–91
5–111
Reset Watch Dog Timer (RSTWT) 5–174 Sum (SUM) 5–120
14 Rotate Left (ROTL) 5–123 Swap (SWAP) 5–170
Rotate Right (ROTR) 5–124 Table Shift Left (TSHFL) 5–165
A RSTBIT 5–144 Table Shift Right (TSHFR) 5–165
Segment (SEG) 5–137 Table to Destination (TTD) 5–150
B Set (SET) 5–23 Tangent Real (TANR) 5–118
Set Bit-of-Word (SET) 5–24 Ten’s Complement (BCDCPL) 5–130
C Set Immediate (SETI) 5–36 Time (TIME) 5–172
SETBIT 5–144 Timer (TMR) and Timer Fast (TMRF) 5–40

D Shift Left (SHFL)


Shift Register (SR)
5–121
5–51
Up Down Contador (UDC)
Write to Intelligent I/O Module (WT)
5–49
5-195
Shift Right (SHFR) 5–122 Write to Network (WX) 5–198

5–4 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

Usando Instrucciones booleanas


¿Ud. se ha preguntado porqué muchos fabricantes de PLC siempre citan el tiempo de barrido 1
para un programa booleano de 1K al usar las instrucciones booleanas? Simple. La mayoría de
los programas utilizan muchas instrucciones booleanas. El PLC trabaja con estas instrucciones
que son simples, diseñadas para unir contactos de entradas y salidas en serie o en paralelo, en
2
varias combinaciones. Ya que el programa DirectSOFT le permite usar símbolos gráficos para
construir el programa, usted no tiene que saber la abreviatura o el mnemotécnico de las 3
instrucciones. Sin embargo, pueden ser útiles cuando vea el listado mnemotécnico de un
programa. Estos mnemotécnicos también se usan como una variante con el programador
portátil.
4
Muchas de las instrucciónes en este capítulo no son instrucciónes usadas in DirectSOFT, pero
DS5 Implied son implicadas. Esto quiere decir que no son comandos desde el teclado. Sin embargo, pueden
5
ser vistas en Mneumonic View (nemotécnicos) del programa cuando un programa en
HPP Usado DirectSOFT ha sido desarrollado y a sido aceptado (compilado). Cada instrucción listada en 6
este capítulo tendrá una pequeña tabla como en la figura adyacente para indicar como se usa la
instrucción con DirectSOFT y el programador HPP.
Los siguientes párrafos muestran como estas instrucciónes son usadas para construir programas
7
ladder simples.
8
Instrucción END
Todos los programas DL06 deben tener una declaración END como instrucción final. Esto le
dice a la CPU que éste es el final del programa. Normalmente, cualquiera instrucción colocada
9
después de la instrucción END no es ejecutada. Hay excepciones a esto tal como rutinas de
interrupción, etc. 10
DirectSOFT
X0 Y0 11
OUT
Todos los programas deben tener
una declaración END 12
END
13
Renglones simples
Siempre se debe usar un contacto para iniciar un renglón (rung en inglés) que contiene
contactos y bobinas (con algunas excepciones). La instrucción booleana que hace esto se llama
14
STORE o instrucción STR y el símbolo es un contacto normalmente abierto. La salida es
representada por la instrucción OUT cuyo símbolo es una bobina. El ejemplo siguiente muestra A
cómo entrar un solo contacto y una sola bobina de salida en un renglón.

DirectSOFT Direct SOFT32 ProgramadorH2-HPP


Programador D2-HPP
B
STR X0
X0 Y0
OUT
OUT Y0
END
C
D
END

Manual del PLC DL06, 2a. edición en español, 6/07 5–5


Capítulo 5: Instrucciones Booleanas

Contactos Normalmente Cerrados


Los contactos normalmente cerrados son muy comunes. estos se hacen con las instrucciones
1 Store, Not, o STRN. El siguiente ejemplo muestra un simple renglón con un contacto
normalmente cerrado.
2 DirectSOFT
Direct SOFT32 ProgramadorH2-HPP
Programador D2-HPP
X0 Y0 STRN X0
3 OUT OUT Y0
END

4 END

5 Contactos en serie
6 Use la instrucción AND para unir dos o más contactos en serie. El ejemplo siguente muestra
dos contactos en serie y una salida en una bobina. Las instrucciones usadas serían el STR X0,
AND X1 seguidos por OUT Y0.
7 DirectSOFT
Direct SOFT32 ProgramadorH2-HPP
Programador D2-HPP

8 X0 X1 Y0
OUT
STR X0
AND X1
OUT Y0

9 END

END
10
Salidas en el medio del renglón
11 A veces es necesario usar salidas en el medio del renglón para obtener salidas adicionales que son
condiciones a otros contactos. No se deben colocaar más instrucciones en un renglón después
de una rama que conecta a una salida. El ejemplo siguiente muestra cómo se puede utilizar la
12 instrucción AND para continuar un renglón con más salidas condicionales.

13 DirectSOFT
Direct SOFT32 ProgramadorH2-HPP
Programador D2-HPP

14 X0 X1 Y0
OUT
STR X0
AND X1
OUT Y0
AND X2
A X2 Y1 OUT Y1
AND X3
OUT OUT Y2
B X3 Y2
END

OUT
C
END
D

5–6 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

Elementos en paralelo
Usted puede también tener que unir contactos en paralelo. La instrucción OR permite hacer
esto. El ejemplo siguiente muestra dos contactos en paralelo y una sola salida. Las instrucciones 1
serían el STR X0, OR X1, seguidos por OUT Y0.
DirectSOFT
Direct SOFT32 Programador D2-HPP
ProgramadorH2-HPP
2
X0 Y0
OUT
STR X0
OR X1
3
OUT Y0
X1 END
4
END 5
Uniendo ramas conectadas en serie y en paralelo
A menudo es necesario unir varios grupos de elementos en serie en paralelo. La instrucción OR
6
STORE (ORSTR) permite esta operación. El ejemplo siguiente muestra un circuito con
elementos en serie unidos en paralelo. 7
DirectSOFT

X0 X1
Direct SOFT32
Y0
ProgramadorH2-HPP
Programador D2-HPP
STR X0
8
OUT AND X1

X2 X3
STR X2
AND X3
9
ORSTR
OUT Y0
END END 10
Ramas en paralelo que se unen en serie 11
Usted puede también unir una o más ramas paralelas en serie. La instrucción AND STORE
(ANDSTR) permite esta operación. El ejemplo siguiente muestra un circuito simple con ramas
de contactos en serie con contactos en paralelo.
12
DirectSOFT
X0
Direct SOFT32
X1 Y0
Programador D2-HPP
ProgramadorH2-HPP
STR X0
13
OUT STR X1

X2
OR X2
ANDSTR
OUT Y0
14
END
END A
Circuitos combinación
Usted puede combinar varios tipos de X0 X2 X5 Y0
OUT
B
ramas en serie y paralelas para solucionar
la mayoría de problemas de lógica. El
ejemplo siguiente muestra un circuito
X1 X3 X4
C
simple de combinación. X6
D
END

Manual del PLC DL06, 2a. edición en español, 6/07 5–7


Capítulo 5: Instrucciones Booleanas

Comparación booleana
Algunos fabricantes de PLCs hacen realmente difícil el hacer una comparación simple de dos
1 números. Algunos requieren mover los datos a varios lugares antes de que se pueda realizar
realmente la comparación. Los PLCs DL06 tienen instrucciones boleanas comparativas que le
2 permiten solucionar rápida y fácilmente este problema. La comparación booleana permite
evaluación de dos valores de 4 dígitos usando contactos boleanos (los valores deben ser del
mismo tipo, tal como, BCD, decimal. etc). Las evaluaciones válidas son: igual a, no igual a, igual
3 a o mayor que, y menor que.En el ejemplo siguiente cuando el valor en la dirección de memoria
V1400 es igual al valor constantee 1234, Y3 se energizará.
4 Stack booleano
Y3
V1400 K1234
OUT
Hay límites de cuántos elementos usted puede incluir en
5 un renglón. Esto es porque el PLC DL06 usa una memoria
o stack booleano de 8 niveles para evaluar los varios elementos de lógica. El stack booleano es
6 un área de almacenamiento temporal que soluciona la lógica en el renglón. Cada vez que el
programa encuentra una instrucción STR, la instrucción se pone en el nivel superior del stack.
Cualquiera otras instrucciones STR ya en el stack booleano se van hacia abajo un nivel. Las
7 instrucciones ANDSTR y ORSTR combinan niveles del stack booleano cuando se encuentran
en la lógica. Ocurrirá un error durante la compilación del programa si la CPU encuentra un
8 renglón que use más que los 8 niveles del stack.
El ejemplo siguiente muestra cómo se usa el stack para solucionar lógica booleana.
9
X0 X1 ORSTR AND X4 Y0
STR
10 STR OUT Salida discreta

X2 AND X3
ANDSTR
11 STR

X5 OR
12
STR X0 STR X1 STR X2 AND X3

13 1
2
STR X0 1
2
STR X1
STR X0
1
2
STR X2

STR X1
1
2
X2 AND X3
STR X1
3 3 3 STR X0 3 STR X0

14 4
5
4
5
4
5
4
5
6 6 6 6
A 7 7 7 7
8 8 8 8

B ORSTR
1 X1 o (X2 AND X3)
AND X4
1 X4 AND {X1 o (X2 AND X3)}
ORNOT X5
1 NOT X5 OR X4 AND {X1 OR (X2 AND X3)}

C 2
3
STR X0 2
3
STR X0 2
3
STR X0

. . .
. . .

D 8 8 8

ANDSTR

5–8 Manual del PLC DL06, 2a. edición en español, 6/07


.
.
Capítulo 5: Instrucciones Inmediatas

Instrucciones booleanas inmediatas


El PLC DL06 puede terminar generalmente un ciclo de operación en una cuestión de
milisegundos. Sin embargo, en algunos casos no se puede esperar algunos milisegundos hasta 1
que ocurra la actualización siguiente de E/S. EL PLC DL06 tiene funciones de entradas y
salidas inmediatas, que son instrucciones booleanas especiales que permiten leer directamente a
las entradas y escribir directamente a las salidas durante la porción de la ejecución del programa
2
del ciclo de la CPU. Recuerde que esto se hace normalmente durante la porción de la
actualización de las entradas o de las salidas del ciclo de la CPU. Las instrucciones inmediatas 3
demoran más para ejecutarse porque se interrumpe la ejecución del programa mientras la CPU
lee o escribe las E/S. Esta función normalmente no se hace hasta que las entradas sean leídas o 4
las salidas sean escritas en la porción del ciclo de la CPU.
NOTA: Aunque la instrucción inmediata de entrada lee el estado más corriente del punto de entrada, 5
solamente usa los resultados para solucionar esa instrucción. No usa el nuevo estado para actualizar la
memoria imagen. Por lo tanto, cualquier instrucción regular que siga usará los valores de la memoria imagen.
Cualquier instrucción inmediata que siga accesará a las E/S otra vez para actualizar el estado.La instrucción
6
7
PWR
RUN
CPU
TX1
8
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 RX1
TX2
RX2

9
LOGIC 06
K oyo

TERM
10
PORT1 PORT2 RUN STOP

11
Barrido de la CPU

La CPU lee las entradas desde la base


12
Lee entradas local y almacena el estado en una
memoria imagen
X11
OFF
...
...
X2
ON
X1
OFF
X0
OFF OFF X0
13
Memoria imagen de entrada
OFF X1

Lee entradas de módulos de especialidad 14


Resuelve el programa
La instrucción inmediata no usa la memoria
imagen y solo lee el estado desde el módulo
A
inmediatamente.
X0 Y0
I Cambios en las entradas X
B
ON X0

Escribe salidas
OFF X1
C
Escribe salidas a módulos de especialidad

Diagnósticos
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–9


Capítulo 5: Instrucciones Booleanas

Instrucciones booleanas
1 La instrucción Store(STR)
2 DS5 Usado
HPP Usado
Comienza un nuevo renglón o una rama adicional en un
renglón con un contacto normalmente abierto. El estado del
Aaaa

contacto será el mismo estado como el punto de la memoria


3 imagen asociada o localización de memoria.
La instrucción Store Not (STRN)
4 DS5 Usado Comienza un nuevo renglón o una rama adicional en un Aaaa
HPP Usado renglón con un contacto normalmente cerrado. El estado
5 del contacto será opuesto al estado como la memoria
imagen asociada o localización de memoria.
6 Tipo de operando de datos Rango del DL06
....................................A aaa
7 Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y
0–777
0–777

8 Relevadores de control . . . . . . . . . . . . . . . . . . . C
Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . S
0–1777
0–1777
Temporizador . . . . . . . . . . . . . . . . . . . . . . . . . . . T 0–377
9 Contador C . . . . . . . . . . . . . . . . . . . . . . . . . . . . CT
Relevadores especialesl . . . . . . . . . . . . . . . . . SP
0–177
0–777

10 En el ejemplo siguiente, cuándo la entrada X1 está ON, se activará la salida Y2.


11 DirectSOFT
Direct SOFT32 Programador D2-HPP

X1 Y2 $ B ENT
12 OUT
GX
STR
C
1

ENT
OUT 2

13
14
En el siguiente ejemplo, cuándo la entrada X1 está OFF, se activará la salida Y2.
A DirectSOFT
Direct SOFT32 Programador D2-HPP
X1 Y2 SP B
B OUT STRN
GX C
1
ENT

ENT
OUT 2
C
D

5–10 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

Instrucción Store Bit-of-Word (STRB)


La instrucción STRB comienza un nuevo renglón o una rama
DS5 Usado
HPP Usado adicional en un renglón con un contacto normalmente abierto. Aaaa.bb 1
El estado del contacto será el mismo estado como el bit
referenciado en la localización asociada de la memoria. 2
Instrucción Store Not Bit-of-Word (STRNB)
DS5 Usado Comienza un nuevo renglón o una rama adicional en un renglón Aaaa.bb 3
HPP Usado con un contacto normalmente cerrado. El estado del contacto
será opuesto al estado del bit referenciado en la localización
asociada de la memoria.
4
Tipo de operando de datos
..................................... A
Rango del DL06
aaa bb
5
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Puntero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
B
PB
Vea el mapa de memoria
Vea el mapa de memoria
0 a 15
0 a 15
6
En el ejemplo siguiente de la instrucción STRB, cuando el bit 12 de la memoria V1400 está
ON, la salida Y2 se activará. Note que en DirectSOFT se usa “B”1400.12.
7
En el ejemplo de STRNB, cuando el bit 12 de la memoria V1400 está apagado, se activará la salida Y2.
DirectSOFT
8
DirectSOFT32

B1400.12 Y2 9
OUT

10
Programador D2-HPP
11
STR SHFT B V 1 4 0 0

K 1 2 ENT 12
OUT 2 ENT

En el ejemplo de STRNB, cuando el bit 12 de la memoria V1400 está apagado, se activará la


13
salida Y2.
DirectSOFT
DirectSOFT32
14
B1400.12 Y2

OUT A
B
Programador D2-HPP

STRN SHFT B V 1 4 0 0
C
OUT
K 1

2
2

ENT
ENT
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–11


Capítulo 5: Instrucciones Booleanas

La instrucción OR lógica (OR)


La instrucción OR hace un OR lógico con un contacto
1 DS5 Implied
HPP Usado
normalmente abierto en paralelo con otro contacto en un renglón.
Aaaa
El estado del contacto será el mismo estado como el punto asociado
2 de memoria imagen. Vea el ejemplo abajo para entender el
significado .
3 DS5 Implied
La instrucción ORN lógica (ORN)
La instrucción lógica ORN hace un OR lógico con un contacto Aaaa
HPP Usado
4 normalmente cerrado en paralelo con otro contacto en un renglón.
El estado del contacto será opuesto al estado del punto asociado de
memoria imagen.
5
Tipo de operando de datos Rango del DL06
6 ....................................A
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
aaa
0-777
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0-777
7 Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777
Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777
8 Temporizador . . . . . . . . . . . . . . . . . . . . . . . . . . . T
Contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CT
0–377
0–177
Relevadores especialesl . . . . . . . . . . . . . . . . . SP 0-777
9 En el siguiente ejemplo, cuándo la entrada X1 o X2 está ON, se activará la salida Y5.
DirectSOFT
10 Direct SOFT32 Programador D2-HPP

X1 Y5 $ B ENT
STR 1
11 OUT
Q
OR
C
2
ENT
X2

12 GX
OUT
F
5
ENT

13 En el siguiente ejemplo, cuándo la entrada X1 está ON o X2 está apagada, se activará la salida


Y5.
14
DirectSOFT
Direct SOFT32 Programador D2-HPP
A X1 Y5 $ B ENT
OUT STR 1

B X2
R
ORN
C
2
ENT

GX F ENT
C OUT 5

5–12 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

La instrucción Or Bit-of-Word (OR)


La instrucción OR hace un OR lógico de un contacto
DS5 Implied
HPP Usado
normalmente abierto en paralelo a otro contacto en un
Aaaa.bb
1
renglón. El estado del contacto será el mismo estado que el
bit referido en la dirección de memoria asociada. 2
La instrucción Or Not Bit-of-Word (ORN)
DS5 Implied
La instrucción ORN hace un OR lógico de un contacto 3
HPP Usado
normalmente cerrado en paralelo a otro contacto en un
Aaaa.bb
renglón. El estado del contacto será el estado opuesto al bit
referido en la dirección de memoria asociada.
4
Tipo de operando de datos Rango del DL06
5
..................................... A aaa bb
Memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B Vea el mapa de memoria 0 a 15 6
Puntero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PB Vea el mapa de memoria 0 a 15

En el ejemplo siguiente de la instrucción OR, cuando la entrada X1 o el bit 7 de V1400 está


7
activado, se energizará la salida Y5. Note que en DirectSOFT se usa “B”1400.7.
DirectSOFT
DirectSOFT32
8
X1 Y7

OUT
9
B1400.7

Programador D2-HPP
10
STR

OR SHFT
1

B
ENT

V 1 4 0 0
11
OUT
K 7

7
ENT

ENT
12
En el ejemplo siguiente de la instrucción OR, cuando la entrada X1 está activada o el bit 7 de 13
V1400 no está activado, se energizará la salida Y5.
14
DirectSOFT
DirectSOFT32

X1 Y7 A
OUT

B1400.7 B
Programador D2-HPP

STR 1 ENT C
ORN SHFT B V 1 4 0 0

K 7 ENT D
OUT 7 ENT

Manual del PLC DL06, 2a. edición en español, 6/07 5–13


Capítulo 5: Instrucciónes Booleanas

La instrucción AND lógica (AND)


La instrucción AND lógica hace la función AND lógica
1 DS5 Implied
en un contacto normalmente abierto en serie con otro
Aaaa
HPP Usado
contacto en un renglón. El estado del contacto será el
2 mismo estado qu el de la entrada física asociada de
memoria imagen.
3 DS5 Implied
La instrucción ANDN lógica (ANDN) Aaaa
La instrucción ANDN lógica hace la función AND
HPP Usado
4 lógica en un contacto normalmente cerrado en serie con
otro contacto en un renglón. El estado del contacto será
opuesto al estado de la entrada física asociada de memoria imagen.
5 Tipo de operando de datos Rango del DL06
6 ....................................A
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
aaa
0–777
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777
7 Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777
Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777
8 Temporizador . . . . . . . . . . . . . . . . . . . . . . . . . . . T
Contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CT
0–377
0–177
Relevadores especialesl . . . . . . . . . . . . . . . . . SP 0–777
9 En el siguiente ejemplo de AND, cuándo las entradas X1 y X2 están ON, se activará la salida
Y5.
10 DirectSOFT
Direct SOFT32 Programador D2-HPP

11 X1 X2 Y5

OUT
$
STR
B
1
ENT

V C
12 AND
GX F
2
ENT

ENT
OUT 5

13
En el siguiente ejemplo de ANDN, cuándo la entrada X1 está ON y X2 está apagada, se activará
14 la salida Y5.

A DirectSOFT
Direct SOFT32 Programador D2-HPP

X1 X2 Y5
B OUT
$
STR
B
1
ENT

W C ENT
ANDN 2
C GX
OUT
F
5
ENT

5–14 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciónes Booleanas

La instrucción AND Bit-of-Word (AND).


(Bit of Word significa bit de palabra) La instrucción AND hace
DS5 Implied
un AND lógico de un contacto normalmente abierto en
Aaaa.bb
1
HPP Usado
serie con otro contacto en un renglón. El estado del
contacto será el mismo estado que el bit referido en la
dirección de memoria asociada.
2
DS5 Implied
La instrucción And Not Bit-of-Word (ANDN) Aaaa.bb 3
La instrucción ANDN hace un AND lógico de un contacto
HPP Usado
normalmente cerrado en serie con otro contacto en un
renglón. El estado del contacto será opuesto del estado del
4
bit referido en la dirección de memoria asociada.
Tipo de operando de datos Rango del DL06
5
aaa bb
.....................................
Memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A
B Vea el mapa de memoria 0 a 15
6
Puntero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PB Vea el mapa de memoria 0 a 15

En el ejemplo siguiente de Bit of Word, cuando la entrada X1 y el bit 4 de V1400 están ON,
7
se energizará la salida Y5. Note que en DirectSOFT se usa “B”1400.4.
DirectSOFT
DirectSOFT32 8
X1 B1400.4 Y5

OUT
9
Programador D2-HPP
10
STR

AND SHFT
1

B
ENT

V 1 4 0 0
11
K 4 ENT

OUT 5 ENT
12
13
En el siguiente ejemplo de And Not Bit-of-Word, cuando la entrada X1 está ON y el bit 4 de
V1400 está OFF, se energizará la salida Y5. 14
DirectSOFT
DirectSOFT32

X1 B1400.4 Y5

OUT
A
B
Programador D2-HPP

STR 1 ENT C
ANDN SHFT B V 1 4 0 0

K 4 ENT D
OUT 5 ENT

Manual del PLC DL06, 2a. edición en español, 6/07 5–15


Capítulo 5: Instrucciones Booleanas

La instrucción AND Store (AND STR)


La instrucción ANDSTR hace una función AND
1 DS5 Implied lógica con dos ramas de un renglón en serie. Ambas
OUT
HPP Usado 1 2
ramas deben comenzar con la instrucción STR.
2
La instrucción OR Store (OR STR)
3 La instrucción ORSTR hace una función OR lógica
1

OUT
DS5 Implied
con dos ramas de un renglón en paralelo. Ambas
4 HPP Usado
ramas deben comenzar con la instrucción STR. 2

5
En el siguiente ejemplo, la rama compuesta de los contactos X2, X3, y X4 se ha operado AND
6 con la rama compuesta del contacto X1.
DirectSOFT
Direct SOFT32 Programador D2-HPP
7 X1 X2 X3 Y5 $ B ENT
STR 1

8 X4
OUT
$
STR
C
2
ENT

V D
9 Q
AND
E
3
ENT

ENT
OR 4
10 L
ANDST
ENT

GX F
11 OUT 5
ENT

12 En el siguiente ejemplo OR , la rama compuesta de los contactos X1 y X2 se han operado OR


con la rama compuesta de los contactos X3 y X4.
13 DirectSOFT
Direct SOFT32 Programador D2-HPP

X1 X2 Y5 $ B ENT
14 OUT
V
STR
C
1

ENT
AND 2
X3 X4
A $
STR
D
3
ENT

V E
B M
AND 4
ENT

ENT
ORST

C GX
OUT
F
5
ENT

5–16 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

La instrucción OUT (OUT)


Aaaa
La instrucción OUT contiene el estado del renglón (ON/OFF) y
DS5 Usado
HPP Usado
deja salir el estado discreto (ON/OFF) al punto especificado de la OUT 1
memoria imagen.
No debe usarse más de una instrucción OUT que referencie la misma localización discreta ya 2
que sólo la última instrucción OUT en el programa controlará el punto físico de salida. En vez
de eso, use la instrucción OROUT. 3
Tipo de operando de datos Rango del DL06
....................................A
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
aaa
0–777
4
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777
Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777 5
En el siguiente ejemplo Out, cuándo la entrada X1 está ON, se activarán las salidas Y2 y Y5.
Direct SOFT32
DirectSOFT Programador D2-HPP
6
X1

OUT
Y2 $
STR
B
1
ENT 7
GX C ENT
OUT 2

OUT
Y5
GX
OUT
F
5
ENT
8
La instrucción Or Out (OROUT) 9
La instrucción OROUT permite que más de un renglón de
DS5 Usied
HPP Usado
lógica discreta controle una sola salida. Pueden ser usadas
A aaa
OROUT
10
múltiples instrucciones OROUT que referencian la misma
bobina de salida, ya que todos los contactos que controlan la
salida son operados con la función OR. Si el estado de cualquier
11
renglón está ON, la salida estará también ON.
Tipo de operando de datos Rango del DL06
12
A
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
aaa
0–777
13
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0-777
Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777 14
En el ejemplo siguiente, cuando una o las dos salidas X1 o X4 están ON, en cualquier parte del
programa, se energizará la salida Y2 . A
DirectSOFT
Direct SOFT32 Programador D2-HPP

X1 Y2

OR OUT
$
STR
B
1
ENT
B
O D F C
INST#
$
3
E
5
ENT ENT
2
ENT
C
ENT
STR 4
X4 Y2

OR OUT
O
INST#
D
3
F
5
ENT ENT C
2
ENT D

Manual del PLC DL06, 2a. edición en español, 6/07 5–17


Capítulo 5: Instrucciones Booleanas

La instrucción Out Bit-of-Word (OUT)


La instrucción OUT tiene el estado del renglón (ON/OFF) y
1 DS5 Usado
HPP Usado
produce el estado discreto (ON/OFF) del bit especificado en la
Aaaa.bb
dirección de memoria referida. Generalmente no deben ser usadas
2 múltiples instrucciones OUT que se refieren al mismo bit de la
misma palabra puesto que solamente la última instrucción en el
OUT

programa controlará el estado del bit.


3
Tipo de operando de datos Rango del DL06
4 .....................................
Memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A
B
aaa
Vea el mapa de memoria
bb
0 a 15
Puntero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PB Vea el mapa de memoria 0 a 15
5
NOTA: Si la palabra Bit-of-Word se entra como V1400.3 en DirectSOFT, ser'a convertida a B1400.3. :a
6 DirectSOFT
DirectSOFT32

X1 B1400.3
7 OUT

8 Programador D2-HPP
B1401.6

OUT

STR 1 ENT
9 OUT SHFT B V 1 4 0 0

K 3 ENT

10 OUT SHFT B V 1 4 0 1

K 6 ENT

11 palabra Bit-of-Word puede ser también ingresada como B1400.3.

En el ejemplo siguiente de la instrucción OUT, cuando la entrada X1 está encendida, el bit 3


12 de V1400 y el bit 6 de V1401 se activarán.
El ejemplo siguiente de Out Bit-of-Word contiene dos instrucciones Out Bit-of-Word usando
13 el mismo bit en la misma palabra de memoria. El estado final del bit 3 de V1400 es controlado
en última instancia por el último renglón de lógica en el que es referido, es decir, X1 va a forzar
14 el estado lógico
controlado por X0. Para X0 B1400.3
evitar esta situación, no
A deben ser usadas múltiples
OUT

instrucciones Out Bit-of-


B Word que usan la misma
dirección en la
C programación.
X1 B1400.3
OUT
D

5–18 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

La instrucción Not (NOT)


La instrucción NOT invierte el estado del renglón
DS5 Usado
HPP Usado
en el punto de la instrucción. 1
En el ejemplo siguiente cuando X1 está apagado, Y2 se activará. Esto es porque la instrucción
NOT invierte el estado del renglón. 2
DirectSOFT
DirectSOFT32

X1 Y2
Programador D2-HPP

$ B ENT
3
STR 1
OUT
SHFT N
TMR
O
INST#
T
MLR
ENT 4
GX C ENT
OUT 2
5
NOTE: DirectSOFT Release 1.1i and later supports the use of the NOT instrucción. The above example
renglón is merely intended to show the visual representation of the NOT instrucción. The NOT instrucción can
6
only be selected in DirectSOFT from the Instrucción Browser. The renglón cannot be created or displayed in
DirectSOFT versions earlier than 1.1i. 7
La instrucción Positive Differential (PD)
La instrucción PD se conoce típicamente como A aaa
8
DS5 Usado "one shot". Cuándo la lógica de entrada produce PD
HPP Usado una transición de OFF para ON, la salida se 9
Tipo de operando de datos Rango del DL06 10
....................................A aaa
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y
0–777
0–777
11
Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777
12
activará por un barrido de la CPU.
En el ejemplo siguiente, cada vez que X1 hace una transición de OFF para ON, C0 se activará 13
DirectSOFT
DirectSOFT32 Programador D2-HPP 14
X1 C0 $ B ENT
STR 1
PD
SHFT P
CV
SHFT D
3
A
0
A
por un barrido.
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–19


Capítulo 5: Instrucciones Booleanas

La instrucción Store Positive Differential (STRPD)


La instrucción STRPD comienza un nuevo renglón o una rama Aaaa
1 DS5 Usado adicional en un renglón con un contacto. El contacto se cierra en
HPP Usado un barrido de la CPU cuando el estado del punto asociado de
2 memoria imagen hace una transición de OFF para ON.
Después, el contacto permanece abierto hasta que haya otra transición de OFF para ON (el
símbolo dentro del contacto representa la transición). Esta función se llama a veces "one shot".
3
La instrucción Store Negative Differential (STRND)
4 La instrucción STRND comienza un nuevo renglón o una rama
adicional en un renglón con un contacto. El contacto se cierra en
Aaaa

un barrido de la CPU cuando el estado del punto asociado de


5 DS5 Usado
HPP Usado
memoria imagen hace una transición de ON para OFF. Luego el
contacto permanece abierto hasta que haya otra transición de ON para OFF (el símbolo dentro
6 del contacto representa la transición).
NOTE: When using DirectSOFT, these instruccións can only be entered from the Instrucción Browser.
7
Tipo de operando de datos Rango del DL06
8 ....................................A
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
aaa
0–777
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777
9 Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777
Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777
10 Temporizador . . . . . . . . . . . . . . . . . . . . . . . . . . . T
Contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CT
0–377
0–177

11 En el ejemplo siguiente, cada vez que X1 hace la transición de OFF para ON, Y4 se activará por
un barrido.
12 DirectSOFT
DirectSOFT32 Programador D2-HPP

X1 $ SHFT P D B ENT
13 OUT
Y4

GX
STR

E
CV

ENT
3 1

OUT 4

14
En el ejemplo siguiente, cada vez que X1 hace la transición de ON para OFF, la salida Y4 se
A activará por un barrido.
DirectSOFT
B DirectSOFT32
X1 Y4
Programador D2-HPP
$
STR
SHFT N
TMR
D
3
B
1
ENT

OUT
C GX
OUT
E
4
ENT

5–20 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

La instrucción Or Positive Differential (ORPD)


La instrucción ORPD hace on OR lógico de un contacto en
DS5 Implied paralelo a otro contacto en un renglón. El estado del 1
HPP Usado contacto estará abierto hasta que el punto asociado de la Aaaa
memoria imagen hace una transición de OFF para ON,
cerrándose en un barrido de la CPU. Después de eso, sigue
2
abierto hasta otra transición.
3
La instrucción Or Negative Differential (ORND)
DS5 Implied
La instrucción ORPND hace on OR lógico de un contacto
en paralelo a otro contacto en un renglón. El estado del
4
HPP Usado contacto estará abierto hasta que el punto asociado de la Aaaa
memoria imagen hace una transición de ON para OFF, 5
cerrándose en un barrido de la CPU. Después de eso, sigue
abierto hasta otra transición. 6
Tipo de operando de datos Rango del DL06
....................................A
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
aaa
0–777
7
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777
Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777 8
Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777
Temporizador . . . . . . . . . . . . . . . . . . . . . . . . . . . T
Contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CT
0–377
0–177
9
En el ejemplo siguiente, se activará la salida Y5 cuando X1 está ON o por un barrido de la CPU 10
cuando haya una transición en X2 desde OFF a ON
11
DirectSOFT
DirectSOFT32 Programador D2-HPP

X1 Y5
$
STR
B
1
ENT 12
OUT Q SHFT P D C ENT

X2 GX
OUT
OR
F
CV

5
3

ENT
2
13
14
En el ejemplo siguiente, se activará la salida Y5 cuando X1 está ON o también por un barrido
de la CPU cuando haya una transición en X2 desde ON a OFF. A
DirectSOFT
DirectSOFT32 Programador D2-HPP
B
$ B ENT
Y5
X1
OUT Q
STR

OR
SHFT N
TMR
1
D
3
C
2
ENT
C
X2 GX
OUT
F
5
ENT
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–21


Capítulo 5: Instrucciónes Booleanas

La instrucción And Positive Differential (ANDPD)


La instrucción ANDPD hace la función AND lógica
1 DS5 Implied
entre un contacto normalmente abierto en serie con otro
HPP Usado
contacto en un renglón. El estado del contacto estará Aaaa
2 abierto hasta que el punto asociado de la memoria imagen
haga una transición de OFF para ON, cerrándolo por un
barido de la CPU. Después de eso, sigue abierto hasta otra
3 transición de OFF para ON.

4 La instrucción And Negative Differential (ANDND)


DS5 Implied
La instrucción ANDND hace la función AND lógica Aaaa
HPP Usado
entre un contacto normalmente abierto en serie con otro
5 contacto en un renglón. El estado del contacto estará
abierto hasta que el punto asociado de la memoria imagen
6 haga una transición de ON para OFF, cerrándolo por un
barrido de la CPU. Después de eso, sigue abierto hasta otra transición de ON para OFF.
7 Tipo de operando de datos Rango del DL06
....................................A aaa
8 Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y
0–777
0–777
Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777
9 Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777
Temporizador . . . . . . . . . . . . . . . . . . . . . . . . . . . T 0–377
10 Contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CT 0–177

En el ejemplo siguiente, se activará Y5 cuando X1 está ON y al mismo tiempo en un barrido


11 de la CPU cuando haya una transición en X2 desde OFF para ON.

DirectSOFT
12 DirectSOFT32

X1 X2
Programador D2-HPP
$ B ENT
Y5 STR 1

13 OUT Q
OR
SHFT P
CV
D
3
C
2
ENT

GX F
ENT
OUT 5
14 En el ejemplo siguiente, se activará Y5 cuando X1 está ON y al mismo tiempo en un barrido de
la CPU cuando haya una transición en X2 desde ON a OFF.
A
B DirectSOFT
DirectSOFT32

X1 X2 Y5
Programador D2-HPP
$ B ENT
STR 1

C OUT Q
OR
SHFT N
TMR
D
3
C
2
ENT

GX F
ENT
OUT 5
D

5–22 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

La instrucción Set (SET) Rango opcional


La instrucción SET coloca ON o prende un punto de de memoria
DS5 Usado memoria imagen o un rango consecutivo de memorias A aaa aaa 1
HPP Usado imagen. Una vez que la memoria se hace ON SET
permanecerá así hasta que sea vuelta a OFF por la
instrucción RESET. No es necesario que el renglón que
2
controle la instrucción SET permanezca ON.
3
La instrucción Reset (RST) Rango opcional

DS5 Usado
Esta instrucción vuelve a 0, a OFF o apaga un punto de
memoria imagen o un rango consecutivo de memorias A aaa
.
de memoria
aaa 4
HPP Usado imagen. Una vez que la localización de memoria es RST
OFF no es necesario que el renglón permanezca ON. 5
Tipo de operando de datos Rango del DL06 6
....................................A aaa
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–777 7
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777
Relevadores de control . . . . . . . . . . . . . . . . . . . C
Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . S
0–1777
0–1777
8
Temporizador . . . . . . . . . . . . . . . . . . . . . . . . . . . T 0–377
Contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CT 0–177 9
En el ejemplo siguiente cuando X1 está ON, Y2 hasta Y5 se activarán o se harán ON y
permanecerán energizadas. 10
DirectSOFT
DirectSOFT32

X1
Programador D2-HPP
11
Y2 Y5 $ B ENT
STR 1
SET
X
SET
C
2
F
5
ENT
12
13
En el ejemplo siguiente cuando X1 está ON, las salidas Y2 hasta Y5 será vueltas a OFF y
14
permanecerán desenergizadas.
A
DirectSOFT
DirectSOFT32 Programador D2-HPP B
X2 $ B
Y2 Y5 ENT
RST
S
STR
C
1
F ENT
C
RST 2 5

Manual del PLC DL06, 2a. edición en español, 6/07 5–23


Capítulo 5: Instrucciones Booleanas

La instrucción Set Bit-of-Word (SET)


La instrucción SET activa un bit en una dirección de memoria V.
1 DS5 Usado
HPP Usado
Una vez que el bit se haga ON seguirá ON hasta que se repone a Aaaa.bb
OFF usando la instrucción RST. No es necesario que el renglón que SET
2 controla la instrucción SET permanezca activado.
La instrucción Reset Bit-of-Word (RST)
3 La instrucción RST repone a OFF un bit en una dirección de
A aaa.bb
DS5 Usado
memoria V. Una vez que el bit se haga OFF no es necesario que el
4 HPP Usado
renglón que controla la instrucción RST permanezca activado. RST

5 Tipo de operando de datos Rango del DL06


....................................A aaa bb
6 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PB
Vea el mapa de memoria
Vea el mapa de memoria
0 a 15
0 a 15

7 En el ejemplo siguiente cuando X1 se activa ON, el bit 1 en V1400 se va al estado ON.


DirectSOFT
DirectSOFT32

8 X1
B1400.1
SET

9
10 Programador D2-HPP

STR 1 ENT

11 SET SHFT B V 1 4 0 0

K 1 ENT
12
En el ejemplo siguiente cuando X2 se activa ON, el bit 1 en V1400 se va al estado OFF.
13 DirectSOFT
DirectSOFT32

X2
B1400.1

14 RST

A Programador D2-HPP

B STR 2 ENT

RST SHFT B V 1 4 0 0

C K 1 ENT

5–24 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

La instrucción Pause (PAUSE)


La instrucción Pause incapacita la actualización de salidas en un
DS5 Usado
HPP Usado
rango de salidas. El programa ladder continuará funcionando y Y aaa aaa
1
actualizando la memoria imagen. Sin embargo, las salidas en el PAUSE
rango especificado en la instrucción Pause serán apagadas en los
puntos de salidas (Colocadas OFF).
2
Tipo de operando de datos Rango del DL06 3
....................................A aaa
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777 4
En el ejemplo siguiente, cuándo X1 está ON, se apagarán las salidas Y5 hasta Y7. La ejecución
del programa ladder no se afectará. 5
DirectSOFT
DirectSOFT32
6
X1 Y5 Y7

PAUSE 7
Ya que el programador D2-HPP no tiene una tecla específica de Pause, usted puede utilizar el
8
número correspondiente de la instrucción para la entrada (# 960), o puede teclear cada letra del
comando. 9
Programador D2-HPP

$ B ENT
10
STR 1
O
INST#
J
9
G
6
A
0
ENT ENT D
3
F
5
ENT 11
En algunos casos, usted puede querer que ciertos puntos de salida en el rango especificado en la 12
instrucción Pause funcionen normalmente. En ese caso, use AUX 58 para cancelar la
instrucción Pause. 13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–25


Capítulo 5: Instrucciones Booleanas

Instrucciones de comparación booleanas


1 La instrucción Store If Equal (STRE)
2 DS5 Implied
La instrucción STRE comienza una rama nueva o adicional
en un renglón con un contacto de comparación V aaa B bbb
HPP Usado
normalmente abierto. El contacto estará ON cuándo el valor
3 contenido en Vaaa es igual al valor contenido en Bbbb.
La instrucción Store If Not Equal (STRNE)
4 La instrucción STRE comienza una rama nueva o adicional V aaa B bbb
DS5 Implied
en un renglón con un contacto de comparación
5 HPP Usado
normalmente abierto. El contacto estará ON cuándo el valor
de Vaaa no es igual a Bbbb.
6 Tipo de operando de datos Rango del DL06
....................................B aaa bbb
7 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
Vea el mapa de memoria
Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K –– 0–9999
8 En el ejemplo siguiente, cuando el valor BCD en la memoria V2000 es igual a 4933, se activará
la salida Y3.
9
DirectSOFT
10 DirectSOFT32

V2000 K4933 Y3
Programador D2-HPP

$
STR
SHFT E
4
C
2
A
0
A
0
A
0
OUT

11 GX
E
4
J

D
9
D

ENT
3
D
3
ENT

OUT 3

12
En el ejemplo siguiente, cuando el valor BCD en la memoria V2000 no sea igual a 5060, se
13 activará la salida Y3.

14 DirectSOFT
DirectSOFT32 Programador D2-HPP

Y3 SP SHFT E C A A A
V2000 K5060

A OUT
STRN
F
5
A
4

0
G
6
A
2

0
ENT
0 0 0

GX D
B OUT 3
ENT

C
D

5–26 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

La instrucción Or If Equal (ORE)


La instrucción ORE conecta un contacto comparativo
DS5 Implied
HPP Usado
normalmente abierto en paralelo con otro contacto. El V aaa B bbb
1
contacto estará encendido cuando Vaaa = Bbbb.
La instrucción Or If Not Equal (ORNE) 2
La instrucción ORNE conecta un contacto comparativo
DS5 Implied
HPP Usado
normalmente cerrado en paralelo con otro contacto. El 3
contacto estará encendido cuando Vaaa no es igual a V aaa B bbb
Bbbb. 4
Tipo de operando de datos
....................................B aaa
Rango del DL06
bbb
5
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria Vea el mapa de memoria 6
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K –– 0–9999

En el ejemplo siguiente, cuando el valor en la dirección de memoria V2000 es igual a 4500 o


7
V2002 es igual a 2500, se energizará la salida Y3.
8
DirectSOFT
DirectSOFT32

V2000 K4500 Y3
Programador D2-HPP

$
STR
SHFT E
4
C
2
A
0
A
0
A
0
9
OUT

V2002 K2345
E

Q
4
F
5

SHFT
A

E
0
A
0
C
ENT

A A C
10
OR 4 2 0 0 2
C

GX
2
D
3
E

D
4
F
5
ENT
11
ENT
OUT 3

12
En el ejemplo siguiente, cuando el valor en la dirección de memoria V2000 es igual a 3916 o
V2002 es diferente a 2500, se energizará la salida Y3. 13
DirectSOFT
DirectSOFT32 Programador D2-HPP
14
$ E C A A A
V2000 K3916 Y3
OUT D
STR
J
SHFT

B
4
G ENT
2 0 0 0
A
3 9 1 6

V2002 K2500 R

C
ORN
F
SHFT E

A
4
A
C
2
A
0
A
0
C
2 B
ENT
2 5 0 0
GX
OUT
D
3
ENT C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–27


Capítulo 5: Instrucciones Booleanas Comparativas

La instrucción And If Equal (ANDE)


La instrucción ANDE conecta un contacto
1 DS5 Implied
comparativo normalmente abierto en serie con otro
V aaa B bbb
HPP Usado
contacto. El contacto estará encendido cuando
2 Vaaa = Bbbb.
La instrucción And If Not Equal (ANDNE) V aaa B bbb
3 DS5 Implied
HPP Usado
La instrucción ANDNE conecta un contacto
comparativo normalmente cerrado en serie con otro
4 contacto. El contacto estará encendido cuando Vaaa
no es igual a Bbbb.
5 Tipo de operando de datos Rango del DL06
6 ....................................B
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria
bbb
Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria Vea el mapa de memoria
7 Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K –– 0–9999

En el ejemplo siguiente, cuando el valor BCD en la dirección de memoria V2000 es igual a


8 5000 o V2002 es igual a 2345, se energizará la salida Y3.

9 DirectSOFT
DirectSOFT32 Programador D2-HPP

V2000 K5000 V2002 K2345 Y3 $ SHFT E C A A A

10 OUT
F
STR

5
A
0
A
4

0
A
0
ENT
2 0 0 0

V E C A A C

11 C
AND
SHFT

D E
4
F ENT
2 0 0 2

2 3 4 5

12 GX
OUT
D
3
ENT

13 En el ejemplo siguiente, cuando el valor BCD en la dirección de memoria V2000 es igual a


5000 o V2002 es diferente a 2345, se energizará la salida Y3.

14 DirectSOFT
DirectSOFT32 Programador D2-HPP

V2000 K5000 V2002 K2345 Y3 $ SHFT E C A A A


STR 4 2 0 0 0

A OUT
F
5
A
0
A
0
A
0
ENT

V SHFT E C A A C

B C
AND

2
D
3
E
4

4
F
5
ENT
2 0 0 2

GX D ENT
C OUT 3

5–28 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas Comparativas

La instrucción Comparative Store (STR)


La instrucción de comparación STR comienza una rama nueva o A aaa B bbb
DS5 Implied
adicional en un renglón con un contacto de comparación 1
HPP Usado
normalmente abierto. El contacto estará ON cuándo aaa es igual a
o mayor que Bbbb. 2
La instrucción Store Not (STRN)
DS5 Implied
La instrucción de comparación STRN comienza una rama nueva
A aaa B bbb
3
HPP Usado
o adicional en un renglón con un contacto de comparación
normalmente cerrado. El contacto estará ON cuándo aaa sea
menor que Bbbb.
4
Tipo de operando de datos
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A/B aaa
Rango del DL06
bbb
5
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p Vea el mapa de memoria Vea el mapa de memoria 6
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K –– 0–9999
Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TA
Contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . CTA
0–377
0–177
7
En el ejemplo siguiente, cuando el valor en la dirección de memoria V2000 es mayor o igual a 8
1000, se energizará la salida Y3..
DirectSOFT
DirectSOFT32 Programador D2-HPP 9
V2000 K1000 Y3 $ SHFT V C A A A

OUT
STR
B
1
A
0
A
AND

0
A
2

0
ENT
0 0 0
10
GX D
OUT 3
ENT
11
12
En el ejemplo siguiente, cuando el valor en la dirección de memoria V2000 es menor que 4050,
se energizará la salida Y3. 13
DirectSOFT
DirectSOFT32 Programador D2-HPP
14
V2000 K4050 Y3
OUT
SP
STRN
E
SHFT

A
V

F
AND
C

A
2
A
0
A
0
A
0 A
ENT
4 0 5 0
GX
OUT
D
3
ENT B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–29


Capítulo 5: Instrucciones Booleanas Comparativas

La instrucciónOr comparativa(OR)
La instrucción OR comparativa conecta un contacto
1 DS5 Implied
comparativo normalmente abierto en paralelo con otro A aaa B bbb
HPP Usado
contacto. El contacto será encendido cuando Aaaa es igual o
2 mayor que Bbbb.
La instrucción Or Not compArativa(ORN)
3 DS5 Implied
La instrucción ORN comparativa conecta un contacto
A aaa B bbb
comparativo normalmente cerrado en paralelo con otro
HPP Usado
4 contacto. El contacto estará encendido cuando Aaaa es
menor que Bbbb.
5 Tipo de operando de datos Rango del DL06
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A/B aaa bbb
6 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
PUnterO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p
Vea el mapa de memoria
Vea el mapa de memoria
Vea el mapa de memoria
Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K –– 0–9999
7 Temporizador . . . . . . . . . . . . . . . . . . . . . . . . . TA 0–377
Contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . CTA 0–177
8 En el ejemplo siguiente, cuando el valor BCD en la dirección de memoria V2000 = 6045 o
V2002 욷 2345, se energizará la salida Y3.
9
DirectSOFT Programador D2-HPP

10 DirectSOFT32

V2000 K6045 Y3
$
STR
SHFT E
4
C
2
A
0
A
0
A
0
OUT G A E F ENT

11 V2002 K2345 Q
6

OR
0

SHFT
4
V
AND
5
C
2
A
0
A
0
C
2
C D E F

12 GX
OUT
2 3
D
4

3
ENT
5
ENT

13
14 En el ejemplo siguiente, cuando el valor BCD en la dirección de memoria V2000 = 1000 o
V2002 es menor que 2500, se energizará la salida Y3.
A DirectSOFT
DirectSOFT32 Programador D2-HPP
$ E C A A A

B V2000 K1000 Y3
OUT B
STR

1
SHFT

A
0
A
4

0
A
0
ENT
2 0 0 0

C V2002 K2500
R

C
ORN
F
SHFT

A
V

A
AND
C

ENT
2
A
0
A
0
C
2

2 5 0 0

D GX
OUT
D
3
ENT

5–30 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Booleanas

La instrucción And (AND)


La instrucción de comparación AND conecta un contacto
DS5 Implied comparativo normalmente abierto en serie con otro contacto.
A aaa B bbb 1
HPP Usado El contacto estará activado a cuando Aaaa es igual o mayor que
Bbbb. 2
La instrucción And Not (ANDN)
DS5 Implied
La instrucción de comparación ANDN conecta un contacto
A aaa B bbb
3
comparativo normalmente cerrado en serie con otro contacto.
HPP Usado
El contacto estará activado cuando Aaaa sea menor que Bbbb. 4
Tipo de operando de datos Rango del DL06
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A/B aaa bbb 5
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Vea el mapa de memoria
––
Vea el mapa de memoria
0–9999
6
Temporizador . . . . . . . . . . . . . . . . . . . . . . . . . TA 0–377
Contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . CTA 0–177 7
En el ejemplo siguiente, cuando el valor en la dirección de memoria V2000 es igual a 5000 y
V2002 es mayor o igual a 2345, se energizará la salida Y3. 8
DirectSOFT
DirectSOFT32 Programador D2-HPP
9
V2000 K5000 V2002 K2345 Y3
OUT
$

F
STR
A
SHFT E

A
4
A
C
2

ENT
A
0
A
0
A
0
10
5 0 0 0
V

C
AND
D
SHFT

E
V

F
AND
C
2

ENT
A
0
A
0
C
2 11
2 3 4 5
GX
OUT
D
3
ENT
12
13
En el ejemplo siguiente, cuando el valor en la dirección de memoria V2000 es igual a 7000 y
V2002 es menor que 2500, se energizará la salida Y3. 14
DirectSOFT
DirectSOFT32 Programador D2-HPP

$ E C A A A
A
V2000 K7000 V2002 K2500 Y3 SHFT
STR 4 2 0 0 0
OUT H
7
A
0
A
0
A
0
ENT B
W SHFT V C A A C
ANDN AND 2 0 0 2
C
2
F
5
A
0
A
0
ENT C
GX SHFT Y D ENT
OUT AND 3
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–31


Capítulo 5: Instrucciones Inmediatas

Instrucciones de acción inmediata


1 La instrucción Store Immediate (STRI)
2 DS5 Implied
La instrucción STRI comienza una rama nueva o
adicional en un renglón. El estado del contacto será el X aaa
HPP Usado
mismo que el estado del punto asociado de la entrada
3 en el momento que la instrucción se ejecuta. La memoria
imagen no se actualiza.
4 La instrucción Store Not Immediate (STRNI)
La instrucción STRNI comienza una rama nueva o
5 DS5 Implied
HPP Usado
adicional en un renglón. El estado del contacto será
opuesto al estado del punto asociado de la entrada en
X aaa

el momento que se ejecuta la instrucción. La memoria


6 imagen no se actualiza.
Tipo de operando de datos Rango del DL06
7 aaa
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–777
8 En el ejemplo siguiente, cuando X1 está ON, se activará la salida Y2.
9 DirectSOFT
DirectSOFT32

X1 Y2
Programador D2-HPP

$ SHFT I B ENT
STR 8 1

10 OUT
GX
OUT
C
2
ENT

11 En el ejemplo siguiente, cuando X1 está OFF, se activará la salida Y2.


DirectSOFT
DirectSOFT32 Programador D2-HPP
Y2
12 X1
OUT
SP
STRN
GX
SHFT I

C
8
B
1
ENT

ENT
OUT 2

13
La instrucción Or Immediate (ORI)
14 DS5 Implied
La instrucción ORI conecta dos contactos en paralelo. El estado
del contacto será igual que el estado del punto asociado de la X aaa
HPP Usado
A entrada en el momento que se ejecuta la instrucción. La memoria
imagen no es actualizada.
B La instrucción Or Not Immediate (ORNI)
La instrucción ORNI conecta dos contactos en paralelo. El
DS5 Implied X aaa
C HPP Usado
estado del contacto será opuesto al estado del punto asociado de
la entrada en el momento que se ejecuta la instrucción. La memoria
imagen no es actualizada.
D

5–32 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Inmediatas

Tipo de operando de datos Rango del DL06

Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
aaa
0–777
1
En el ejemplo siguiente, cuando X1 o X2 están encendidas, se energizará la salida Y5.
DirectSOFT
DirectSOFT32 Programador D2-HPP
2
X1 Y5 $ B ENT

X2
OUT
Q
STR

OR
SHFT I
1

8
C
2
ENT
3
GX F ENT

En el ejemplo siguiente, cuando X1 está encendida o X2 está apagada, se energizará Y5.


OUT 5
4
DirectSOFT
DirectSOFT32
X1 Y5
Programador D2-HPP

$
STR
B
1
ENT
5
OUT

X2
R
ORN
GX
OUT
SHFT I

F
8

5
ENT
C
2
ENT
6
La instrucción And Immediate (ANDI) 7
DS5 Implied
La instrucción ANDI conecta dos contactos en serie. El estado del contacto será igual que el
HPP Usado
estado del punto asociado de entrada en el momento que se ejecuta la instrucción. La memoria
imagen no es actualizada.
8
La instrucción And Not Immediate (ANDNI) X aaa 9
La instrucción ANDNI conecta dos contactos en serie. El
DS5 Implied
HPP Usado
estado del contacto será opuesto al estado del punto
asociado de entrada en el momento que se ejecuta la
10
instrucción. La memoria imagen no es actualizada.
X aaa 11
12
Tipo de operando de datos Rango del DL06
aaa
13
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–777

En el ejemplo siguiente, cuando X1 y X2 están encendidas, se energizará Y5.


14
DirectSOFT
DirectSOFT32
X1 X2 Y5

OUT
Programador D2-HPP

$
STR
B
1
ENT
A
V SHFT I C ENT
AND
GX
OUT
F
8

5
ENT
2
B
En el ejemplo siguiente, cuando X1 está encendida y X2 está apagada, se energizará Y5.
DirectSOFT
DirectSOFT32 Programador D2-HPP
C
X1 X2 Y5

OUT
$

W
ANDN
STR

SHFT
B

I
1

8
ENT

C
2
ENT
D
GX F ENT
OUT 5

Manual del PLC DL06, 2a. edición en español, 6/07


5–33
Capítulo 5: Instrucciones Inmediatas

La instrucción Out Immediate (OUTI)


La instrucción Inmediata OUTI refleja el estado del renglón
1 DS5 Usado
(ON/OFF) y las salidas del estado discreto (ON/OFF) en el
HPP Usado
punto especificado de la salida del módulo y la memoria
2 imagen, en el momento que se ejecuta la instrucción. Y aaa
OUTI
Si se usan múltiplas instrucciones OUTI que se refieren al
3 mismo punto discreto es posible que el estado de la salida del
módulo cambie múltiples veces en un barrido de la CPU. Vea
OR OUT Inmediato.
4 La instrucción Or Out Immediate (OROUTI)
5 DS5 Usado
La instrucción OROUTI ha sido diseñada para usar más de un
renglón de lógica discreta para controlar una sola salida. Se
HPP Usado puede usar múltiples instrucciones OROUT con la misma Y aaa
6 bobina de salida, desde que todos los contactos de control de OROUTI
la salida se operan OR juntos.
7 Si el estado de cualquier renglón está ON en el momento que se
ejecuta la instrucción, la salida estará también ON.
8 Tipo de operando de datos Rango del DL06
aaa
9 Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777

En el ejemplo siguiente, cuándo X1 está ON, prenderá el punto Y2 de la salida en el módulo de


10 salida. Para entrar la instrucción en el programador D2-HPP, puede usar el número de la
instrucción #350 como se muestra, o teclee cada letra del comando.
11 DirectSOFT
DirectSOFT32 Programador D2-HPP

X1 Y2 $ B ENT
12 OUTI
O
STR
D F
1
A ENT ENT
INST# 3 5 0

13 C
2
ENT

En el ejemplo siguiente, cuándo X1 o X4 están ON, se activará la salida Y2.


14
DirectSOFT
A X1 Y2
Programador D2-HPP

$
STR
B
1
ENT

OR OUTI O D F A

B X4 Y2
INST#
C
3

2
ENT
5 0
ENT ENT

OR OUTI
C $

O
STR
D
E

F
4
ENT

A ENT ENT
INST# 3 5 0

D C
2
ENT

5–34 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Inmediatas

La instrucción Load Immediate Formatted (LDIF)


La instrucción LDFI carga un valor binario de 1 hasta 32 bits
DS5 Usado
HPP Usado
en el acumulador. El valor refleja el estado actual del módulo
OUTIF
K bbb
Y aaa
1
(s) de la entrada(s) en el momento que la instrucción se ejecuta.
Los bits del acumulador que no son usados por la instrucción
son colocados en OFF.
2
Tipo de operando de datos Rango del DL06
3
aaa
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0-777 4
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-32

En el ejemplo siguiente, cuándo C0 está ON, el modelo binario de X10-X17 se carga en el


5
acumulador usando la instrucción LDIF. La instrucción OUTIF se usa para copiar el número
especificado de bits en el acumulador a las salidas especificadas en el módulo de salidas físicas, 6
tales como Y30-Y37.
Esta técnica es útil para copiar rápidamente un conjunto de valores de entradas a salidas (sin esperar 7
el barrido de la CPU).
8
CO
LDIF
K8
X10 Dirección
X10
Constante
K8
X17 X16 X15 X14 X13 X12 X11 X10
ON OFF ON ON OFF ON OFF ON
9
Carga el valor de 8 direcciones
discretas consecutivas al
acumulador, comenzando en X10 Los bits no usados del
acumulador son colocados en cero.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
10
Acc. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 1 0 1

OUTIF Y30
11
K8

Copia el valor contenido en los 8 bits más


bajos del acumulador a Y30 - Y37
Dirección
Y30
Constante
K8
Y37 Y36 Y35 Y34 Y33 Y32 Y31 Y30
ON OFF ON ON OFF ON OFF ON
12
13
Programador D2-HPP

$ A
14
NEXT NEXT NEXT NEXT ENT
STR 0

SHFT L
ANDST
D
3
I
8
F
5
B
1
A
0
I
8
ENT A
GX I F D A I
OUT
SHFT
8 5 3 0 8
ENT
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–35


Capítulo 5: Instrucciones Inmediatas

La instrucción Set Immediate (SETI)


La instrucción SET Inmediate (SETI) coloca una salida
1 DS5 Usado
HPP Usado
física o un rango de salidas en la memoria imagen y el
punto (s) correspondiente(s) de la salida en el momento Y aaa aaa
2 en que se ejecuta la instrucción. Una vez que las salidas se
configuran ON no es necesario que el renglón
SETI

permanezca ON. La instrucción RSTI se puede usar


3 para poner las salidas en OFF.

4 La instrucción Reset Immediate (RSTI)


La instrucción RSTI vuelve a 0 u OFF inmediatamente
DS5 Usado o apaga una salida o un rango de salidas en la memoria
5 HPP Usado imagen y el o los puntos de las salidas en el momento en
Y aaa
RSTI
aaa

que se ejecuta la instrucción. Una vez que las salidas son


6 colocadas en OFF no es necesario que el renglón
permanezca ON.
7 Tipo de operando de datos Rango del DL06
aaa
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777
8
En el ejemplo siguiente, cuándo X1 está ON, se colocará ON Y2 hasta Y5 en la memoria
9 imagen y en los puntos correspondientes de salidas físicas.

10 DirectSOFT
DirectSOFT32

X1 Y2 Y5
Programador D2-HPP

$ B ENT
STR 1

11 SETI X
SET
SHFT I
8
C
2
F
5
ENT

12
13 En el ejemplo siguiente, cuándo X1 está ON, Y5 hasta Y22 se colocará OFF en la memoria
imagen y en el o los módulos correspondiente de salidas físicas.
14 DirectSOFT
DirectSOFT32
Programador D2-HPP

A X1 Y5 Y22
RSTI
$
STR
B
1
ENT

S SHFT I F C C ENT
B RST 8 5 2 2

C
D

5–36 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Inmediatas

La instrucción Load Immediate (LDI)


La instrucción LDI carga un valor de 16 bits de la memoria en el
DS5 Usado
HPP Usado
acumulador. El rango válido de direcciones incluye todos los 1
LDI
puntos de entrada en la base local. El valor refleja el estado actual
de los puntos de entrada en el momento que se ejecuta la
instrucción. Esta instrucción se puede usar en vez de la instrucción
V aaa
2
de LDIF que requiere usted especificar el número de puntos de
entrada. 3
Tipo de operando de datos Rango del DL06
aaa
4
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V 40400-40437

En el ejemplo siguiente, cuándo C0 está ON, se carga en el acumulador el modelo binario de


5
X0-X17, usando la instrucción LDI.
La instrucción OUTI es usada para copiar los 16 bits en el acumulador a puntos de salidas, tales
6
como Y40-Y57.
Esta técnica es útil para copiar rápidamente un valor de entradas a puntos de salida (sin esperar
7
que ocurra un barrido de la CPU).
8
9
DirectSOFT
DirectSOFT32
C0 LDI

V40400
Dirección

V40400
X17 X16 X15 X14 X13 X12 X11 X10 X7
ON OFF ON ON OFF ON OFF OFF ON OFF ON ON OFF ON OFF ON
X6 X5 X4 X3 X2 X1 X0
10
Carga las entradas desde X0
hasta X17 al acumulador
inmediatamente
Los bits no usados del
11
acumulador son colocados en cero
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

OUTI
Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0 1 12
V40502

Copia el valor en el acumulador


a los puntos de salidas
13
Y40 hasta Y57 Dirección Y57 Y56 Y55 Y54 Y53 Y52 Y51 Y50 Y47 Y46 Y45 Y44 Y43 Y42 Y41 Y40
V40502 ON OFF ON ON OFF ON OFF OFF ON OFF ON ON OFF ON OFF ON
14
A
Programador D2-HPP

$ NEXT NEXT NEXT NEXT A ENT


B
STR 0

SHFT L
ANDST
D
3
I
8
E
4
A
0
E
4
A
0
A
0
ENT C
GX I E A F A C
OUT
SHFT
8
NEXT
4 0 5 0 2
ENT
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–37


Capítulo 5: Instrucciones Inmediatas

La instrucción Load Immediate Formatted (LDIF)


La instrucción LDFI carga un valor binario de 1 hasta 32 bits en el
1 DS5 Usado
HPP Usado
acumulador. El valor refleja el estado actual del módulo(s) de la LDIF X aaa
entrada(s) en el momento que la instrucción se ejecuta. Los bits del K bbb
2 acumulador que no son usados por la instrucción son colocados en
OFF.
3 Tipo de operando de datos Rango del DL06
aaa bbb
4 Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
Constantee . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
0-777
--
--
1-32

5 En el ejemplo siguiente, cuándo C0 está ON, el modelo binario de X10-X17 se carga en el


acumulador usando la instrucción LDIF. La instrucción OUTIF se usa para copiar el número
especificado de bits en el acumulador a las salidas especificadas en el módulo de salidas físicas,
6 tales como Y30-Y37.
Esta técnica es útil para copiar rápidamente un conjunto de valores de entradas a salidas (sin esperar
7 el barrido de la CPU).

8 DirectSOFT
DirectSOFT32
Dirección Constante
C0
LDIF X10 X17 X16 X15 X14 X13 X12 X11 X10

9 K8

Carga el valor de 8 direcciones


X10 K8 ON OFF ON ON OFF ON OFF ON

consecutivas discretas al
Los bits no usados del
acumulador, comenzando en X10

10 Acum. 0
acumulador son colocados en cero.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
8
0
7 6 5
1 0 1
4 3
1 0
2
1 0
1 0
1

11 OUTIF Y30
K8

12 Copia el valor de los 8 bits más


bajos del acumulador a las
salidas Y30-Y37
Dirección
Y30
Constante
K8
Y37 Y36 Y35 Y34 Y33 Y32 Y31 Y30
ON OFF ON ON OFF ON OFF ON

13
Programador D2-HPP

14 $
STR
NEXT NEXT NEXT NEXT A
0
ENT

SHFT L D I F B A I ENT
A GX
ANDST

SHFT I
3
F
8 5
D A
1 0
I
8

ENT
OUT 8 5 3 0 8

B
C
D

5–38 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

Instrucciones de temporizador, contadores y shift registers


Usando temporizadores o timers
1
Los temporizadores se usan para medir el tiempo de un evento por una cantidad de tiempo
deseada. El temporizador de una entrada medirá el tiempo mientras la entrada está activada.
2
Cuando la entrada cambia de activada a desactivada (ON a OFF) el valor corriente del
temporizador se va a 0. Hay bases de tiempo de un décimo de segundo y un centésimo de 3
segundo disponibles, con un tiempo máximo de 999,9 y 99,99 segundos respectivamente. Hay
un bit discreto asociado a cada temporizador para indicar que el valor corriente es igual a o
mayor que el valor prefijado. El diagrama que mide el tiempo abajo muestra la relación entre la
4
entrada del temporizador, el bit discreto asociado, el valor actual, y el valor prefijado del
temporizador. 5
Segundos

X1
0 1 2 3 4 5 6 7 8 X1
TMR
K30
T1 6
T1
Valor prefijado del temporizador 7
T1 Y0
Valor
corriente
0 10 20 30 40
1/10 de segundo
50 60 0
OUT
8
Hay algunos usos que necesitan un temporizador acumulador, queriendo decir que tiene la
capacidad de medir el tiempo, parar y después reanudar de donde paró. El temporizador
9
acumulador trabaja en forma similar al temporizador regular, pero se requieren dos entradas. La
entrada "enable" parte y para el temporizador. Cuando el temporizador para, se mantiene el 10
tiempo transcurrido. Cuando el temporizador comienza otra vez, el conteo de tiempo continúa
a partir del tiempo transcurrido. Cuando se activa la entrada "reset", el tiempo transcurrido es
apagado y el temporizador comenzará en 0 cuando se parte nuevamente. Hay bases de tiempo
11
de un décimo de segundo y un centésimo de segundo disponibles con un tiempo máximo de
9999999,9 y 999999,99 segundos respectivamente. El diagrama que mide el tiempo abajo 12
muestra la relación entre la entrada del temporizador, reset del temporizador, bit discreto
asociado, valor corriente y valor prefijado del temporizador.
Segundo
13
0 1 2 3 4 5 6 7 8 X1
TMRA T0

X1 Enable
K30 14
X2
X2
A
Reset
T0 B
Valor 0 10 10 20 30 40 50 0
corriente 1/10 de segundo
C
.NOTA: No se usa la coma decimal en este temprozador, pero hay una coma implicada. Los valores corriente
y prefijado de todo los tipos de tempriozadores están en formato BCD. D

Manual del PLC DL06, 2a. edición en español, 6/07 5–39


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

Las instrucciones temporizador (TMR) y temporizador rápido (TMRF)


La instrucción TMR es un temporizador de una entrada con base
1 DS5 Usado de tiempo de 0,1 segundo que cuenta tiempo hasta un máximo de TMR T aaa
HPP Usado 999,9 segundos. La instrucción TMRF es un temporizador de B bbb
2 una entrada con base de tiempo de 0,01 segundo que cuenta
tiempo hasta un máximo de 99,99 segundos. Estos Temporizador #
temporizadores se activan si la lógica de entrada es verdadera Valor prefijado
3 (ON) y serán vueltos a 0 si la lógica de entrada es falsa (OFF).
Especificaciones de la instrucción
4 La Referencia del temporizador (Taaa): Especifica el número TMRF T aaa
del temporizador. B bbb
5 Valor Prefijado (Preset value) (Bbbb): un valor Constantee (K)
o una localización de memoria, expresadas en BCD.
Temporizador #
6 Valor corriente: Se refiere al valor de conteo del tiempo en Valor prefijado
unidades de base de tiempo, y se puede ver en la dirección de
memoria T* asociada, valor expresado en BCD. Por ejemplo, el valor corriente del temporizador
7 para T3 se va a la memoria V3.
Bit de estado (Status bit): El bit de estado indica si el temporizador ya alcanzó el valor prefijado
8 de tiempo. Se encuentra en la dirección asociada de memoria T. Estará ON si el valor corriente
es igual a o mayor que el valor prefijado del temporizador específico. Por ejemplo, el bit de
estado para el Temporizador 2 es T2.
9 NOTA: La constantee de valor prefijado (K) del temporizador puede ser cambiada usando un Programador
Portátil, aún cuando la CPU está en el modo RUN. Por lo tanto, una memoria en el valor prefijado es requerida
10 solamente si el programa ladder debe cambiar el valor prefijado.

Tipo de operando de datos Rango del DL06


11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A/B aaa bbb
Temporizadores . . . . . . . . . . . . . . . . . . . . . . . . . T 0–777 ––
12 400-677
1200–7377
Memoria V para valores prefijado . . . . . . . . . . V –– 7400–7577
13 10000-17777
400-677
Punteros (solo valor prefijado) . . . . . . . . . . . . . P –– 1200–7377
14 7400–7577
10000-17777
Constantes (solo valor prefijado)) . . . . . . . . . . K –– 0–9999
A Bits de estado de temporizadores . . . . . . . . . T/V
Valores corrientes de temporizadores . . . . V /T*
0–377 o V41100–41117
0–377

B NOTA: * Con el programador D2-HPP, los bits discretos de estado y el valor corriente del temporizador
se obtienen con la misma referencia. DirectSOFT usa referencias separadas, tal como "T2" para el
C bit de estado y "TA2" para el valor corriente del temporizador T2.

Usted puede realizar funciones cuando el temporizador alcanza el valor prefijado especificado
D usando el bit de estado. O, usando contactos de comparación para realizar funciones en
intervalos diferentes de tiempo, basado en un temporizador. Los ejemplos siguientes muestran

5–40 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

Ejemplo de uso de temporizador con los bits de estado


En el ejemplo siguiente, se usa un temporizador con un valor prefijado de 3 segundos. El bit de
estado del temporizador (T2) prenderá cuando el temporizador ha cronometrado por 3 1
segundos. El temporizador es vuelto a 0 cuándo X1 se apaga, haciendo OFF el bit de estado y
coloca en 0 el valor corriente del temporizador. 2
DirectSOFT
Direct SOFT32
3
Diagrama de tiempos
X1
TMR
K30
T2 0 1 2 3
Segundos
4 5 6 7 8 4
X1
T2 Y0

OUT
T2 5
Programador D2-HPP

$
STR
B
1
ENT
Valor
Y0

corriente
0 10 20 30 40 50 60 0
6
N C D A 1/10 de segundo
$
TMR

STR
SHFT
2
T
MLR
C
3

2
ENT
0
ENT
7
GX A
OUT 0
ENT

8
Ejemplo de temporizador con contactos de comparación
En el ejemplo siguiente, se usa un temporizador con un valor prefijado de 4,5 segundos. Los
contactos de comparación se usan para activar Y3, Y4, y Y5 en un intervalo de un segundo
9
respectivamente. Cuándo X1 se apaga, el temporizador vuelve a 0 y los contactos de
comparación se abren con lo cual Y3, Y4 y Y5 se apagarán. 10
DirectSOFT
11
Direct SOFT32

X1
TMR T20
Diagrama de tiempos
Segundos
12
K45 0 1 2 3 4 5 6 7 8

TA20 K10 Y3
OUT
X1
13
Y3

TA20 K20 Y4
OUT
Y4
14
Y5
1/10 de segundo
TA20 K30 Y5
OUT
Valor
T2

0 10 20 30 40 50 60 0
A
corriente

Programador D2-HPP

$ B
B
ENT
STR 1
N

$
TMR
C

SHFT
2
A

T
0
C
E

A
4
F
5
B
ENT

A ENT
C
STR MLR 2 0 1 0
GX

$
OUT
D

SHFT
3
ENT

T C A C A ENT
D
STR MLR 2 0 2 0
GX E ENT
OUT 4

Manual del PLC DL06, 2a. edición en español, 6/07 5–41


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

La Instrucción temporizador acumulador (TMRA)


DS5 Usado
La instrucción TMRA es un temporizador de base de tiempo 0,1 Enable TMRA T aaa
segundo con dos entradas,que cuenta hasta a un máximo de
1 HPP Usado
9999999,9 segundos. Reset
B bbb

Temporizador acumulador rápido (TMRAF)


2 La instrucción TMRAF es un temporizador de base de tiempo de Temporizad
DS5 Usado -
0,01 segundo con dos entradas que cuenta hasta un máximo de Valor-prefijado
3 HPP Usado
999999,99 segundos.
Cada uno de estos temporizadores usa 2 palabras de memoria.
4 Estos temporizadores tienen dos entradas, un Enable y un RESET.
El temporizador comienza a contar el tiempo cuando la entrada Enable TMRAF T aaa
Enable está ON y para el conteo cuando está OFF (Sin volver a B bbb
5 cero el valor corriente). La entrada RESET coloca en 0 el valor Reset
corriente del temporizador.
6 La referencia del temporizador (Taaa): Especifica el número del temporizador.
Valor prefijado (Preset value) (Bbbb): ): un valor constantee (K) o una memoria V, en BCD.
7 Valor corriente: se refiere al valor de conteo del tiempo, y se puede ver en la memoria T*
asociada. Por ejemplo, el valor corriente para T3 se va a la memoria V3, y está en BCD.
Bit de estado discreto: El bit de estado indica si el temporizador ya alcanzó el valor prefijado de
8 tiempo. Se encuentra en la dirección asociada de memoria T. Estará ON si el valor corriente es
igual a o mayor que el valor prefijado del temporizador específico. Por ejemplo, el bit de estado
9 para el temporizador 2 es T2.
NOTA: El TMRA usa dos direcciones consecutivas de memoria para el valor de 8 dígitos y por lo tanto dos
10 direcciones consecutivas de temporizador. Por ejemplo, si es usado TMRA 1, el próximo número
disponible del temporizador es TMRA 3.
11 Tipo de operando de datos Rango del DL06
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A/B aaa bbb
12 Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . T 0–777 ––
400-677
Memoria V para valores prefijados . . . . . . . . . . V –– 1200–7377
13 7400–7577
10000-17777
400-677
14 Punteros (solamente valores prefijados). . . . . . P –– 1200–7377
7400–7577
10000-17777

A Constantes (solamente valores prefijados) . . . K


Bits de estado del temporizador . . . . . . . . . . T/V
–– 0–99999999
0–377 or V41100–41117
Valores corrientes del temporizador . . . . . V /T* 0–377
B
NOTA: * Con el programador D2-HPP, los bits de estado y el valor corriente del temporizador se obtienen
C con la misma referencia. DirectSOFT separa las referencias, tal como "T2" para el bit de estado y "TA2"
para el valor corriente del temporizador T2.

D Los ejemplos siguientes muestran dos métodos de programar los temporizadores. Uno ejecuta la
función cuando el temporizador alcanza el valor prefijado usando de valor del bit de estado y el otro

5–42 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

Ejemplo de temporizador acumulador con bits de estado


En el ejemplo siguiente, un temporizador acumulador es usado con un valor prefijado de 3
segundos. El bit de estado temporizador (T6) prenderá cuando el temporizador ha medido un 1
tiempo en total por 3 segundos (30 x0,1 segundo) y activará Y7.
Note en este ejemplo que el temporizador cuenta el tiempo por 1 segundo, para por 1 segundo 2
y luego reanuda el conteo del tiempo. El temporizador volverá a 0 cuándo C10 prende,
haciendo OFF el bit de estado y coloca en 0 el valor corriente del temporizador. 3
DirectSOFT
Direct SOFT32 Diagrama de tiempos
X1
TMRA T6

X1
0 1 2 3
Segundos
4 5 6 7 8
4
K30
C10
C10
5
Y7 T6
T6
OUT Valor
corriente
0 10 10 20 30 40 50 0
6
Programador D2-HPP Programador D2-HPP (continuación)

$
STR
B
1
ENT D
3
A
0
ENT 7
$ SHFT C B A ENT $ SHFT T G ENT
STR 2 1 0 STR MLR 6
N
TMR
SHFT A
0
G
6
GX
OUT
B
1
A
0
ENT 8
Ejemplo de temporizador acumulador usando contactos de comparación
En el ejemplo siguiente, un temporizador se usa con un valor prefijado de 4,5 segundos. Los
9
contactos de comparación se usan para activar las salidas Y3, Y4 y Y5 en intervalos de un
segundo respectivamente. Los contactos de comparación se apagarán cuando el valor corriente 10
del temporizador vuelve a 0.
Contactos
Direct SOFT32
X1
Diagrama de tiempos
11
Segundos
TMRA T20 0 1 2 3 4 5 6 7 8

C10
K45 X1 12
C10

TA20 K10 Y3 Y3
13
OUT

TA20 K20 Y4
Y4

Y5
14
OUT

TA20 K30 Y5

OUT
Current
Value
T20

0 10 10 20 30 40 50 0
A
Programador D2-HPP

$ B
Programador D2-HPP (continuación)

GX E ENT
B
ENT OUT 4
STR 1
$

N
STR
SHFT

A
C
2
B

C
1
A

A
0
ENT

E F
$

D
STR
A
SHFT

ENT
T
MLR
C
2
A
0 C
SHFT ENT 3 0
TMR 0 2 0 4 5
$

GX
STR
SHFT

D
T
MLR

ENT
C
2
A
0
B
1
A
0
ENT
GX
OUT
F
5
ENT
D
OUT 3
$

Manual del PLC DL06, 2a. edición en español, 6/07 5–43


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

Usando Contadores
Los contadores se utilizan para contar eventos. Los contadores disponibles son contadores
1 ascendentes, contadores incrementales/decrementales y contadores de etapas (usados con
programas RLLPLUS).
2 El contador ascendente (CNT) tiene dos entradas, una entrada de conteo (UP) y una entrada
RESET. El valor de conteo máximo es 9999. El diagrama de tiempos abajo muestra la relación entre
3 la entrada , el reset, el bit de estado asociado, el valor corriente y el valor prefijado del contador.
X1
CNT CT1
4 X1

X2
Up K3

X2

5 CT1
Reset

Valor 1 2 3 4 0 Valor prefijado del contador


6 corriente
Conteos

El contador incremental/decremental (UDC) tiene tres entradas, una entrada para contar
7 ascendiendo (UP), otra para contar descendiendo (Down) y el reset. El valor de conteo máximo
es 99999999. El diagrama de tiempos abajo muestra la relación entre las entradas, reset, bit de
8 estado asociado, valor corriente y valor prefijado del contador.
X1
UDC CT2
9 X1

X2
Up K3

X2

10 X3
X3
Down

CT2
11 Valor corriente 1 2 1
Conteos
2 3 0
Reset

Valor prefijado del contador


12
Nota: El contador UDC usa dos memorias consecutivas para el valor de 8 dígitos, y por lo tanto, 2
13 contadores. Por ejemplo si se usa UDC CT1, el próximo contador disponible será CT3.

El contador de etapas (SGCNT) tiene una entrada de conteo y es vuelto a cero por la
14 instrucción RST. Esta instrucción es útil cuando la programación se usa la programación
estructurada RLLPLUS. El valor de cuenta máximo es 9999. El diagrama de tiempos abajo
A muestra la relación entre la entrada, el bit de estado asociado, el valor corriente, el valor prefijado

B X1 X1
SGCNT CT2
K3

C CT2

Valor 1 2 3 4 0
corriente Conteos Valor prefijado del contador
D RST
CT2

5–44 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

La instrucción Contador (CNT)


El Contador es una instrucción de dos entradas que incrementa
DS5 Usado
el valor corriente cuando hay una transición lógica de la entrada 1
HPP Usado
COUNT de OFF para ON. Cuándo la entrada RESET del
contador está ON el contador vuelve a 0. Cuando el valor 2
corriente es igual al valor prefijado, el bit de estado del
contador se hace ON y el contador continúa contando hasta un Contador#
conteo máximo de 9999. El valor máximo se mantendrá hasta
3
que el contador sea vuelto a 0. Count CNT CT aaa
Especificaciones de la instrucción B bbb 4
Referencia del contador (CTaaa): Especifica el número del Reset
contador. 5
Valor prefijado (Bbbb): Una constantee (K) o una dirección de
memoria, expresado en BCD.
Valor prefijado
6
Valor corriente: Los valores corrientes del contador son
obtenidos en el contenido de la memoria de CT* asociada, 7
expresado en BCD. La localización de memoria es el número
del contador + 1000. Por ejemplo, el valor contador corriente
para CT3 está en la dirección de memoria V1003.
8
El bit de estado: El bit de estado es accesado referenciandose a la dirección asociada de memoria
de CT. Estará ON si el valor es igual o mayor que el valor prefijado. Por ejemplo el bit de estado 9
discreto para el contador 2 es CT2.
NOTE: A Memoria preset is required if the ladder program or OIP must change the preset.
10
Tipo de operando de datos Rango del DL06
11
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A/B aaa bbb
Contadores . . . . . . . . . . . . . . . . . . . . . . . . . . . CT 0–177 ––
400-677
1200–7377
Memoria V (solamente valor prefijado) . . . . V –– 7400–7577
10000-17777

Punteros (solamente valor prefijado) . . . . . . . P ––


400-677
1200–7377
7400–7577
14
10000-17777
Constantees (solamente valor prefijado) . . . . K –– 0–9999 A
Bits de estado del contador . . . . . . . . . . . . . CT/V 0–177 o V41140–41147
Valores corrientes del contador . . . . . . . . V /CT* 1000-1177 B
NOTA: * Con el programador D2-HPP, los bits de estado y el valor corriente del contador se obtienen con la
misma referencia. DirectSOFT separa las referencias, tal como "CT2" para el bit de estado y "CTA2" C
para el valor corriente del contador CT2.
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–45


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

Ejemplo de contador usando el bit de estado


En el ejemplo siguiente, cuando X1 hace una transición de OFF para ON, el valor corriente del
1 contador CT2 se incrementará en uno. Cuando el valor corriente llega al valor prefijado de 3,
el bit de estado del contador CT2 prenderá y se activará Y7. Cuándo la entrada RESET C10
2 prende, el bit de estado del contador se apagará y el valor corriente será 0. El valor corriente para
el contador CT2 se tendrá en la memoria V1002.
3 DirectSOFT
DirectSOFT32 Diagrama del contador
X1

4 CNT

K3
CT2
X1

C10
C10

5 CT2 Y7
CT2 o
Y7
OUT 1 2 3 4 0

6 Valor corriente

Programador D2-HPP (cont.)


Programador D2-HPP

7 $

$
STR
B

SHFT
1
ENT

C B A ENT
$

GX
STR
SHFT

B
C

A
2
SHFT

ENT
T
MLR
C
2
ENT

STR 2 1 0 OUT 1 0

8 GY
CNT
C
2
D
3
ENT

9 Ejemplo de contador usando contactos de comparación


En el ejemplo siguiente, cuándo X1 hace una transición de OFF para ON, el el valor corriente
del contador CT2 se incrementará en 1. Los contactos de comparación se usan para activar las
10 salidas Y3, Y4, y Y5 en conteos diferentes. Cuándo el contacto de entrada RESET C10 se cierra,
el bit de estado se apagará y el valor corriente del contador volverá a 0 y los contactos de
11 comparación se apagarán.
DirectSOFT
DirectSOFT32 Diagrama del contador

12 X1
CNT CT2
X1
K3
C10

13 Y3
C10

Y3
CTA2 K1

14 CTA2 K2
OUT

Y4
Y4

Y5
OUT

A CTA2 K3 Y5

OUT
Valor
corriente
1 2 3 4 0

B Programador D2-HPP

$ B ENT $
Programador D2-HPP(cont)

SHFT C SHFT T C
STR 1 STR 2 MLR 2

C $

GY
CNT
STR
SHFT

C
2
C
2
B

D
1

3
A

ENT
0
ENT

GX
OUT
C
2
ENT

E
4
ENT

$ C T C $ C T C

D STR
B
1
SHFT

ENT
2
SHFT
MLR 2 STR
D
3
SHFT

ENT
2
SHFT
MLR 2

GX D ENT GX F ENT
OUT 3 OUT 5

5–46 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

La instrucción Contador de Etapas (SGCNT)


El contador de etapas es un contador de una entrada que incrementa
DS5 Usado
HPP Usado
cuando hay una transición lógica de la entrada de OFF para ON. Este
Contador #
1
contador difiere de otros contadores ya que tendrá su valor actual SGCNT CT aaa
hasta que se use la instrucción RST (es decir, no tiene una entrada de
reset, como los contadores CNT o UDC). El contador de etapas está
B bbb 2
diseñado para uso en programas RLLPLUS, pero puede ser usado en
programas de lógica ladder de relevador. Cuándo el valor actual es
Valor prefijado
3
igual al valor prefijado, el bit contador de estado prende y el contador continúa contando hasta un
conteo máximo de 9999. El valor máximo se mantendrá hasta que el contador será vuelto a 0. 4
Especificaciones de la instrucción
Referencia del contador (CTaaa): Especifica el número del contador. 5
Valor prefijado (Bbbb): Una constantee (K) o una dirección de memoria, en BCD.
Valor corriente: Los valores corrientes del contador son obtenidos en el contenido de la 6
memoria del CT* asociada, en BCD. La dirección de memoria es el número del contador +
1000. Por ejemplo, el valor corriente del contador CT3 se va a la dirección de memoria V1003. 7
El Bit de estado: El bit de estado es accesado referenciandose a la localización asociada de
memoria de CT. Estará ON si el valor es igual o mayor que el valor prefijado. Por ejemplo el bit
de estado discreto para el contador 2 es CT2.
8
NOTA: Al usar un contador dentro de etapas, las etapas deben estar activas por un barrido antes de que la
entrada al contador haga una transición de 0-1. Si no es así, no hay transición verdadera y el
9
contador no contará.
10
NOTA: Solamente se requiere un memoria de valor predefinido si el programa ladder o una interface de
operador debe cambiar el valor. 11
Tipo de operando de datos Rango del DL06
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A/B aaa bbb
12
Contadores . . . . . . . . . . . . . . . . . . . . . . . . . . . CT 0–177 ––
400-677
1200–7377
13
Memoria V (solamente valor prefijado) . . . . V –– 7400–7577
10000-17777
400-677
14
1200–7377
Punteros (solamente valor prefijado) . . . . . . P –– 7400–7577
10000-17777 A
Constantes (solamente valor prefijado) . . . . . K –– 0–9999
Bits de estado del contador . . . . . . . . . . . . . CT/V
Valores corrientes del contador . . . . . . . . V /CT*
0–177 o V41140–41147
1000-1177
B
NOTA: * Con el programador D2-HPP, los bits de estado y el valor corriente del contador se obtienen con C
la misma referencia. DirectSOFT separa las referencias, tal como "CT2" para el bit de estado y
"CTA2" para el valor corriente del contador CT2.
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–47


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

Ejemplo del contador de etapas usando el bit de estado


En el ejemplo siguiente, cuándo X1 hace una transición de OFF para ON, el valor corriente del
1 contador de etapas CT7 incrementará en 1. Cuándo el valor corriente alcanza 3, el bit de estado
del contador CT7 prenderá y se activará Y7. El bit de estado del contador CT7 permanecerá
2 ON hasta que el contador sea vuelto a 0 usando la instrucción RST. Cuándo el contador es
vuelto a 0, el bit de estado del contador se apagará y el valor corriente será 0. El valor corriente
para el contador CT7 se obtendrá en la memoria V1007.
3 DirectSOFT
DirectSOFT32 Diagrama del contador
X1

4 CT7
SGCNT
K3

Y7
CT7

Y7
X1

OUT Valor 1 2 3 4 0
5 C5 CT7
RST
corriente

RST
CT7

6 Programador D2-HPP

$ B ENT
Programador D2-HPP (cont.)

GX B A ENT
STR 1 OUT 1 0

7 H
SHFT

7
S
RST
SHFT

D
3
G

ENT
6
SHFT GY
CNT
$

S
RST
STR
SHFT

SHFT
C

C
2

2
F

SHFT
5
ENT

T
MLR
H
7
ENT

$ C T H

8 STR
SHFT
2
SHFT
MLR 7
ENT

Ejemplo de contador de etapas usando contactos de comparación


9 En el ejemplo siguiente, cuándo X1 hace una transición de OFF para ON, el valor corriente del
contador CT2 incrementará en 1. Los contactos de comparación se usan para activar Y3, Y4 y
10 Y5 en conteos diferentes. Aunque esto no se muestre en el ejemplo, cuando el contador usa la
instrucción RST, el bit de estado del contador se apagará y el valor corriente será 0. El valor
11 corriente para el contador CT2 se mantendrá en la memoria V1002 (o CTA2).
DirectSOFT32
Diagrama de contador

12 DirectSOFT
X1
SGCNT
K10
CT2

X1

CTA2 K1 Y3

13 OUT
Y3

Y4
CTA2 K2 Y4

14 CTA2 K3
OUT

Y5
Y5

Valor 1 2 3 4 0
corriente
OUT

A Programador D2-HPP
RST
CT2

Programador D2-HPP (cont)

B $

SHFT
STR
S
RST
B

G
1

6
ENT

SHFT GY
CNT
$
STR
C
2
SHFT

ENT
C
2
SHFT T
MLR
C
2

C B A GX E

C $
2

STR
SHFT
1
C
0

2
ENT

SHFT T
MLR
C
2
$
OUT

STR
SHFT
4
ENT

C
2
SHFT T
MLR
C
2
B ENT D ENT

D GX
OUT
1
D
3
ENT GX
OUT
3
F
5
ENT

5–48 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

La instrucción Up Down Counter (UDC) Up UDC CT aaa


El contador UDC cuenta subiendo el conteo en la
DS5 Usado
transición de falso para verdadero (OFF a ON) en Down
B bbb
1
HPP Usado Contador #
la entrada UP y cuenta hacia abajo en cada
transición de OFF para ON en la entrada Down. El
Reset
2
contador vuelve a 0 cuando la entrada RESET está Valor prefijado
ON. El rango de conteo es 0-99999999. La entrada
de conteo que no se usa debe estar apagada para que Atención: El contador UDC usa dos 3
direcciones de memoria para el valor
la entrada activa de conteo pueda funcionar.
Especificación de la instrucción
corriente de 8 dígitos. Esto es, el
contador UDC usa dos direcciones
4
de memorias consecutivas. Si se usa
Referencia del contador (CTaaa): Especifica el
número del contador.
el contador UDC CT1 en un programa,
el próximo contador disponible en
5
Valor prefijado(Bbbb): Valor constantee (K) o dos ese programa es CT3.
direcciones consecutivas de memoria V, en BCD. 6
Valor corriente: El valor corriente de conteo es un valor de palabra doble que se puede acceder
referenciando las direcciones de memoria de CT* asociadas, en BCD. La dirección de memoria 7
V es el número del contador + 1000. Por ejemplo, el valor corriente para el contador CT5 está
en las memorias V1005 y V1006.
El bit de estado de contador: El bit de estado es accesado al referenciar la dirección asociada de
8
memoria del contador CT. Opera estando ON si el valor es igual a o mayor que el valor
prefijado. Por ejemplo el bit de estado discreto para el contador 12 sería CT12. 9
NOTA: UDC usa dos memorias consecutivas para el valor de 8 dígitos, por lo tanto dos localizaciones
consecutivas de temporizador. Por ejemplo, si se usa UDC CT1, el número disponible siguiente es
10
CT3.
11
NOTA: Solamente se requiere un memoria de valor predefinido si el programa ladder o una interface de

Tipo de operando de datos Rango del DL06


12
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A/B aaa bbb
Contadores . . . . . . . . . . . . . . . . . . . . . . . . . . . CT 0–177 –– 13
400-677
1200–7377
Memoria V (solamente valor prefijado) . . . . . V –– 7400–7577
10000-17777
14
Punteros (solamente valor prefijado) . . . . . . P ––
400-677
1200–7377
7400–7577
A
10000-17777
Constantes (solamente valor prefijado) . . . . . K –– 0–9999 B
Bits de estado del contador . . . . . . . . . . . . . CT/V 0–177 o V41140–41147
Valores corrientes del contador . . . . . . . . V /CT* 1000-1177
C
operador debe cambiar el valor.

NOTA: * * Con el programador D2-HPP, los bits de estado y el valor corriente del contador se obtienen
D
con la misma referencia. DirectSOFT usa referencias diferentes, tal como "CT2" para el bit de

Manual del PLC DL06, 2a. edición en español, 6/07 5–49


Capítulo 5: Instrucciones de Timer, Contador y Shift Register

Ejemplo de contador incremental/decremental usando el bit de estado


En el ejemplo siguiente, si X2 y X3 están apagados, cuándo X1 pase de OFF para ON el valor
1 corriente del contador incrementará en 1. Si X1 y X3 están apagados el valor corriente del
contador decrece en 1 cuándo X2 pasa de OFF para ON. Cuándo el valor de conteo alcanza el
2 valor prefijado de 3, el bit de estado del contador prenderá. Cuándo X3 prende, el bit de estado
del contador se apagará y el valor actual se hará 0.
3 DirectSOFT
DirectSOFT32 Diagrama del contador UDC
X1

4 X2
UDC
K3
CT2
X1

X2

5 X3
X3

CT2

6 CT2
OUT
Y7
Valor
corriente
1 2 1 2 3 0

7 Programador D2-HPP

$
STR
B
1
ENT
Programador D2-HPP (cont)

D
3
ENT

$ C ENT $ SHFT C SHFT T C ENT


STR 2 STR 2 MLR 2

8 $
STR
D
3
ENT GX
OUT
B
1
A
0
ENT

SHFT U D C C
ISG 3 2 2

9
Ejemplo de contador UDC con contactos de comparación
10 En el ejemplo siguiente, si X2 y X3 están apagados, cuándo X1 pase de OFF para ON el valor
corriente del contador incrementará en 1. Si X1 y X3 están apagados el valor corriente del
contador decrece en 1 cuándo X2 pasa de OFF para ON. Cuándo el valor de conteo alcanza el
11 valor prefijado de 3, el bit de estado del contador prenderá. Cuándo X3 prende, el bit de estado
del contador se apagará y el valor actual se hará 0.
12 DirectSOFT
DirectSOFT32
X1
Diagrama del contador UDC
UDC CT2

13 X2
V2000 X1

X2

X3

14 Y3
X3

CTA2 K1 Y3

A CTA2 K2
OUT

Y4
Y4

Valor 1 2 3 4 0
OUT corriente

B Programador D2-HPP Programador D2-HPP (cont)

$ B ENT B ENT
STR 1 1

C $

$
STR
C

D
2
ENT GX

$
OUT
D
3
C
ENT

T C
ENT SHFT SHFT
STR 3 STR 2 MLR 2

D SHFT

SHFT
U

V
AND
ISG
D

C
3

2
C

A
2

0
A
0
C

A
2

0
ENT GX
OUT
C
2
ENT

E
4
ENT

$ SHFT C SHFT T C
STR 2 MLR 2

5–50 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Timer, Contador y Shift Registe

La instrucción Shift Register (SR)


La instrucción SR mueve un número predefinido bits de DATA SR
DS5 Usado
HPP Usado relevadores de control C. Los rangos de control en el bloque 1
de bits deben comenzar al inicio de una frontera de 8 bits en From A aaa
bloques de 8 bits. CLOCK
2
La instrucción SR tiene tres contactos. To B bbb
• Data — Determina si el bit a ser colocado en la primera
ubicación del bit es 1 o 0.
RESET 3
• Clock — Mueve los bits una posición en cada transición de OFF para ON. 4
• Reset — Vuelve a 0 (OFF) todos los bits.
Con cada transición de OFF para ON del clock, los bits que componen el bloque son movidos
una posición de bit y el estado de la entrada de datos es colocado en el estado del bit que inicia
5
el bloque. La dirección del movimiento depende de lo que sea colocado en los campos FROM
y TO. De C0 a C17 definiría un bloque de dieciséis bits para ser cambiado de la izquierda a la 6
derecha. Con la información en FROM (de) C17 a C0 definiría un bloque de dieciséis bits,
para ser movido de la derecha a la izquierda. (Vea el ejemplo abajo). 7
El tamaño máximo del bloque SR depende del número de relevadores disponibles de control.
El tamaño mínimo del bloque es 8 relevadores de control. 8
Tipo de operando de datos Rango del DL06
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A/B aaa bbb 9
Control Relay . . . . . . . . . . . . . . . . . . . . . . . . . . . C 0–1777 0–1777

DirectSOFT
Direct SOFT32 Programador D2-HPP
10
X1 $ B ENT
Data SR
$
STR

STR
C
1

2
ENT
11
From C0
X2
Clock $
STR
S
D
3
ENT

R A
12
To C17 SHFT SHFT SHFT
X3 RST ORN 0
Reset
B
1
H
7
ENT 13
Entradas en barridos sucesivos Bits de shift register 14
C0 C17
1 0-1-0 0
0 0-1-0 0
A
0 0-1-0 0 B
1 0-1-0 0
0 0-1-0 0 C
0 0 1
Indica ON Indica OFF
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–51


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

Operaciones de carga y copia del acumulador y stack


1 Usando el acumulador
2 El acumulador en la unidad de procesamiento central (CPU) del PLC DL06 es una memoria
intermediaria (RAM) de 32 bits que se usa como una localización de almacenamiento
temporaria para datos que se copian o son manipulados de alguna manera. Por ejemplo, usted
3 tiene que usar el acumulador para realizar operaciones aritméticas tales como sumar, restar,
multiplicar, etc. Ya que hay 32 bits, usted puede operar con un número de 8 dígitos BCD o
4 datos ASCII sobre cualquier tipo de datos . El acumulador es vuelto a 0 al fin de cada barrido de
la CPU, es decir, el acumulador no retiene información.

5 Copiando datos al acumulador


Las instrucciones LD y OUT y sus variaciones se usan para copiar datos de una dirección de
memoria V al acumulador o para copiar los datos del acumulador a una memoria V. El ejemplo
6 siguiente copia los datos de la memoria V2000 a la memoria V2010.
V2000
7 X1 LD
V2000
8 9 3 5

Los bits no usados del


Copia los datos desde V2000
8 a los 16 bits más bajos
del acumulador
acumulador son colocados en cero.

Acum. 0 0 0 0 88 99 33 55

9
OUT

10 V2010

Copia datos desde los 16 bits


8 9

V2010
3 5

más bajos del acumulador a V2010

11 Ya que el acumulador es de 32 bits y las direcciones de memoria V son de 16 bits, las


instrucciones LDD y OUTD (o las variaciones de las mismas) usan dos direcciones consecutivas
12 de memoria V o una constantee de 8 dígitos BCD para copiar los datos al o desde una dirección
de memoria V al acumulador. Por ejemplo si usted quiere copiar los datos de V2000 y V2001
para V2010 y V2011 la manera más eficiente de realizar esta función sería como sigue:
13
X1 LDD V2001 V2000

14 V2000 6 7 3 9 5 0 2 6

Copia datos desde V2000 y V2001 a

A los 16 bits más bajos del acumulador

Acum. 6 7 3 9 55 00 22 66

B OUTD
V2010 6 7 3 9 5 0 2 6
C Copia datos desde el acumulador a
V2010 y V2011
V2011 V2010

5–52 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

Cambiando los datos del acumulador


Las instrucciones que manipulan datos también usan el acumulador. El resultado de los datos
manipulados se queda en el acumulador. Los datos que tenía el acumulador antes de hacer la 1
operación correspondiente se pierden en el acumulador.
El ejemplo siguiente copia la constantee 4935 en el acumulador, disloca a la derecha los datos 2
en 4 bits y copia el resultado a V2010.
3
X1 LD Constante 4 9 3 5
K4935

Carga el valor 4935 al acumulador


4
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Acum. 0 0 0 0 0 0 0 0 0 0 0

Los 16 bits más altos del acumulador


0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 1 0 1 0 1
5
serán colocados cero (u OFF).

Sacados fuera del


acumulador 6
SHFR
K4 Acum.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
8
0
7
1
6 5
0 0
4 3
1 0
2
0
1
1
0
1
7
Desloca los datos en el acumulador
4 bits (K4) a la derecha
8
OUT
V2010

Copia los 16 bits más bajos del


0 4 9 3
9
acumulador a V2010 V2010

Algunas instrucciones de manipulación de datos usan 32 bits. Usan dos direcciones consecutivas
10
de memoria V o una constantee de 8 dígitos BCD para manipular los datos en el acumulador.
En el ejemplo siguiente, cuándo X1 está ON, se carga el valor en V2000 y V2001 en el
11
acumulador usando la instrucción LDD.
El valor en el acumulador se suma al valor en V2006 y V2007 usando la instrucción ADDD.
12
El valor en el acumulador es copiado a V2010 y V2011 usando la instrucción OUTD.
13
V2001 V2000
X1 LDD
V2000
6 7 3 9 5 0 2 6
14
Carga al acumulador el valor
en V2000 y V2001

ADDD
6 7 3 9 5 0 2 6 (Acumulador) A
+ 2 0 0 0 4 0 4 6 (V2006&V2007)
V2006

Suma el valor en el acumulador


el valor contenido en V2006 y V2007
Acum. 8 7 3 9 9 0 7 2
B
OUTD
V2010 8 7 3 9 9 0 7 2
C
Copia el valor en el acumulador
a V2010 y V2011
V2011 V2010
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–53


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

Usando el Stack del acumulador


El stack del acumulador (Una pila de memorias) es usado por instrucciones que requieren más
1 de un parámetro para ejecutar una función o para una función definida por el usuario. El Stack
del acumulador se usa cuando se ejecuta más de una instrucción LD sin el uso de una
2 instrucción OUT. El contenido del stack vuelve a 0 al fin de cada barrido.
La primera instrucción LD en el barrido coloca un valor en el acumulador. Cada instrucción LD
3 después, sin el uso de la instrucción OUT, coloca un valor en el acumulador y el valor que
estaba en el acumulador se coloca en el Stack del acumulador.
4 La instrucción OUT anula la instrucción previa de LD y no coloca el valor que estaba en el
acumulador en el Stack del acumulador cuando se ejecuta la próxima instrucción LD. Cada vez
que un valor se coloca en el acumulador amontona los otros valores en el Stack y se empujan
5 hacia abajo una dirección de memoria.
El acumulador tiene ocho niveles de profundidad (ocho registros de 32 bits). Si hay un valor en
6 la octava localización cuando un valor nuevo se coloca en el Stack, el valor en la octava
localización sale fuera del Stack y no se puede recuperar, es decir, se pierde
7 X1 LD
K3245
Constante 3

Valor corriente del acumulador


2 4 5

Stack del acumulador


Carga el valor 3245 al acumulador Acum. 0 0 0 0 3 2 4 5

8 Valor previo del acumulador

Acum. X X X X X X X X
Nivel 1
Nivel 2
Nivel 3
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Nivel 4 X X X X X X X X

9 Nivel 5
Nivel 6
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Constante 5 1 5 1 Nivel 7 X X X X X X X X
LD

10 K5151

Carga el valor 5151 al acumulador


Valor corriente del acumulador
Acum. 0 0 0 0 55 1 5 1
Nivel 8 X X X X X X X X
Descartado

empujando el valor 3245 al stack Valor previo del acumulador Stack del acumulador

11 Acum. 0 0 0 0 33 22 44 55 Nivel 1
Nivel 2
Nivel 3
0
X
X
0
X
X
0
X
X
0
X
X
3
X
X
2
X
X
4
X
X
5
X
X
Nivel 4 X X X X X X X X

12 Nivel 5
Nivel 6
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Nivel 7 X X X X X X X X
Constante

13 LD
K6363 Valor corriente del acumulador

Acum. 0 0 0 0 66 33 66 33
Nivel 8 X X X X X X X X
Descartado

Carga el valor 6363 al acumulador


empujando el valor 5151 al primer Valor previo del acumulador Stack del acumulador

14 nivel del stack y el valor 3245 al


segundo nivel del stack Acum. 0 0 0 0 55 1 5 1 Nivel 1
Nivel 2
0
0
0
0
0
0
0 0 5
0 0 3 2 4 5
0 0
1 5 1

Nivel 3 X X X X X X X X

A Nivel 4
Nivel 5
Nivel 6
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X X X X X X X X

B Nivel 7
Nivel 8
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Descartado

C La instrucción POP rota los valores hacia arriba por el Stack al acumulador. Cuándo se ejecuta
la instrucción POP el valor que estaba en el acumulador se limpia y el valor que estaba encima
D del Stack pasa al acumulador. Los valores en el Stack se dislocan una posición hacia arriba en el
Stack .

5–54 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

X1 POP Valor previo del acumulador

POP el primer valor en el stack al


Acum. X X X X XX XX XX

Valor corriente del acumulador


X

Stack del acumulador


1
acumulador y mueve los valores del stack Nivel 1 0 0 0 0 3 7 9 2
Acum. 0 0 0 0 44 55 4 5
un nivel más arriba
Nivel 2
Nivel 3
0
X
0
X
0
X
0
X
7
X
9
X
3
X
0
X
2
Nivel 4 X X X X X X X X

OUT
V2000
V2000 4 5 4 5
Nivel 5
Nivel 6
Nivel 7
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
3
Copia datos desde el acumulador a Nivel 8
V2000
X X X X X X X X
4
POP Valor previo del acumulador

POP el primer valor en el stack al


Acum. 0 0 0 0 44 55 44 55

Valor corriente del acumulador Stack del acumulador


5
acumulador y mueve los valores del stack Acum. 0 0 0 0 33 77 99 22 Nivel 1 0 0 0 0 7 9 3 0
un nivel más arriba
Nivel 2
Nivel 3
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
6
Nivel 4 X X X X X X X X
3 7 9 2
OUT
V2001
V2001
Nivel 5
Nivel 6
Nivel 7
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
7
Copia datos desde el acumulador a Nivel 8 X X X X X X X X
V2001.

Valor previo del acumulador


8
POP
Acum. 0 0 0 0 33 47 69 02

POP el primer valor en el stack al


Valor corriente del acumulador

Acum. X X X X 77 99 33 00 Nivel 1 X
Stack del acumulador

X X X X X X X
9
acumulador y mueve los valores del stack
un nivel más arriba Nivel 2 X X X X X X X X
POP el primer valor en el stack a Nivel 3 X
Nivel 4 X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
10
Nivel 5 X X X X X X X X
OUT
V2002
V2002 7 9 3 0 Nivel 6 X
Nivel 7 X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
11
Copia datos desde el acumulador a Nivel 8 X X X X X X X X
V2002

12
Usando punteros
Muchas de las instrucciones del PLC de la serie DL06 permitirán usar los punteros de la 13
memoria V como un operando (comúnmente conocido como direccionamiento indirecto).
Los punteros permiten que las instrucciones obtengan los datos de direcciones de memoria V
indicadas por el valor del puntero.
14
NOTA: La dirección de memoria DL06 V está en octal. Sin embargo, el puntero se refiere a una dirección de A
memoria V con valores hexadecimales. Use la instrucción LDA para transformar una dirección a la
dirección de puntero. Esta instrucción realiza la conversión Octal a Hexadecimal automáticamente.
B
En el ejemplo siguiente usaremos un operando del puntero en una instrucción LD. La direción
de memoria V2000 es usada como localización del puntero. V2000 contiene el valor 440 que
la CPU ve como el equivalente hexadecimal de la memoria octal V2100. La CPU copiará los
C
datos de V2100 que en este ejemplo contiene el valor [2635] en la palabra más baja del
acumulador. D

Manual del PLC DL06, 2a. edición en español, 6/07 5–55


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

1 X1 LD
V2076
V2077
X
X
X
X
X
X
X
X
P2000

2 V2000 (P2000) contiene el valor 440


Hexadecimal. 440 Hexadecimal = >2100 Octal
V2100
V2101
2
X
6
X
3
X
5
X
que contiene el valor 2635. V2102 X X X X

3 0
V2000
4 4 0
V2103
V2104
X
X
X
X
X
X
X
X
Acumulador
2 6 3 5
V2105 X X X X

4 OUT
V2200

Copia los datos desde los 16 bits más bajos

5 del acumulador a V2200. V2200


V2201
2
X
6
X
3
X
5
X

6
7 El ejemplo siguiente es idéntico al de arriba con una excepción. La instrucción LDA convierte
automáticamente la dirección octal a hexadecimal.
8 X1 LDA
Carga los 16 bits más bajos del
acumulador con el hexadecimal
O 2100 2 1 0 0

9 equivalente al Octal 2100 (440)

Los bits no usados del acumulador


son colocados en cero
2100 Octal es convertido a hexadecimal
440 y cargado al acumulador

10 Acum. 0 0 0 0 00 44 44 00

11 OUT
V 2000
Copia los datos desde los 16 bits más
bajos del acumulador a V2000 0 4
V2000
4 0

12
V2076 X X X X

13 LD V2000 (P2000) contiene el valor 440


hexadecimal. 440 Hex. => 2100 Octal
V2077
V2100
X
2
X
6
X
3
X
5

P 2000 V2101 X X X X
que contiene el valor 2635

14 0
V2100
4 4 0
V2102
V2103
X
X
X
X
X
X
X
X
Acumulador
V2104 X X X X

A V2105 X X X X 0 0 0 0 22 66 33 55

OUT Copia los datos desde los 16 bits más bajos

B V 2200
del acumulador a V2200 V2200
V2201
2
X
6
X
3
X
5
X

C
D

5–56 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Load (LD)


La instrucción Load (LD) es una instrucción de 16 bits que carga
DS5 Usado
o copia el valor (Aaaa), que es una dirección de memoria V o una
LD
A aaa
1
HPP Usado
constantee de 4 dígitos BCD/Hexadecimal, en los 16 bits más
bajos del acumulador. Los 16 bits más altos del acumulador son
forzados a 0.
2
Tipo de operando de datos
....................................A
Rango del DL06
aaa
3
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
4
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0–FFFF

Indicadores Descripción
5
SP53 Está ON cuando el puntero está fuera del rango disponible.
SP70 ON si el valor en el acumulador por cualquier instrucción es negativo. 6
SP76 ON cuando cualquier instrucción carga un valor 0 al acumulador.

NOTA: Dos instrucciones consecutivas LD colocarán el valor de la primera instrucción LD en el Stack del
7
acumulador.
8
En el ejemplo siguiente, cuándo X1 está ON, se carga el valor en V2000 al acumulador y luego
se copia a V2010.
DirectSOFT
Direct SOFT32
9
V2000
X1 LD
V2000
8 9 3 5
10
Carga el valor en V2000 a los Los bits no usados de acumulador
16 bis más bajos del acumulador se colocan en cero.
Acum. 0 0 0 0 88 99 33 55
11
OUT
V2010
12
8 9 3 5
Copia el valor en los 16 bits
más bajos del acumulador a V2010 V2010 13
Programador D2-HPP

$ B X
14
STR 1 SET

SHFT L
ANDST
D
3
A
C A A A

GX
2 0 0
V
0
C
ENT

A B A
B
SHFT ENT
OUT AND 2 0 1 0
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–57


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Load Double (LDD)


La instrucción LDD es una instrucción de 32 bits que carga o
1 DS5 Usado
HPP Usado
copia el valor (Aaaa), que es: o dos direcciones consecutivas de
LDD
A aaa
memoria V o una constantee de 8 dígitos BCD/Hexadecimal, en el
2 acumulador.
Tipo de operando de datos Rango del DL06
3 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
4 Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Vea el mapa de memoria
0–FFFF

5 Indicadores Descripción
SP53 Está ON cuando el puntero está fuera del rango disponible.
6 SP70
SP76
ON si el valor en el acumulador por cualquier instrucción es negativo.
ON cuando cualquier instrucción carga un valor 0 al acumulador.

7 NOTA: Dos instrucciones LDD consecutivas colocarán el valor de la primera instrucción LDD en el Stack del
acumulador.
8
En el ejemplo siguiente, cuándo X1 está ON, se carga el valor de 32 bits en V2000 y V2001 en
9 el acumulador y es copiado a V2010 y V2011.

DirectSOFT
10 Direct SOFT32
X1 LDD V2001 V2000

V2000 6 7 3 9 5 0 2 6

11 Copia el valor en V2000 y V2001


a los 32 bits del acumulador

Acum. 6 7 3 9 65 00 22 66
12
13 OUTD
6 7 3 9 5 0 2 6

V2010 V2011 V2010

14 Copia el valor en los 32 bits del


acumulador a V2010 y V2011

A Programador D2-HPP

$ B ENT
STR 1
B SHFT L
ANDST
D
3
D
3
C A A A

C GX
2

SHFT
0
D
0 0
ENT

OUT 3

D C
2
A
0
B
1
A
0
ENT

5–58 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Load Formatted (LDF)


La instrucción LDF carga o copia un conjunto de 1 a
DS5 Usado
32 bits consecutivos de direcciones discretas de LDF A aaa 1
HPP Usado K bbb
memoria en el acumulador. La instrucción requiere
una dirección (Aaaa) de inicio y el número de bits
(Kbbb) a ser cargado. Los bits no usados del
2
acumulador se colocan en 0.
3
Tipo de operando de datos Rango del DL06
....................................A aaa bbb 4
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–777 ––
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y
Relevadores de control . . . . . . . . . . . . . . . . . . . C
0–777
0–1777
––
––
5
Bits de Etapas . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777 ––
Bits de temporizadores . . . . . . . . . . . . . . . . . . . T 0–377 –– 6
Bits de contadores . . . . . . . . . . . . . . . . . . . . . . CT 0–177 ––
Relevadores especiales . . . . . . . . . . . . . . . . . . SP
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
0–777
––
––
1–32
7
Indicadores
SP70 On anytime the value in the accumulator is negative.
Descripción 8
SP76 On when any instrucción loads a value of zero into the accumulator.
9
NOTA: Dos instrucciones consecutivas LDF colocarán el valor de la primera instrucción en el Stack del
acumulador. 10
En el ejemplo siguiente, cuándo C0 está ON, el conjunto de bits de C10-C16 (7 bits) será
copiado al acumulador usando la instrucción LDF. Los 7 bits más bajos del acumulador son
11
DirectSOFT
Direct SOFT32
12
C0 Dirección Constante
LDF C10 C16 C15 C14 C13 C12 C11 C10
K7

Carga el estsdo de 7 bits consecutivos


(C10 - C16) al acumulador
C10 K7

Los bits no usados del acumulador son colocados en cero.


OFF OFF OFF ON ON ON OFF
13
Acc.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
8
0
7
0
6 5
0 0
4 3
0 1
2
1
1
1
0
0 14
OUTF
K7
Y0

Dirección Constante Y6 Y5 Y4 Y3 Y2 Y1 Y0
A
Copia el valor desde la cantidad
especificada de bits en el acumulador a Y0-Y6 Y0 K7 OFF OFF OFF ON ON ON OFF

Programador D2-HPP

$ C A
B
SHFT ENT
STR 2 0

SHFT

SHFT
L
ANDST
C
D

B
3
F

A
5
H ENT
C
2 1 0 7
GX

A
OUT

0
SHFT F

H
5

7
ENT
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–59


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Load Address (LDA)


La instrucción LDA es una instrucción de 16 bits. Convierte
1 DS5 Usado cualquier valor octal (o dirección) al valor del equivalente LDA
HPP Usado hexadecimal y lo carga (o copia) al acumulador. Esta instrucción O aaa
2 es útil cuando se requiere un parámetro de dirección ya que
todas las direcciones para el sistema DL06 están en octal.
3 Tipo de operando de datos Rango del DL06
aaa
4 Octal Address . . . . . . . . . . . . . . . . . . . . . . . . . . O Vea el mapa de memoria

Indicadores Descripción
5 SP70 On anytime the value in the accumulator is negative.
SP76 On when any instrucción loads a value of zero into the accumulator.
6
NOTA: Dos instrucciones consecutivas LDA colocan el contenido de la primera instrucción en el stack del
7 acumulador.

En el ejemplo siguiente cuando X1 está ON, el número octal 40400 será convertido a un 4100
8 hexadecimal y cargado en el acumulador usando la instrucción LDA. El valor en los 16 bits más
bajos del acumulador es copiado a V2000 usando la instrucción OUT.
9
DirectSOFT
Direct SOFT32

10 X1 LDA
O 40400 4 0
Octal
4 0 0
Hexadecimal
4 1 0 0

11 Carga el valor hexadecimal equivalente


al número octal a los 16 bits
Los bits no usados del
acumulador son colocados en cero.
más bajos del acumulador
Acum. 0
12 0 0 0 4 1 0 0

13 OUT
4 1 0 0

V2000
14 Copia el valor en los 16 bits
V2000

más bajos del acumulador a V2000

A
Programador D2-HPP

B $
STR
B
1
ENT

SHFT L D A

C E
ANDST
A E
3
A
0
A ENT
4 0 4 0 0

D GX
OUT
SHFT V
AND
C
2
A
0
A
0
A
0
ENT

5–60 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Load Accumulator Indexed (LDX)


Esta instrucción de 16 bits especifica una dirección de la fuente (la
DS5 Usado
memoria V) que será dislocada por el valor en la primera dirección LDX 1
HPP Usado A aaa
del Stack . Esta instrucción LDX interpreta el valor en la primera
dirección del Stack como hexadecimal. El valor en la dirección ya
dislocada (la dirección de la fuente + el desvío) es cargado en los 16 bits más bajos del
2
acumulador. Los 16 bits más altos del acumulador son forzados a 0.
Sugerencia: — La instrucción LDA se puede usar para convertir una dirección de octal a una 3
dirección hexadecimal y cargar el valor en el acumulador

Tipo de operando de datos Rango del DL06


4
Memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
A
Vea el mapa de memoria
aaa aaa
Vea el mapa de memoria
5
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria Vea el mapa de memoria

Indicadores Descripción
6
SP53 Está ON cuando el puntero está fuera del rango disponible.
SP70 ON si el valor en el acumulador por cualquier instrucción es negativo. 7
SP76 ON cuando cualquier instrucción carga un valor 0 al acumulador.
8
NOTA: Dos instrucciones consecutivas de la instrucción LDX colocarán el valor de la primera instrucción en
el Stack del acumulador.
9
En el ejemplo siguiente cuando X1 está ON, el equivalente hexadecimal del octal 25 será
cargado al acumulador (este valor se colocará en el Stack cuando se ejecuta la instrucción LDX).
La dirección de memoria V1410 se suma al valor en el primer el nivel del Stack y el valor de esta
10
dirección es cargado en los 16 bits más bajos del acumulador usando la instrucción LDX. El
valor en los 16 bits más bajos del acumulador es copiado a V1500 usando la instrucción OUT. 11
X1 LDA
O 25
Octal
2 5
Hexadecimal
0 0 1 5
12
Carga el valor hexadecimal
equivalente del octal 25 a los 16
bits más bajos del acumulador
Los bits no usados del
acumulador son colocados en cero.

Acum. 0 0 0 0 0 0 1 5
13
LDX
V1410
Octal
Valor hexadec. en el
primer nivel del stack Octal Stack del acumulador
14
Mueve el valor de desvío al stack.
V 1 4 1 0 + 1 5 = V 1 4 3 5 Nivel 1 0 0 0 0 0 0 1 5
Carga el acumulador con la
dirección a ser dislocada
Los bits no usados del
acumulador son colocados en cero
Nivel 2
Nivel 3
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
A
OUT Nivel 4 X X X X X X X X
V1500

Copia el valor en los 16 bit más


Acum. 0 0 0 0

El valor en V1435
is 2345
2 3 4 5
Nivel 5
Nivel 6
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
B
bajos del acumulador a V1500 Nivel 7 X X X X X X X X
2 3 4

V1500
5 Nivel 8 X X X X X X X X
C
Programador D2-HPP
$
STR
L
B

D
1
ENT

A C F
D
SHFT ENT
ANDST 3 0 2 5

SHFT L D X B E B A ENT
ANDST 3 SET 1 4 1 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–61


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Load Accumulator Indexed from Data Constantes (LDSX)


La instrucción LDSX es una instrucción de 16 bits. La instrucción
1 DS5 Usado
especifica un Area de Data Label (DLBL) (de Etiqueta de Datos) LDSX
HPP Usado
donde se almacenan constantees numéricas o ASCII. Este valor se K aaa

2 carga en los 16 bits más bajos del acumulador.


La instrucción LDSX usa el valor en el primer nivel del Stack del acumulador como un "desvío"
3 para determinar cuál constantee numérica o ASCII dentro del Area DLBL se carga en el
acumulador. La instrucción de LDSX interpreta el valor en el primer nivel del Stack del
acumulador como un valor hexadecimal.
4 Sugerencia: — La instrucción LDA se puede usar para convertir octal a hexadecimal y cargar el
valor en el acumulador.
5 Tipo de operando de datos Rango del DL06
6 Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
aaa
1-FFFF

7 Indicadores
SP53 Está ON cuando el puntero está fuera del rango disponible.
Descripción

SP70 ON si el valor en el acumulador por cualquier instrucción es negativo.


8 SP76 ON cuando cualquier instrucción carga un valor 0 al acumulador.

NOTA: Dos instrucciones consecutivas LDSX colocan el contenido de la primera instrucción en el stack del
9 acumulador.

10 En el ejemplo siguiente cuando X1 está ON, se carga un desvío de 1 en el acumulador. Este


valor se colocará en el primer nivel del Stack del acumulador cuando se ejecuta la instrucción
LDSX. La instrucción LDSX especifica el área DLBL K2 donde se encuentran las constantees
11 numéricas en el programa y carga el valor constantee, indicado por el valor de desvío en el Stack,
en los 16 bits más bajos del acumulador.
12 X1 LD
K1
Los bits no usados del acumulador
Hexadecimal
0 0 0 1
El valor en el 1er. nivel del stack
usado como desvío. El valor es

se colocan en cero Stack del acumulador


Carga el valor del desvío 1 (K1) a los 16 bits

13 LDSX
K2
.
más bajos del acumulador Acum. 0 0 0 0 0 0 0 1 Level 1
Level 2
Level 3
0
X
X
0
X
X
X
X
0 0
X
X
0
X
X
0
X
X
0
X
X
1
X
X
Constante Level 4 X X X X X X X X
Mueve el desvío al stack. Carga el acumulador K 0 0 0 2

14 con el número del data label

OUT
Los bits no usados del acumulador
se colocan en cero
Acum. 0 0 0 0 0 0 0 2
Level 5
Level 6
Level 7
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Level 8 X X X X X X X X
V2000

A .
.
.
Copia el valor en los 16 bits más bajos
del acumulador a V2000
Los bits no usados del acumulador
se colocan en cero
DLBL END Acum. 0 0 0 0 2 3 2 3

B DLBL K2

2 3 2 3
NCON

C K3333
Desvío 0
V2000

NCON
Desvío 1
K2323

D NCON
Desvío 2
K4549

5–62 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

$ B ENT Programador D2-HPP


STR 1
L D K B
SHFT

SHFT
ANDST
L
ANDST
D
3

3
S
RST
SHFT

X
SET
JMP
C
1

2
ENT

ENT
1
SHFT E N D ENT

SHFT D
4

3
L
TMR

ANDST
B
3

1
L
ANDST
C
2
ENT
2
SHFT N C O N D D D D ENT

SHFT N
TMR

TMR
C
2

2
INST#
O
INST#
N
TMR

TMR
C
3

2
D
3

3
C
3

2
D
3

3
ENT 3
SHFT N C O N E F E J ENT
TMR 2 INST# TMR 4 5 4 9
GX
OUT
SHFT V
AND
C
2
A
0
A
0
A
0
ENT 4
La instrucción Load Real Number (LDR)
La instrucción LDR carga un número real contenido en dos LDR
5
DS5 Usado direcciones consecutivas de la memoria V o en una constantee de A aaa
HPP N/A 8 dígitos en el acumulador. 6
Tipo de operando de datos Rango del DL06
....................................A aaa 7
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Puntero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Real Constante . . . . . . . . . . . . . . . . . . . . . . . . . R
Vea el mapa de memoria
-3.402823E+38 to + -3.402823E+38
8
Indicadores
SP70
Descripción
On anytime the value in the accumulator is negative.
9
SP76 On when any instrucción loads a value of zero into the accumulator.
DirectSOFT le permite que entre los números reales directamente, usando una "R" como
10
prefijo que indica un ingreso de número real. Usted puede entrar
una constantee tal como Pi(p), mostrado en el ejemplo a la derecha. LDR
R3,14159
11
Para entrar números negativos, use un signo menos (-) después de la "R".
Para números muy grandes o números muy pequeños, se puede 12
usar la notación exponencial. El número a la derecha es 5,3 LDR
millones. La instrucción OUTD lo copia a V1400 y V1401. R5,3E6 13
¡Estos números reales están en el formato de punto flotante IEEE de
OUTD
32 bits, de modo que ocupan dos direcciones de memoria V, a pesar
de que el número puede ser muy grande o pequeño! Si usted ve un
V1400 14
número real almacenado en hexadecimal, binario o aún BCD, el
número mostrado será muy difícil de descifrar. Así como todos los A
otros tipos de números, usted debe seguir las direcciones del número
real en la memoria, de modo que puedan ser leídos en otra parte con
las instrucciones apropiadas
B
LDR
El ejemplo previo encima almacenó un número real en V1400 y
V1401. Suponga que ahora queremos recuperar ese número. Use
V1400 C
solamente LDR con el tipo de datos V, como se muestra a la
derecha. Luego podríamos realizar las operaciones matemáticas D
reales o convertirlo a un número binario.

Manual del PLC DL06, 2a. edición en español, 6/07 5–63


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Out de bloque (OUT)


Es una instrucción de 16 bits que copia el valor en los 16 bits más
1 DS5 Usado bajos contenido en el acumulador a una localización especificada
OUT
A aaa
HPP Usado de memoria V (Aaaa).
2 Tipo de operando de datos Rango del DL06
....................................A aaa
3 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria

4 Indicadores Descripción
SP53 ON si la CPU no puede resolver la lógica

5 En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 se carga en los 16 bits más bajos
del acumulador usando la instrucción LD. Luego se copia el valor en los 16 bits más bajos del
acumulador a V2010 con la instrucción OUT de bloque.
6 DirectSOFT
Direct SOFT32 Programador D2-HPP
X1 LD V2000 $ B ENT

7 V2000

Carga el valor en V2000 a


los 16 bits más bajos del Los bits no usados del acumulador
8 9 3 5

SHFT
STR
L
ANDST
D
1

acumulador son colocados en cero. C A A A ENT

8 OUT
V2010
Acc. 0 0 0 0 88 99 33 55
GX
OUT
2 0

SHFT
0
V
AND
0
C
2
A
0
B
1
A
0
ENT

9 Copia el valor en los 16 bits


más bajos del acumulador a V2010 8 9
V2010
3 5

10 La instrucción Out Double (OUTD)


La instrucción OUT Doble es una instrucción de 32 bits que OUTD
11 DS5 Usado
HPP Usado
copia el valor en el acumulador a dos direcciones consecutivas A aaa
de la memoria V en una localización (Aaaa) especificada.
12 Tipo de operando de datos
....................................A
Rango del DL06
aaa
13 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
Indicadores Descripción
14 SP53 On if CPU cannot solve the logic.

En el ejemplo siguiente, cuándo X1 está ON, el valor de 32 bits en V2000 y V2001 se carga en
A el acumulador usando la instrucción LDD. El valor en el acumulador es colocado en V2010 y
V2011 usando la instrucción OUTD.
B DirectSOFT
Direct SOFT32
6
V2001
7 3 9 5
V2000
0 2 6
Programador D2-HPP

X1 $ B ENT
LDD STR 1

C V2000

Carga el valor en V2000 y


V2001 al acumulador Acum. 6 7 3 9 55 00 22 66
SHFT

C
L
ANDST
A
D

A
3
D

A
3

ENT
2 0 0 0

D OUTD
V2010

Copia el valor en el acumulador 6 7 3 9 5 0 2 6


GX

C
OUT
A
SHFT D

B
3
A ENT
a V2010 y V2011 V2011 V2010 2 0 1 0

5–64 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Out Formatted (OUTF)


La instrucción OUTF carga 1-32 bits del acumulador a las
DS5 Usado
direcciones discretas especificadas de memoria V. La instrucción OUTF A aaa 1
HPP Usado K bbb
requiere una dirección (Aaaa) de inicio y el número de bits (Kbbb)
a ser transportados. Los bits no usados son colocados en 0. 2
Tipo de operando de datos Rango del DL06
....................................A aaa bbb 3
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–777 ––
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y
Relevadores de control . . . . . . . . . . . . . . . . . . . C
0–777
0–1777
––
––
4
Constantee . . . . . . . . . . . . . . . . . . . . . . . . . . . . K –– 1–32

En el siguiente ejemplo, cuando C0 está ON, serán cargados los bits C10 a C16 (7 bits) al
5
acumulador usando la instrucción LDF. Los 7 bits más bajos del acumulador son copiados a
Y0 a Y6 usando la instrucción OUTF. 6
DirectSOFT
Direct SOFT32
C0 LDF C10
Dirección
C10
Constante

K7
C16 C15 C14 C13 C12 C11 C10
7
K7 OFF OFF OFF ON ON ON OFF

Carga el estado de 7 bits


consecutivos (C10–C16)
al acumulador
Los bits no usados del acumulador serán colocados en cero. 8
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

OUTF
K7
Y20
0 0 0
Acumulador
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 1 0
9
Copia el valor de la cantidad
especificada de bits desde
el acumulador a Y20 - Y26
Dirección

Y20
Constante

K7
Y26 Y25 Y24 Y23 Y22 Y21 Y20
OFF OFF OFF ON ON ON OFF
10
Programador D2-HPP

$
STR
SHFT C
2
A
0
ENT 11
SHFT L D F
ANDST 3 5

SHFT

GX
C
2
B

F
1
A
0
H
7
ENT 12
SHFT
OUT 5
A
0
H
7
ENT
13
La instrucción Pop (POP)
14
La instrucción POP mueve el valor del primer nivel del Stack del
DS5 Usado
acumulador (32 bit) al acumulador y mueve cada valor en el Stack
POP
A
HPP Usado
un nivel más arriba de lo que estaba.
B
Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea cero. C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–65


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Pop continuada


En el ejemplo siguiente, cuándo C0 está ON, el valor 4545 que estaba encima del Stack se
1 mueve al acumulador usando la instrucción POP. El valor es copiado a V2000 usando la
instrucción OUT. El próximo POP mueve el valor 3792 al acumulador y copia el valor a
2 V2001. El último POP mueve el valor 7930 al acumulador y copia el valor a V2002 con la
instrucción OUT. Note que si el valor en el Stack usa más de 16 bits (4 dígitos) debe usarse la
instrucción OUTD y deben ser asignadas 2 direcciones de memoria V para cada OUTD.
3
DirectSOFT
Direct SOFT32

4 C0 POP
Valor previo del acumulador
Acum. X X X X XX XX XX XX

Valor corriente del acumulador Stack del acumulador

5 Copia el primer valor en el stack al


acumulador and mueve los valores del
stack un nivel más arriba
Acum. 0 0 0 0 44 55 44 55 Nivel 1
Nivel 2
0
0
0
0
0
0
0
0
0
0
3
7
7
9
9
3
2
0
Nivel 3 X X X X X X X X

6 OUT
V2000
Nivel 4
Nivel 5
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
V2000 4 5 4 5 Nivel 6 X X X X X X X X
Copia el valor en los 16 bits más
7 bajos del acumulador a V2000 Nivel 7
Nivel 8
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X

POP

8 Copia el primer valor en el stack al


Valor previo del acumulador

Acum. 0 0 0 0 44 55 44 55

acumulador and mueve los valores del Valor corriente del acumulador Stack del acumulador

9 stack un nivel más arriba


Acum. 0 0 0 0 3 7 9 2 Nivel 1
Nivel 2
0
X
0
X
0
X
0
X
7
X
9
X
3
X
0
X
OUT Nivel 3 X X X X X X X X

10 V2001

Copia el valor en los 16 bits más


bajos del acumulador a V2001
Nivel 4
Nivel 5
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
V2001 3 7 9 2 Nivel 6 X X X X X X X X

11 POP
Nivel 7
Nivel 8
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X

12 Copia el primer valor en el stack al


acumulador and mueve los valores del
stack un nivel más arriba
Valor previo del acumulador
Acum. 0 0 0 0 3 7 9 2

Valor corriente del acumulador Stack del acumulador

13 OUT
V2002
Acum. 0 0 0 0 7 9 3 0 Nivel 1
Nivel 2
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Nivel 3 X X X X X X X X
Copia el valor en los 16 bits más

14 bajos del acumulador a V2002 Nivel 4


Nivel 5
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
V2002 7 9 3 0 Nivel 6 X X X X X X X X
Programador D2-HPP

A $
STR
SHFT C
2
A
0
ENT
Nivel 7
Nivel 8
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X

P O P

B SHFT

GX
OUT
CV
SHFT

SHFT
INST#
V
AND
C
CV

2
A
ENT

0
A
0
A
0
ENT

C SHFT

GX
P
CV
SHFT

SHFT
O
INST#
V
P

C
CV
A
ENT

A B ENT
OUT AND 2 0 0 1

D SHFT

GX
P
CV
SHFT O
INST#
V
P

C
CV
A
ENT

A C
SHFT ENT
OUT AND 2 0 0 2

5–66 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Out Indexed (OUTX)


La instrucción OUTX es una instrucción de 16 bits. Copia un
DS5 Usado valor de 16 bits o de 4 dígitos desde el primer nivel del Stack O UT X
1
HPP Usado
del acumulador hasta una dirección cambiada por un número A aaa
de desvío que es el valor en el acumulador (la memoria V + el
desvío). Esta instrucción interpreta el valor del desvío como un
2
número hexadecimal. Los 16 bits más altos del acumulador
son forzados a 0. 3
Tipo de operando de datos Rango del DL06
....................................A aaa
4
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria 5
Indicadores Descripción
SP53 ON si la CPU no puede resolver la lógica 6
En el ejemplo siguiente, cuándo X1 está ON, la constantee 3544 es cargada al acumulador. Este
es el valor que será copiado a la memoria V de destino con desvío (V1525). El valor 3544 será 7
colocado en el Stack cuando se ejecuta la instrucción LDA. Recuerde, dos instrucciones
consecutivas LDA colocan el valor de la primera instrucción LD en el Stack. La instrucción
LDA convierte el valor 25 octal a 15 hexadecimal y coloca el valor en el acumulador.
8
La instrucción OUTX copia el valor 3544 que está en el primer nivel del Stack del acumulador
a V1525. 9
DirectSOFT
DirectSOFT32
X1 LD
3
Constant
5 4 4
10
K3544

Carga el valor 3544 al acumulador


Los bits no usados del
acumulador son colocadon en cero

Acum. 0 0 0 0 3 5 4 4
11
LDA
Octal HEX
12
2 5 0 0 1 5
O25

Carga el valor equivalente hexadecimal


al octal 25 en los 16 bits más bajos del
Los bits no usados del
acumulador son colocadon en cero
13
acumulador. este es el desvío de la
instrucción OUTX, que determina la .
Acum. 0 0 0 0 0 0 1 5
dirección de destino final

Octal Octal Octal


14
OUTX
+ 2 5 =
V1500
Copia el valor en el primer
V 1 5 0 0
El valor 15 hexadecimal se
conviente a 25 octal, que es
V 1

3
5

5
2

4
5

4 Nivel 1 0
Stack del acumulador
0 0 0 3 5 4 4
A
nivel del stack a la dirección sumado a la dirección inicial de Nivel 2 X X X X X X X X
V1500 para dar la respuesta final V1525
de desvío 1525
(V1500+25)

Programador D2-HPP
Nivel 3
Nivel 4
X
X
X X
X X
X
X
X
X
X X
X X
X
X
B
Nivel 5 X X X X X X X X
$
STR

SHFT L
B

D
1
ENT

PREV D F E E ENT
Nivel 6
Nivel 7
X
X
X X
X X
X
X
X
X
X X
X X
X
X
C
ANDST 3 3 5 4 4 Nivel 8 X X X X X X X X

SHFT

GX
L
ANDST
D

X
3
A
0
B
C

F
2
F

A
5
ENT

A
D
SHFT ENT
OUT SET 1 5 0 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–67


Capítulo 5: Instrucciones de Acumulador/Stack Load y salidas de datos (OUT)

La instrucción Out Least (OUTL)


La instrucción OUTL copia el valor en los 8 bits más bajos del
1 DS5 Usado
acumulador a los 8 bits más bajos de la memoria especificada
O UT L
A aaa
HPP Usado
(en otras palabras, copia el byte más bajo de la palabra más baja
2 del acumulador).
Tipo de operando de datos Rango del DL06
3 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
4 En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 se carga en los 16 bits más bajos
del acumulador usando la instrucción LD. El valor en los 8 bits más bajos del acumulador es
5 copiado a V1500 usando la instrucción OUTL.
DirectSOFT

6 Direct SOFT32
X1
LD
Carga el valor en V1400 a los
16 bits más bajos del acumulador
V1400

V1400 8 9 3 5

7 OUTL
V1500
Copia el valor en los 8 bits ................
del acumulador a V1500
Los bits no usados del acumulador
se colocan en cero

0 0 0 0 8 9 3 5
Acum.
.

8 Programador D2-HPP

$
STR
B
1
ENT

0 0 3 5
SHFT L D B E A A ENT

9 La instrucción Out Most (OUTM)


ANDST 3 1 4 0 0 V1500

La instrucción OUTM copia el valor en los 8 bits más altos de la


10 DS5 Usado palabra más baja del acumulador a los 8 bits más altos de la
O UT M
A aaa
HPP Usado memoria especificada (en otras palabras, copia el byte más alto de
11 la palabra más baja del acumulador).
Tipo de operando de datos Rango del DL06
12 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
13 En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 se carga en los 16 bits más bajos
del acumulador usando la instrucción LD. El valor en los 8 bits más altos de los 16 bits más
14 bajos del acumulador es copiado a V1500 usando la instrucción OUTM.
DirectSOFT
Direct SOFT32

A X1
LD
V1400
Carga el valor en V1400 a los
16 bits más bajos del
acumulador

Copia el valor en los 8 bits Los bits no usados del


8
V1400
9 3 5

OUTM acumulador se colocan en cero


mas altos de los 16 bits

B V1500 más bajos del


acumulador a 1500 Acum.
. 0 0 0 0 8 9 3 5

Programador D2-HPP

C $

SHFT
STR
L
ANDST
B

D
1

3
ENT

B
1
E
4
A
0
A
0
ENT
8 9
V1500
0 0

GX SHFT M B F A A ENT

D OUT ORST 1 5 0 0

5–68 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Lógicas

Las instrucciones lógicas con el acumulador


La instrucción And de bloque (AND)
1
La instrucción AND es una instrucción de 16 bits lógica que
DS5 Usado
hace la función AND del valor en los 16 bits más bajos del AND 2
HPP Usado A aaa
acumulador con una localización especificada de memoria V
(Aaaa). El resultado se va al acumulador. Una indicación discreta 3
del estado con un relevador especial SP indica si el resultado es cero.
Tipo de operando de datos Rango del DL06 4
....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
5
Indicadores Descripción 6
SP63 Está ON si el resultado de la instrucción en el acumulador es 0.
SP70 ON cuando el valor en el acumulador es negativo.
7
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 8
En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 se carga en el acumulador
usando la instrucción LD. El valor en el acumulador es operado AND con el valor en V2006 9
usando la instrucción AND. El valor en los 16 bits más bajos del acumulador es copiado a

DirectSOFT
V2010 usando la instrucción OUT. 10
Direct SOFT32
X1
LD
V2000
2
V2000
8 7 A 11
Carga el valor en V2000 a los Los 16 bits superiores
16 bits más bajos del acumulador del acumulador serán colocados en cero.

31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 12
Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0

AND
V2006 Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0
13
Opera AND el valor en el 6A38
acumulador con el valor
en V2006
AND (V2006)

Acum.
0

0
0

0
0

0
0

0
0

0
0

1
0
0

0
0

0
0

0
0

0
0

0
0

0
0

0
0

0
0

0
0

0
0

0
1

0
1

1
0

0
1

1
0

0
1

0
0

0
0

0
0

0
1

1
1

1
1

1
0

0
0

0
0

0
14
OUT
V2010
2 8 3 8
A
Copia los 16 bits más bajos
del acumulador a V2010

Programador D2-HPP
V2010
B
$ B ENT

SHFT
STR
L
ANDST
D
1

3
C
2
A
0
A
0
A
0
ENT
C
V SHFT V C A A G ENT
AND
GX
OUT
SHFT V
AND

AND
C
2

2
A
0

0
B
0

1
A
6

0
ENT
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–69


Capítulo 5: Instrucciones Lógicas

La instrucción And Double (ANDD)


ANDD es una instrucción de 32 bits que hace la función lógica
1 DS5 Usado
AND del valor en el acumulador con dos direcciones consecutivas
ANDD
HPP Usado
de memoria V o un valor (Aaaa) constantee de 8 dígitos
2 (máximo). El resultado se va al acumulador. Las indicaciones de
estado discretas con SP indican si el resultado de la instrucción
K aaa

ANDD es cero o un número negativo (el bit más significativo está ON).
3
Tipo de operando de datos Rango del DL06
4 aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
5 Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0–FFFFFFFF
6 Indicadores Descripción
SP63 ON si el resultado en el acumulador es 0.
7 SP70 ON si el resultado en el acumulador es negativo

NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
8 use el mismo relevador especial SP.

9 En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 y V2001 se carga en el


acumulador usando la instrucción LDD. El valor en el acumulador es operado como AND con
36476A38 usando la instrucción ANDD. El valor en el acumulador es copiado a V2010 y
10 V2011 usando la instrucción OUTD.

11 Direct SOFT32
X1 LDD 5
V2000
4 7 E 2
V2000
8 7 A

V2000

12 Carga el valor en V2000 y V2001


al acumulador
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Acum. 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0

13 ANDD
K36476A38 Acum. 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0

Opera AND el valor en el


AND 36476A38 0 0 1 1 0 1 1 0 0 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 0 0 1 1 1 0 0 0

14 acumulador con el
valor constante
36476A38 Acum. 0 0 0 0
1 0 1 0 0 0 0
1 0 0 0 0
1 0
1 0 0 0 1 0 1 0 0 0 0 0 1 1 1 0 0 0

A OUTD
V2010 1 4 4 6 2 8 3 8

Copia el valor en el acumulador V2011 V2010


a V2010 y V2011

B
Programador D2-HPP

C $
STR
B
1
ENT

SHFT L D D C A A A ENT
ANDST 3 3 2 0 0 0

D V
AND
SHFT D
3
SHFT K
JMP
D
3
G
6
E
4
H
7
G
6
SHFT A
0
SHFT D
3
I
8
ENT

GX SHFT D C A B A ENT
OUT 3 2 0 1 0

5–70 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Lógicas

La instrucción And Formatted (ANDF)


La instrucción ANDF hace la función lógica AND entre el valor
DS5
HPP Usado
Usado
binario en el acumulador y un rango especificado de bits en la
ANDF A aaa
1
memoria (1-32) . La instrucción requiere una localización
K bbb
(Aaaa) de inicio y el número de bits (Kbbb) a ser operados AND.
Las indicaciones de estado discretas con SP indican si el resultado
2
es cero o un número negativo (el bit más significativo = 1).
Tipo de operando de datos Rango del DL06 3
....................................B aaa bbb
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0-777 - 4
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0-777 -
Relevadores de control . . . . . . . . . . . . . . . . . . . C
Bits de etapas . . . . . . . . . . . . . . . . . . . . . . . . . . S
0-1777
0-1777
-
-
5
Bits de temporizadores . . . . . . . . . . . . . . . . . . . T 0-377 -
Bits de contadores . . . . . . . . . . . . . . . . . . . . . . CT 177 - 6
Relevadores especiales . . . . . . . . . . . . . . . . . . SP 0-777 -
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K - 1-32
7
Indicadores Descripción
SP63
SP70
ON si el resultado en el acumulador es 0.
ON si el resultado en el acumulador es negativo.
8
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que 9
use el mismo relevador especial SP.

En el ejemplo siguiente, cuándo X1 está ON la instrucción LDF copia C10-C13 (4 bits


10
binarios) en el acumulador. El contenido del acumulador es operado AND lógico con el modelo
de bits Y20-Y23 usando la instrucción ANDF. La instrucción OUTF copia los 4 bits más bajos 11
del acumulador a C20-C23.
DirectSOFT
DirectSOFT32
X1
LDF C10 Dirección
C10
Constante
K4
C13 C12 C11 C10
12
K4 ON ON ON OFF

Carga el estado de 4 bits


consecutivos (C10-C13)
al acumulador
Los bits no usados del acumulador son colocados en cero. 13
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
ANDF
K4
Y20

Opera AND el grupo de bits binarios


0 0
Acumulador
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 1 0
14
Acum. 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 1 0
(Y20-Y23) con el valor en el
acumulador

OUTF C20
AND (Y20-Y23)
Y23 Y22 Y21 Y20
ON OFF OFF OFF 1 0 0 0 A
Acum
. 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
K4

B
ndard RLL

Copia el valor en los 16 bits


más bajos de acumulador
a C20 - C23
dirección Constante C23 C22 C21 C20
Programador D2-HPP
$
STR
B
1
ENT
C20 K4 ON OFF OFF OFF
C
SHFT L D F NEXT NEXT NEXT NEXT B A E ENT

V
AND
ANDST

SHFT F
3

5
5

NEXT C
2
A
0
E
4
1

ENT
0 4
D
GX SHFT F PREV PREV C A E ENT
OUT 5 2 0 4

Manual del PLC DL06, 2a. edición en español, 6/07 5–71


Capítulo 5: Instrucciones Lógicas

La instrucción And with Stack (ANDS)


La instrucción ANDS es una instrucción de 32 bits que hace la
1 DS5 Usado
función lógica AND entre el valor en el acumulador con el valor del
ANDS
HPP Usado
primer nivel del Stack del acumulador. El resultado se va al acumulador.
2 El valor en el primer nivel del Stack del acumulador se remueve del
Stack y todos los valores son movidos para arriba un nivel.
Indicaciones de estado discretas SP indican si el resultado del ANDS es
3 cero o un número negativo (el bit más significativo está ON).

4 Indicadores Descripción
SP63 ON si el resultado en el acumulador es 0.

5 SP70 ON si el resultado en el acumulador es negativo

NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
6 use el mismo relevador especial SP.

En el ejemplo siguiente cuando X1 está ON, el valor binario en el acumulador hace la función
7 AND con el valor binario en el primer nivel del Stack del acumulador. El resultado se va al
acumulador. El valor de 32 bits luego es copiado a V1500 y V1501.
8
9 DirectSOFT
DirectSOFT32
X1 V1401 V1400
LDD
5 4 7 E 2 8 7 A

10 V1400
Carga el valor en V1400 y V1401
al acumulador

11 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9

0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0
8 7
0 0
6 5
1 1
4 3
1 1 0
2 1
1
0
0

ANDS

12 Opera AND el valor en


36476A38
0

AND(1r.nivel del stack) 0


1

0
0 1

1 1
0

0 1
1 0

1
0 0

0 0
1

1 0
1 1

0
1 1

0 1
1

1 1
0 0

0
0

1
1 0

1 0
1

1 0
0 0

1
0 0

0 0
1

0 1
1 1

1
1 0

1 0
1

0 0
0

el acumulador con
el primer nivel del

13 stack del acumulador

OUTD
. 0
Acum. 0 0 1
0 0 1 0 0 0 0
1 0 0 0 1
0 0
1 0 0 0 1 0 1 0 0 0 0 0 1 1 1 0 0 0

V1500

14 Copia el valor el en acumulador


a V1500 y V1501
1 4 4
V1501
6 2 8
V1500
3 8

A Programador D2-HPP

$ B ENT
STR 1

B SHFT

V
L
ANDST
D

S
3
D
3
B
1
E
4
A
0
A
0
ENT

SHFT ENT
AND RST

C GX
OUT
SHFT D
3
B
1
F
5
A
0
A
0
ENT

5–72 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Lógicas

La instrucción de bloque Or (OR)


La instrucción OR es una instrucción de 16 bits que hace la
DS5
HPP Usado
Usado
función lógica OR entre el valor en los 16 bits más bajos del OR
1
acumulador con una localización especificada de memoria V A aaa
(Aaaa). El resultado se va al acumulador. La indicación de estado
discreta SP indica si el resultado de la función OR es cero.
2
Tipo de operando de datos
....................................A
Rango del DL06
aaa
3
Memoria V. . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria 4
Indicadores Descripción
SP63 ON si el resultado en el acumulador es 0.
5
SP70 ON cuando el valor en el acumulador es negativo.
6
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 7
En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 se carga en el acumulador
usando la instrucción LD. El valor en el acumulador es operado con V2006 usando la 8
instrucción OR. El valor en los 16 bits más bajos del acumulador es copiado a V2010 usando
la instrucción OUT. 9
DirectSOFT
Direct SOFT32
X1
LD
V2000
10
2 8 7 A
V2000

Carga el valor en V2000 a


los 16 bits más bajos
del acumulador
Los 16 bits superiores del acumulador son colocados en cero 11
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

OR
Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0
12
V2006 Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0

Opera OR el valor en el
acumulador con el valor
en V2006
6A38
OR (V2006) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 0 1 1 1 0 0 0
13
Acum. 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0

OUT
V2010
14
6 A 7 A
Copia el valor en los 16 bits más
bajos del acumulador a V2010 V2010 A
Programador D2-HPP

$
STR
B
1
ENT B
SHFT L D C A A A ENT
ANDST 3 2 0 0 0
Q
OR
SHFT V
AND
C
2
A
0
A
0
G
6
ENT C
GX SHFT V C A B A ENT
OUT AND 2 0 1 0
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–73


Capítulo 5: Instrucciones Lógicas

La instrucción Or Double (ORD)


ORD es una instrucción de 32 bits que hace la función OR entre
1 DS5 Usado
el valor en el acumulador con el valor (Aaaa), que es dos ORD
HPP Usado
direcciones consecutivas de memoria V o una constantee de 8 K aaa
2 dígitos (max.). El resultado se va al acumulador. Indicaciones de
estado discretas SP indican si el resultado de la operación ORD es
cero o un número negativo (el bit más significativo está ON).
3 Tipo de operando de datos Rango del DL06
4 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria
5 Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0–FFFFFFFF

Indicadores Descripción
6 SP63 ON si el resultado en el acumulador es 0.
SP70 ON si el resultado en el acumulador es negativo.
7 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
8
En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 y V2001 se carga en el
9 acumulador usando la instrucción LDD. El valor en el acumulador es operado OR con
36476A38 usando la instrucción ORD. El valor en el acumulador es copiado a V2010 y V2011
usando la instrucción OUTD.
10 DirectSOFT
Direct SOFT32
X1 V2001 V2000
LDD

11 V2000

Carga el valor en V2000 y


5 4 7 E 2 8 7 A

V2001 al acumulador

12 Acum. 0
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0
8
0
7
0
6 5
1 1
4 3
1 1
2
0
1
1
0
0

ORD

13 K36476A38

Opera OR el valor en el
Acum. 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0

acumulador con el OR 36476A38 0 0 1 1 0 1 1 0 0 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 0 0 1 1 1 0 0 0

14 valor constante 367A38


Acum. 0 0
1 0
1 0
1 0 1 0
1 0 0 0
1 0
1 0
1 0
1 0
1 0
1 0
1 0 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0

OUTD

A V2010

Copia el valor en el acumulador


a V2010 y V2011
7 6 7 F 6 A 7 A

V2011 V2010

B Programador D2-HPP

$ B ENT
STR 1

C SHFT L
ANDST
D
3
D
3
C
2
A
0
A
0
A
0
ENT

Q SHFT D SHFT K D G E H G SHFT A SHFT D I ENT

D GX
OUT
OR

SHFT D
3

3
C
2
A
JMP

0
B
3

1
A
6

0
ENT
4 7 6 0 3 8

5–74 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Lógicas

La instrucción Or Formatted (ORF)


La instrucción ORF hace la función OR lógica entre el
DS5 Usado
valor binario en el acumulador y un rango especificado de ORF A aaa
1
HPP Usado
bits (1-32). La instrucción requiere una localización (Aaaa) K bbb
de inicio y el número de bits (Kbbb) a ser operados OR.
Indicaciones de estado discretas SP indican si el resultado es
2
cero o negativo (el bit más significativo = 1).
3
Tipo de operando de datos Rango del DL06
A/B
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
aaa
0-777
bbb
--
4
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y
Relevadores de control . . . . . . . . . . . . . . . . . . . C
0-777
0-1777
--
--
5
Bits de etapas. . . . . . . . . . . . . . . . . . . . . . . . . . . S 0-1777 --
Bits de temporizadores . . . . . . . . . . . . . . . . . . . T
Bits de contadores . . . . . . . . . . . . . . . . . . . . . . CT
0-377
0-177
--
--
6
Relevadores especiales . . . . . . . . . . . . . . . . . . SP
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
0-777
-
--
1-32
7
Indicadores
SP63 ON si el resultado en el acumulador es 0.
Descripción 8
SP70 ON cuando el valor en el acumulador es negativo.
9
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 10
En el ejemplo siguiente, cuándo X1 está ON la instrucción ORF carga C10-C13 (4 bits) en el
acumulador. La instrucción opera OR el contenido del acumulador con los bits Y20-Y23. La
11
instrucción OUTF copia los 4 bits más bajos del acumulador a C20-C23.
DirectSOFT
DirectSOFT32
X1 LDF C10 Dirección Constante C13 C12 C11 C10
12
K4 C10 K4 OFF ON ON OFF

Carga el estado de 4 bits


consecutivos (C10-C13)
al acumulador
Los bits no usados del acumulador son colocados en cero.
13
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
ORF

K4
Y20

Opera OR el grupo de bits


Acum. 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
14
(Y20 - Y23) con el valor en
el acumulador

OUTF C20 OR (Y20-- Y23)


Y23 Y22 Y21 Y20
ON OFF OFF OFF 1 0 0 0 A
Acum. 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 1 0
K4
Copia la cantidad especificada
de bits desde el acumulador a C20-C23 B
Handheld Programmer Keystrokes
Dirección Constante
$
STR

SHFT L
B

D
1
F
ENT

NEXT NEXT NEXT NEXT B A E ENT


C20 K4
C23 C22 C21 C20
ON ON ON OFF
C
ANDST 3 5 1 0 4
Q

GX
OR
SHFT

SHFT
F

F
5
NEXT

PREV
C

PREV
2
A

C
0
A
E
4
E
ENT

ENT
D
OUT 5 2 0 4

Manual del PLC DL06, 2a. edición en español, 6/07 5–75


Capítulo 5: Instrucciones Lógicas

La instrucción Or with Stack (ORS)


La instrucción ORS es una instrucción de 32 bits que opera
1 DS5
HPP Usado
Usado
OR lógicamente el valor en el acumulador con el primer nivel
del Stack del acumulador. El resultado se va al acumulador. OR S
2 El valor en el primer nivel del Stack del acumulador se quita
del Stack y todos los valores son movidos un nivel para arriba.
Indicaciones de estado discretas SP indican si el resultado del
3 OR con el Stack es cero o un número negativo (el bit más
significativo está ON).
4 Indicadores Descripción
SP63 ON si el resultado en el acumulador es 0.
5 SP70 ON cuando el valor en el acumulador es negativo.

6 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.

7 En el ejemplo siguiente cuando X1 está ON, el valor binario en el acumulador será operado OR
con el valor binario en el primer nivel del Stack. El resultado se va al acumulador.
8 DirectSOFT
DirectSOFT32
X1 V1401 V1400

9 LDD
V1400
Carga el valor en V1400 y
5 4 7 E 2 8 7 A

V1401 al acumulador

10 Acum. 0
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9

1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0
8 7
0 0
6 5
1 1
4 3
1 1 0
2 1
1
0
0

11 ORS

Opera OR el valor en el
Acum. 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0
36476A38
acumulador con el valor OR (1r.nivel stack) 0 0 1 1 0 1 1 0 0 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 0 0 1 1 1 0 0 0

12 en el primer nivel del


stack del acumulador Acum. 0 0
1 0 1
1 0 0 1 0
1 0 0 0
1 0
1 0
1 0 1
1 0 0
1 0
1 0 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0

OUTD

13 V1500
Copia el valor en el acumulador 7 6 7 F 6 A 7 A
a V1500 y V1501
V1501 V1500

14
Programador D2-HPP

A $
STR
B
1
ENT

SHFT L D D B E A A ENT
ANDST 3 3 1 4 0 0

B Q
OR
SHFT S
RST
ENT

GX SHFT D B F A A ENT

C OUT 3 1 5 0 0

5–76 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Lógicas

La instrucción Exclusive Or (XOR)


La instrucción XOR es una instrucción de 16 bits que realiza
DS5 Usado un OR exclusivo entre el valor en los 16 bits más bajos del XOR 1
HPP Usado acumulador y una localización especificada de memoria V A aaa
(Aaaa). El resultado se va al acumulador. La indicación de
estado discreta SP indica si el resultado del XOR es cero.
2
Tipo de operando de datos Rango del DL06 3
....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
4
Indicadores
SP63 ON si el resultado en el acumulador es 0.
Descripción 5
SP70 ON cuando el valor en el acumulador es negativo.
6
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 7
En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 se carga en el acumulador
usando la instrucción LD. El valor en el acumulador es operado con V2006 usando la 8
instrucción XOR. El valor en los 16 bits más bajos del acumulador es copiado a V2010 usando
la instrucción OUT. 9
DirectSOFT
Direct SOFT32
X1 LD
V2000
2
V2000
8 7 A
10
Carga el valor en V2000 a los
16 bits más bajos de acumulador
Los 16 bits superiores del
acumulador serán colocados en cero. 11
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

XOR
Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 1 0
12
V2006 Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0

Opera XOR el valor en el


acumulador con el valor
6A38
XOR (V2006) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 0 1 1 1 0 0 0
13
en V2006
Acum. 0 0 0 0 0 01 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0
14
OUT
V2010

Copia los 16 bits más bajos


4 2 4 2 A
del acumulador a V2010 V2010

Programador D2-HPP B
$ SHFT X B ENT

SHFT
STR
L
ANDST
D
3
SET 1

SHFT V
AND
C
2
A
0
A
0
A
0
ENT
C
SHFT

GX
X
SET
SHFT Q

V
OR
C A
SHFT V

B
AND
C

A
2
A
0
A
0
G
6
ENT
D
SHFT ENT
OUT AND 2 0 1 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–77


Capítulo 5: Instrucciones Lógicas

La instrucción Exclusive Or Double (XORD)


En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000
1 DS5 Usado
se carga en el acumulador usando la instrucción LD. El valor en
XORD
HPP Usado
el acumulador es operado con V2006 usando la instrucción K aaa
2 XOR, es decir, hace un OR exclusivo entre el acumulador y
V2006. El valor en los 16 bits más bajos del acumulador es
copiado a V2010 usando la instrucción OUT).
3
Tipo de operando de datos Rango del DL06
4 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
5 Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Vea el mapa de memoria
0–FFFFFFFF

6 Indicadores
SP63 ON si el resultado en el acumulador es 0.
Descripción

SP70 ON cuando el valor en el acumulador es negativo.


7 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
8
En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 y V2001 se carga en el
9 acumulador usando la instrucción LDD. El valor en el acumulador es operado con un OR
exclusivo con 36476A38 usando la instrucción XORD. El valor en el acumulador es copiado a
V2010 y V2011 usando la instrucción OUTD.
10
DirectSOFT
11 Direct SOFT32
X1 LDD 5
V2001
4 7 E 2
V2000
8 7 A

V2000

12 Carga el valor en V2000 y


V2001 al acumulador
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
XORD Acum. 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0

13 K36476A38

Opera XORD el valor en


Acum. 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0
el acumulador con el valor
constante 36476A38
14 OUTD
XORD 36476A38

Acum.
0

0
0

0
1
1

0
1
1

0
0

0
1

1
0
1

0
1
0

0
0

0
1

0
0

0
1
0

0
1
0

0
1
1

0
1

0
1

0
1
0

0
1

1
1

0
0

0
1

0
0

0
1

1
0

0
0

0
0

1
1

0
1

0
1

0
0

0
0

1
0

0
V2010

A Copia el valor en el acumulador


a V2010 y V2011
6 2 3 9 4 2 4 2

B Programador D2-HPP
$
STR
B
1
ENT
V2011 V2010

C SHFT

SHFT
L
ANDST
X
D

Q
3
D

SHFT
3
D
C
2
A

SHFT
0
A

K
0
A
0
ENT

SET OR 3 JMP

D D

GX
3
G
6
E

D
4
H
7
G

C
6
SHFT

A
A

B
0
A
SHFT D
3
I
8
ENT

SHFT ENT
OUT 3 2 0 1 0

5–78 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Lógicas

La instrucción Exclusive Or Formatted (XORF)


La instrucción XORF realiza un XORF un OR exclusivo del
DS5 Usado
HPP Usado
valor binario en el acumulador y un rango especificado de
XO R F
K bbb
A aaa
1
bits (1-32).
La instrucción requiere una dirección (Aaaa) de inicio y el número de bits (bbbb) a ser operados. 2
Las indicaciones de estado discretas SP indican si el resultado de la operación es cero o negativo
(el bit más significativo = 1). 3
Tipo de operando de datos Rango del DL06

Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
A/B aaa
0-777
bbb
-
4
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0-777 -
Relevadores de control . . . . . . . . . . . . . . . . . . . C 0-1777 - 5
Bits de etapas . . . . . . . . . . . . . . . . . . . . . . . . . . S 0-1777 -
Bits de temporizadores . . . . . . . . . . . . . . . . . . . T
Bits de contadores . . . . . . . . . . . . . . . . . . . . . CT
0-377
177
-
-
6
Relevadores especiales . . . . . . . . . . . . . . . . . SP 0-777 -
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K - 1-32 7
Indicadores Descripción
SP63 ON si el resultado en el acumulador es 0.
8
SP70 ON cuando el valor en el acumulador es negativo.
9
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
10
En el ejemplo siguiente, cuándo X1 está ON, el modelo binario de C10-C13 (4 bits) es cargado
en el acumulador usando la instrucción LDF. El valor en el acumulador será operado XROF con
los bits Y20-Y23 usando la instrucción XORF. El valor en los 4 bits más bajos del acumulador
11
DirectSOFT
DirectSOFT32
X1
LDF C10
Dirección Constante C13 C12 C11 C10
12
C10 K4 OFF ON ON OFF
K4

Carga el estado de 4 bits


consecutivos (C10-C13)
al acumulador
Los bits no iudados del acumulador son colocados en cero. 13
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
X0RF
K4
Y20

Opera OR exclusivo el
0 0
Acumulador
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
14
Acum. 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
grupo de bits (Y20-Y23)
con el valor en el acumulador

OUTF C20
Y23 Y22 Y21 Y20
XORF (Y20-Y23) ON OFF OFF OFF

Acum. 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0

1
0

1
0

0
A
K4
Copia la cantidad de bits
especificada desde el
acumulador a C20-C23 B
Dirección Constante C23 C22 C21 C20
Programador D2-HPP

$
STR
B
1
ENT
C20 K4 ON ON ON OFF
C
SHFT L D F NEXT NEXT NEXT NEXT B A E ENT

SHFT
ANDST
X
SET
Q
3

OR
SHFT
5
F
5
NEXT C
2
A
0
1
E
0

4
ENT
4
D
GX SHFT F PREV PREV C A E ENT
OUT 5 2 0 4

Manual del PLC DL06, 2a. edición en español, 6/07 5–79


Capítulo 5: Instrucciones Lógicas

La instrucción Exclusive Or with Stack (XORS)


La instrucción XORS es una instrucción de 32 bits que realiza un
1 DS5 Usado
OR exclusivo del valor en el acumulador con el primer nivel del
HPP Usado Stack del acumulador. El resultado se va al acumulador. El valor en XO R S
2 el primer nivel del Stack del acumulador se quita del Stack y todos
los valores son movidos un nivel para arriba. Indicaciones de estado
discretas SP indican si el resultado de la instrucción XORS es cero
3 o un número negativo (el bit más significativo está ON). Recuerde
que el stack se hace cero al fin de cada barrido.
4 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
5
Indicadores Descripción
6 SP63
SP70
ON si el resultado en el acumulador es cero.
ON si el resultado en el acumulador es negativo

7 En el ejemplo siguiente cuando X1 está ON, el valor binario en el acumulador será operado OR
exclusivo con el valor binario en el primer nivel del Stack del acumulador. El resultado residirá
8 en el acumulador. La instrucción OUTD copia el valor en el acumulador a V1500.

DirectSOFT
9 DirectSOFT32
X1 LDD
5
V1401
4 7 E 2
V1400
8 7 A
V1400

10 Carga el valor en V1400 y


V1401 al acumulador

31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

11 XORS
Acum. 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0

Acum. 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0

12 Opera OR exclusivo el

con el valor en el primer


36476A38
valor en el acumulador XOR (1r nivel del Stack) 0 0 1 1 0 1 1 0 0 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 0 0 1 1 1 0 0 0

nivel del stack del acumulador Acum. 0 0


1 0 0
1 0 1
0 0
1 0 0 0 0
1 0
1 0 0
1 0 10 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0

13 OUTD

V1500
6 2 3 9 4 2 4 2

14 Copia el valor en el acumulador


a V1500 y V1501 V1501 V1500

A Programador D2-HPP

$ B ENT
STR 1

B SHFT L
ANDST
X
D

Q
3
D
3
S
B
1
E
4
A
0
A
0
ENT

SHFT SHFT ENT


SET OR RST

C GX
OUT
SHFT D
3
B
1
F
5
A
0
A
0
ENT

5–80 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Lógicas

La instrucción Compare (CMP)


La instrucción CMP es una instrucción de 16 bits que compara el valor
DS5 Usado
HPP Usado
en los 16 bits más bajos del acumulador con el valor en una localización CMP 1
especificada de memoria V (Aaaa). La indicación SP correspondiente del A aaa
estado será prendida indicando el resultado de la comparación. 2
Tipo de operando de datos Rango del DL06
....................................A aaa 3
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria
4
Indicadores Descripción
SP60
SP61
ON si el resultado en el acumulador es menor que el valor de la instrucción.
ON si el resultado en el acumulador es igual al valor de la instrucción.
5
SP62 ON si el resultado en el acumulador es mayor que el valor de la instrucción.
6
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 7
En el ejemplo siguiente cuando X1 está ON, la constantee 4526 es cargada en los 16 bits más bajos
del acumulador usando la instrucción LD. El valor en el acumulador es comparado con el valor 8
BCD en V2000 usando la instrucción CMP. La indicación SP correspondiente del estado será
prendida indicando el resultado de la comparación. En este ejemplo, si el valor en el acumulador es
menor que el valor especificado en la instrucción CMP, SP60 prenderá activando C30.
9
X1 LD
K4526
CONSTANTE
4 5 ?
2 ?
6
10
Carga el valor constante
4526 en los 16 bits más
bajos del acumulador
Los bits no usados del
acumulador son colocados en cero. 11
Acum. 0 0 0 0 44 55 2?
2 66
?

12
Comparado con
CMP
V2000
8 9 4 5
13
Compara el valor en el acumulador
con el valor en V2000
V2000
14
SP60 C30

A
Programador D2-HPP
$
STR
B
1
ENT
B
L D K E F C G
SHFT

SHFT
ANDST
C
3

SHFT M
SHFT

P
JMP
C
4
A
5
A
2
A
6
ENT

ENT
C
2 ORST CV 2 0 0 0
$

GX
STR
SHFT SP
STRN
C
G

D
6
A

A
0
ENT
D
SHFT ENT
OUT 2 3 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–81


Capítulo 5: Instrucciones Lógicas

La instrucción Compare Double (CMPD)


La instrucción CMPD es una instrucción de 32 bits que compara el
1 DS5 Usado
valor en el acumulador con el valor (Aaaa), que es dos direcciones
CMPD
A aaa
HPP Usado
consecutivas de memoria V o una constantee de 8 dígitos (máximo).
2 La indicación SP correspondiente del estado será activada indicando
el resultado de la comparación.
3 Tipo de operando de datos Rango del DL06
....................................A aaa
4 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0–FFFFFFFF
5 Indicadores Descripción
SP60 ON si el resultado en el acumulador es menor que el valor de la instrucción.
6 SP61 ON si el resultado en el acumulador es igual al valor de la instrucción.
SP62 ON si el resultado en el acumulador es mayor que el valor de la instrucción.
7 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
8
En el ejemplo siguiente cuando X1 está ON, el valor en V2000 y V2001 se carga al acumulador
9 usando la instrucción LDD. El valor en el acumulador es comparado con el valor en V2010 y
V2011 usando la instrucción CMPD. La indicación SP correspondiente del estado será
prendida indicando el resultado de la comparación.
10 En este ejemplo, si el valor en el acumulador es menor que el valor especificado en la
instrucción, SP60 prenderá activando C30.
11 X1 LDD
V2001 V2000
4 5 2 6 7 2 9 9
V2000

12 Load the value in V2000 and


V2001 into the accumulator

Acc. 4 5 2 6 7 2 9 9

13 CMPD
Compared
with
V2010

14 Compare the value in the


accumulator with the value
in V2010 and V2011
6 7 3
V2011
9 5 0 2
V2010
6

A SP60 C30
OUT

B Handheld Programmer Keystrokes

$ B ENT
STR 1

C SHFT L
ANDST
D
3
D
3
C
2
A
0
A
0
A
0
ENT

SHFT C SHFT M P D C A B A ENT


2 ORST CV 3 2 0 1 0

D $
STR
SHFT SP
STRN
G
6
A
0
ENT

GX SHFT C D A ENT
OUT 2 3 0

5–82 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Lógicas

La instrucción Compare Formatted (CMPF)


La instrucción CMPF compara el valor en el acumulador con
DS5 Usado
un número especificado de bits consecutivos (1-32 ). La C MP F A aaa 1
HPP Usado
instrucción requiere una localización (Aaaa) de inicio y el K bbb
número de bits (Kbbb) a ser comparado. La indicación
correspondiente del estado SP será prendida indicando el
2
resultado de la comparación.
Tipo de operando de datos Rango del DL06
3
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A/B
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
aaa
0-777
bbb
-
4
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0-777 -
Relevadores de control . . . . . . . . . . . . . . . . . . . C 0-1777 - 5
Bits de etapas . . . . . . . . . . . . . . . . . . . . . . . . . . S 0-1777 -
Bits de temporizadores . . . . . . . . . . . . . . . . . . . T
Bits de contadores . . . . . . . . . . . . . . . . . . . . . . CT
0-377
0-177
-
-
6
Relevadores especiales . . . . . . . . . . . . . . . . . . SP 0-777 -
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K - 1-32 7
Indicadores Descripción
SP60 ON si el resultado en el acumulador es menor que el valor de la instrucción.. 8
SP61 ON si el resultado en el acumulador es igual al valor de la instrucción.
SP62 ON si el resultado en el acumulador es mayor que el valor de la instrucción. 9
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 10
En el ejemplo siguiente, cuándo X1 está ON la instrucción LDF carga el valor binario de C10-
C13 en el acumulador. La instrucción CMPF compara el valor en el acumulador al valor en
11
Y20-Y23 (hexadecimal E). La indicación SP correspondiente del estado será prendida indicando
el resultado de la comparación. . En este ejemplo, si el valor en el acumulador es menor que el 12
valor especificado en la instrucción, SP60 prenderá activando C30.
13
X1 Carga el valor de los bits Dirección Constante
LDF
K4
C10
especificados (C10-C13)
al acumulador
C10 K4
C13 C12 C11 C10
OFF ON ON OFF 14
CMPF
K4
Y20
Compara el valor en el
acumulador con el valor
de los bits especificados
Los bits no isados del acumulador
son colocados en cero.

0 0 0 0 0 0 0 6
A
Acum.
(Y20-Y23)
SP60 C30
OUT Y23 Y22 Y21 Y20
Comparado
con
B
ON ON ON OFF
E
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–83


Capítulo 5: Instrucciones Lógicas

La instrucción Compare with Stack (CMPS)


La instrucción CMPS es una instrucción de 32 bits que compara el
1 DS5 Usado
valor en el acumulador con el valor en el primer nivel del Stack del
C MP S
HPP Usado
acumulador. La indicación correspondiente del estado SP será prendida
2 indicando el resultado de la comparación. Esto no afecta el valor en el
acumulador. Recuerde que el stack se hace 0 al fin de cada barrido.
3 Indicadores
SP60
Descripción
ON si el resultado en el acumulador es menor que el valor de la instrucción.
SP61 ON si el resultado en el acumulador es igual que el valor de la instrucción.
4 SP62 ON si el resultado en el acumulador es mayor que el valor de la instrucción.

5 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
6 En el ejemplo siguiente cuando X1 está ON, el valor en V1400 y V1401 se carga en el
acumulador usando la instrucción LDD. El valor en V1410 y V1411 se carga en el acumulador
7 usando la instrucción LDD. El valor que se cargó en el acumulador desde V1400 y V1401 se
coloca en el primer nivel del Stack cuando la segunda instrucción LDD es ejecutada. El valor
en el acumulador es comparado con el valor en el primer nivel del Stack del acumulador
8 usando la instrucción CMPS. La indicación SP correspondiente del estado será prendida
indicando el resultado de la comparación. En este ejemplo, si el valor en el acumulador es menor
9 que el valor en el Stack , SP60 prenderá, activando C30.
DirectSOFT
DirectSOFT32 V1401 V1400

10 X1 LDD
V1400
Carga el valor en V1400 y
V1401 al acumulador
6 5 0 0 3 5 4 4

11 LDD
V1410
Carga el valor en V1410 y
V1411 al acumulador
Acum. 6 5 0 0 3 5 4 4

12 CMPS
Compara el valor en el
acumulador con el valor
en el primer nivel del 5
V1411
5 0 0 3
V1410
5 4 4
stack del acumulador

13 SP60 C30
5 5 0 0 3 5 4 4
OUT Acum.

14 Programador D2-HPP Comparado con


el primer nivel

A $
STR
L
B

D
1
ENT

D B E A A
del stack

SHFT ENT
ANDST 3 3 1 4 0 0

B SHFT L
ANDST
D
3
D
3
B
1
E
4
B
1
A
0
ENT

C M P S

C SHFT

$ PREV
2
SHFT

G
ORST
A ENT
CV RST
ENT

STR 6 0

D GX
OUT
NEXT NEXT NEXT SHFT C
2
D
3
A
0
ENT

5–84 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Lógicas

La instrucción Compare Real Number (CMPR)


La instrucción CMPR compara un valor del número real en el
DS5 Usado
acumulador con dos direcciones consecutivas de memoria V CMPR 1
HPP Usado
que contienen un número real. La indicación correspondiente A aaa
del estado SP será prendida indicando el resultado de la 2
comparación. Ambos números a ser comparados tienen 32 bits.
Tipo de operando de datos Rango del DL06 3
....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
4
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . R -3.402823E+ 038 hasta + -3.402823E+ 038

Indicadores Descripción
5
SP60
SP61
ON si el resultado en el acumulador es menor que el valor de la instrucción..
ON si el resultado en el acumulador es igual que el valor de la instrucción.
6
SP62 ON cuando el valor en el acumulador es mayor que el valor de la instrucción.
SP71 ON en cualquier momento que la memoria V especificada por un puntero (P) no es válida 7
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 8
NOTA: El número real no es absolutamente preciso; permite un rango desde negativo hasta positivo, pero 9
no es muy preciso ya que solo representa 23 bits de resolución.

En el ejemplo siguiente cuando X1 está ON, la instrucción LDR carga la representación real del 10
número 7,0 en el acumulador. La instrucción CMPR compara el contenido del acumulador con
la representación real del número 6,0. Ya que 7 > 6, la indicación discreta SP correspondiente
del estado es activada (el relevador especial SP62) activando el relevador de control C1.
11
12
DirectSOFT
DirectSOFT32
Carga la representación
X1 LDR
R7.0 del número real del 13
decimal 7 al acumulador Acum. 4 0 E 0 0 0 0 0

CMPR Compara el valor con la 14


R6.0 representación del número
real del decimal 6 CMPR 4 0 D 0 0 0 0 0
A
SP62 C1
OUT
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–85


Capítulo 5: Instrucciones aritméticas

Instrucciones aritméticas
1 La instrucción Add (ADD)
ADD
ADD es una instrucción de 16 bits que suma un valor BCD en
2 DS5 Usado
HPP Usado
el acumulador con un valor BCD en una direccción de memoria
V (Aaaa). No se puede usar una constantee K como parámetro
A aaa

en la instrucción. El resultado se va al acumulador.


3 Tipo de operando de datos Rango del DL06
....................................A aaa
4 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria
5 Indicadores Descripción
SP63 ON cuando el resultado de la operación causa que el valor en el acumulador sea cero.
6 SP66
SP67
ON cuando el resultado de la operación de 16 bits resulta en un "pasa para" .
ON cuando el resultado de la operación de 32 bits resulta en un "pasa para" .
SP70 ON en cualquier momento que el valor en el acumulador es negativo.
7 SP75 ON si se espera un número BCD y se encuentra uno de tipo diferente.

8 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
9 En el ejemplo siguiente, cuándo X1 está ON, se carga el valor en V2000 en el acumulador
usando la instrucción LD. El valor en los 16 bits más bajos del acumulador es sumado al valor
10 en V2006 usando la instrucción ADD. El valor en el acumulador es copiado a V2010 usando
la instrucción OUT.
11 X1 LD
V2000
4 9 3 5

12 DirectSOFT
Carga el valor en V2000 a
los 16 bits más bajos
del acumulador
Los bits no usados del acumulador
son colocados en cero
0 0 0 0 4 9 3 5 (Acumulador)

13 ADD
V2006
+ 2 5 0 0 (V2006)

Acum. 7 4 3 5
Suma el valor en los 16 bits

14 más bajos del acumulador


con el valor en V2006

OUT

A V2010

Copia el valor en los 16 bits más bajos


7 4

V2010
3 5

del acumulador a la memoria V2010

B Programador D2-HPP

$ B ENT

C SHFT
STR
L
ANDST
D
1

3
C
2
A
0
A
0
A
0
ENT

D SHFT

GX
A
0
D
3
D

V
3
C
C

A
2
A

B
0
A

A
0
G
6
ENT

SHFT ENT
OUT AND 2 0 1 0

5–86 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Add Double (ADDD)


ADDD es una instrucción de 32 bits que suma el
DS5 Usado valor BCD en el acumulador con un valor BCD ADDD
1
HPP Usado (Aaaa), que son 2 direcciones consecutivas de A aaa
memoria V o una constantee de 8 dígitos (max)
BCD. El resultado se va al acumulador.
2
Tipo de operando de datos Rango del DL06 3
....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
4
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0–99999999
5
Indicadores Descripción
SP63
SP66
ON cuando el resultado de la operación causa que el valor en el acumulador sea cero.
ON cuando el resultado de la operación de 16 bits resulta en un "pasa para" .
6
SP67 ON cuando el resultado de la operación de 32 bits resulta en un "pasa para”.
SP70 ON en cualquier momento que el valor en el acumulador es negativo. 7
SP75 ON si se espera un número BCD y se encuentra uno de tipo diferente.

NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que 8
use el mismo relevador especial SP.

En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 y V2001 se carga en el


9
acumulador usando la instrucción LDD. El valor en el acumulador se suma con el valor en
V2006 y V2007 usando la instrucción ADDD. El valor en el acumulador es copiado a V2010 10
y V2011 usando la instrucción OUTD.

DirectSOFT
Direct SOFT V2001 V2000
11
X1 LDD 6 7 3 9 5 0 2 6
V2000

Carga el valor en V2000 y V2001


12
al acumulador

ADDD
V2006
+ 2
6 7
0
3
0
9
0
5
4
0
0
2
4
6
6
(Acumulador)

(V2006 y V2007)
13
Acum. 8 7 3 9 9 0 7 2
Suma el valor en el acumulador
con el valor en V2006 y V2007 14
OUTD
V2010

Copia el valor en el acumulador


8 7 3

V2001
9 9 0 7

V2010
2
A
a V2010 y V2011

Programador D2-HPP B
$ B ENT
STR 1

SHFT L
ANDST
D
3
D
3
C
2
A
0
A
0
A
0
ENT C
SHFT A D D D C A A G ENT

GX
OUT
SHFT
0
D
3

3
3 3

SHFT V
AND
C
2

2
A
0

0
B
0

1
A
6

0
ENT
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–87


Capítulo 5: Instrucciones aritméticas

La instrucción Add Real (ADDR)


La instrucción ADDR suma un número real en el acumulador con ADDR
1 DS5 Usado
una constantee real o un número real que ocupa dos direcciones A aaa
HPP Usado consecutivas de memoria V. El resultado se va al acumulador. Ambos
2 números deben estar de acuerdo al formato de punto flotante IEEE de 32 bits.
Tipo de operando de datos Rango del DL06
3 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
4 Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . R
Vea el mapa de memoria
-3.402823E+ 38 to + -3.402823E+ 38

5 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.

6 SP70
SP71
ON cuando el valor en el acumulador es negativo.
ON en cualquier momento que la memoria V especificada por un puntero (P) no es válida.
SP72 ON cuando el valor en el acumulador es un número de punto flotante inválido.
7 SP73 ON cuando una suma o sustracción con signo da como resultado un bit de signo incorrecto.
SP74 ON cuando una operación de punto flotante resulta en un error underflow.

8 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
9 Este ejemplo muestra la convención de punto flotante IEEE de 32 bits

10 X1
LDR
R7.0
4 0 E 0 0 0 0 0

Carga el número real 7.0

11 al acumulador

+
7,0
15,0 + 4
4 0
1
E
7
0
0
0
0
0
0
0
0
0
0
(Acumulador)
(ADDR)

22,0 Acc. 4

12 ADDR
R15.0
1

V1401
B 0 0 0 0

V1400
0

Suma el número real 15.0 al 4 1 B 0 0 0 0 0 ( Número hexadecimal)

13 contenido del acumulador,


que está en formato
de número real
Valor real

14 OUTD
Acum.
8 4

0 1
2

0
1

0
8

0
4 2

0 0
1

1
8

1
4

0
2 1

1 1
8

0
4

0
2

0
1

0
8 4
0 0
2
0
1
0
8
0
4 2
0 0
1
0
8
0
4
0
2 1
0 0
8
0
4
0
2
0
1
0
V1400

A Copia el resultado en el
acumulador a V1400 y
V1401 en formato
Bit de signo Exponente (8 bits) Mantisa (23 bits)
de número real
4

B 128 + 2 + 1 = 131
131 - 27 = 4
Implícitamente 2
4
1.011 x 2 = 10110binario= 22
decimal

C NOTA: El programador D2-HPP no permite entrar números reales con conversión automática al formato
IEEE de 32 bits. Ud debe utilizar DirectSOFT en este caso, para usar esta función.
D

5–88 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Subtract (SUB)


SUB (Resta) es una instrucción de 16 bits que resta el valor BCD SUB
DS5 Usado
(Aaaa) en una dirección de memoria V del valor BCD en los 16 bits A aaa 1
HPP Usado
más bajos del acumulador. El resultado se va al acumulador.
Tipo de operando de datos Rango del DL06
2
....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
3
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria

Indicadores Descripción 4
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP64 ON cuando la instrucción de resta de 16 bits pide un “préstamo”. 5
SP65 ON cuando la instrucción de resta de 32 bits pide un “préstamo”.
SP70
SP75
ON cuando el valor en el acumulador es negativo.
ON si se espera un número BCD y se encuentra un número diferente de BCD.
6
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
7
En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 se carga en el acumulador 8
usando la instrucción LD.
El valor en V2006 se resta del valor en el acumulador usando la instrucción SUB. El valor en el
acumulador es copiado a V2010 usando la instrucción OUT.
9
DirectSOFT
Direct SOFT32 V2000
10
2 4 7 5
X1 LD
V2000
11
Carga el valor en V2000 a
los 16 bits más bajos del
acumulador Los bits no usados del 0 0 0 0 2 4 7 5
12
acumulador son colocados en cero.
SUB _
1 5 9 2
V2006

Resta el valor en V2006


Acum. 0 8 8 3
13
desde el valor en los 16 bits
más bajos del acumulador
14
OUT 0 8 8 3
V2010

Copia el valor en los 16 bits


V2010 A
más bajos del acumulador a V2010

Programador D2-HPP B
$ B ENT
STR 1

SHFT L
ANDST
D
3
C
2
A
0
A
0
A
0
ENT
C
S U B V C A A G
SHFT

GX
RST ISG

SHFT V
1
C A
SHFT

B
AND
A
2

ENT
0 0 6
ENT
D
OUT AND 2 0 1 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–89


Capítulo 5: Instrucciones aritméticas

La instrucción Subtract Double (SUBD)


Resta Doble SUBD es una instrucción de 32 bits que resta el valor
1 DS5 Usado
BCD (Aaaa), que puede ser 2 direcciones consecutivas de memoria V
SUBD
A aaa
HPP Usado
o una constantee de 8 dígitos (máximo), desde el valor BCD en el
2 acumulador.
Tipo de operando de datos Rango del DL06
3 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria

4 Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Vea el mapa de memoria
0–99999999
Indicadores Descripción
5 SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP64 ON cuando la instrucción de resta de 16 bits pide un "préstamo".
6 SP65 ON cuando la instrucción de resta de 32 bits pide un "préstamo".
SP70 ON cuando el valor en el acumulador es negativo.

7 SP75 ON si se espera un número BCD y se encuentra un número diferente de BCD.

NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
8 use el mismo relevador especial SP.

9 En el ejemplo siguiente, cuándo X1 está ON, se carga el valor en V2000 y V2001 en el


acumulador usando la instrucción LDD. El valor en V2006 y V2007 se resta del valor en el
acumulador. El valor en el acumulador es copiado a V2010 y V2011 usando la instrucción
10 OUTD.
Direct SOFT32 V2001 V2000
DirectSOFT
0 1 0 6 3 2 7 4
11 X1 LDD
V2000

Carga el valor en V2000 y V2001

12 al acumulador

_
0 1
6
0
7
6 3
2
2
3
7
7
4
5
SUBD

13 V2006

El valor en V2006 y V2007


es restado desde el valor
Acum. 0 0 3 9 0 8 9 9

en el acumulador

14 OUTD
V2010
0 0 3 9 0 8 9 9

V2011 V2010

A Copia el valor en el acumulador


a V2010 y V2011

B Programador D2-HPP

$
STR
B
1
ENT

C SHFT L
ANDST
S
D
3
D

U
3
B
C

D
2
A
0
A

C
0
A
A
0
ENT

A G
SHFT SHFT ENT
RST ISG 1 3 2 0 0 6

D GX
OUT
SHFT D
3
C
2
A
0
B
1
A
0
ENT

5–90 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Subtract Real (SUBR)


La instrucción SUBR resta un número real en el acumulador de una
DS5 Usado
constantee real o un número real que ocupa 2 direcciones S UBR 1
HPP N/A consecutivas de memoria V. El resultado se va al acumulador. Ambos A aaa
números deben seguir el formato de punto flotante IEEE de 32 bits. 2
Tipo de operando de datos Rango del DL06
....................................A aaa 3
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . R
Vea el mapa de memoria
-3.402823E + 38 hasta +-3.402823E + 38
4
Indicadores Descripción 5
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP70 ON cuando el valor en el acumulador es negativo. 6
SP71 ON en cualquier momento que la memoria V especificada por un puntero (P) no es válida.
SP72
SP73
ON cuando el valor en el acumulador es un número de punto flotante inválido.
ON cuando una suma o sustracción con signo da como resultado un bit de signo incorrecto.
7
SP74 On cuando una operación de punto flotante resulta en un error de underflow.
8
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 9
DirectSOFT DirectSOFT32
X1
LDR
R22.0
4 1 B 0 0 0 0 0
10
Carga el valor real 22.0
al acumulador

-
2
1
2
5
(decimal)
+ 4
4 1
1
B
7
0
0
0
0
0
0
0
0
0
0
(Acumulador)
(SUBR)
11
SUBR
R15.0
7 Acum. 4 0 E 0 0 0 0 0
12
V1401 V1400

Resta el valor real 15.0


desde el valor en el
acumulador
4 0 E 0 0 0 0 0 (Número hexadecimal)
13
Valor Real

OUTD
8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 14
0 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
V1400

Copia el resultado en el
acumulador a las memorias Bit de signo Exponente (8 bits) Mantisa (23 bits)
A
V1400 y V1401

128 + 1 = 129
129 - 127 = 2
2
1.11 x 2 = 111 binario = 7 decimal B
2
Implícitamente 2
C
NOTA: El programador D2-HPP no permite entrar números reales con conversión automática al formato
IEEE de 32 bits. Ud debe usar DirectSOFT en este caso, para usar esta función. D

Manual del PLC DL06, 2a. edición en español, 6/07 5–91


Capítulo 5: Instrucciones aritméticas

La instrucción Multiply (MUL)


MUL es una instrucción de 16 bits que multiplica el valor
1 DS5 Usado
BCD (Aaaa), que es una dirección de memoria V o una MUL
A aaa
HPP Usado
constantee de 4 dígitos (max.) por el valor BCD en los 16
2 bits más bajos del acumulador. El resultado puede ser de
hasta 8 dígitos y se va al acumulador.
3 Tipo de operando de datos Rango del DL06
....................................A aaa
4 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0–9999
5 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
6 SP70 ON cuando el valor en el acumulador es negativo.
SP75 ON si se espera un número BCD y se encuentra un número diferente de BCD.
7 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
8
En el ejemplo siguiente, cuándo X1 está ON, se carga el valor en V2000 al acumulador usando
9 la instrucción LD. El valor en V2006 es multiplicado por el valor en el acumulador. El valor en
el acumulador es copiado a V2010 y V2011 usando la instrucción OUTD.
V2000
10 DirectSOFT
Direct SOFT32

X1 LD
1 0 0 0

V2000

11 Carga el valor en V2000 a los


16 bits más bajos del
Los bits no usados del acumulador
son colocados en cero.
acumulador 0 0 0 0 1 0 0 0 (Acumulador)

12 MUL
V2006 Acc.
X

0 0 0 2 5 0
2

0
5

0
(V2006)

13 El valor en V2006 es multiplicado


por el valor en el acumulador

14 OUTD
V2010
0 0 0

V2011
2 5 0

V2010
0 0

A Copia el valor en el acumulador


a V2010 y V2011

B Programador D2-HPP

$ B ENT
STR 1

C SHFT L
ANDST
D
3
C
2
A
0
A
0
A
0
ENT

SHFT M U L C A A G ENT
D GX
ORST

SHFT D
ISG ANDST
C A
2
B
0
A
0

ENT
6

OUT 3 2 0 1 0

5–92 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Multiply Double (MULD)


MULD es una instrucción de 32 bits que multiplica el valor de 8
DS5 Usado dígitos BCD en el acumulador por el valor de 8 dígitos BCD en 2 MULD
1
HPP Usado direcciones consecutivas de memoria V especificadas en la instrucción. A aaa
Los 8 dígitos más bajos del resultado se van al acumulador. Los dígitos 2
superiores del resultado se van al Stack del acumulador.
Tipo de operando de datos Rango del DL06 3
....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
4
Indicadores Descripción 5
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP70
SP75
ON cuando el valor en el acumulador es negativo.
ON si se espera un número BCD y se encuentra un número diferente de BCD.
6
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
7
En el ejemplo siguiente, cuándo X1 está ON, la constantee hexadecimal Kbc614e se carga en el 8
acumulador. Cuándo es convertido a BCD el número es "12345678". Esos números se
almacenan en V1400 y V1401. Después de cargar la constantee K2 en el acumulador, se
multiplica por 12345678, que es 24691356.
9
DirectSOFT
Direct SOFT32

X1 LDD Carga el equivalente hexadecimal


1 2 3 4 5 6 7 8 (Acumulador)
10
de 12345678 decimal
KBC614E al acumulador

BCD Convierte el valor a formato


BCD. Ocupará 8 dígitos 1
V1401
2 3 4 5
V1400
6 7 8
11
BCD (32 bits)

OUTD
V1400
Copia el número a V1400
y V1401 usando la
instrucción OUTD Acum. 2
X

4 6 9 1 3 5
2

6
(Acumulador)
12
LD
K2
Carga la constante K2
al acumulador
13
Multiplica el contenido 2 4 6 9 1 3 5 6
MULD del acumulador (2) por

OUTD
V1400 el número de 8 dígitos
en V1400 y V1401

Copia el resultado en el
V1403 V1402
14
acumulador a V1402 y
V1402

Programador D2-HPP
V1403 usando la instrucción
OUTD
A
$ B ENT

SHFT
STR
L
ANDST
D
1

3
D
3
PREV SHFT B
1
C
2
SHFT G
6
B
1
E
4
SHFT E
4
ENT B
SHFT B C D ENT

GX
OUT
SHFT
1
D
2

3
3
B
1
E
4
A
0
A
0
ENT C
SHFT L D PREV C ENT
ANDST 3 2

SHFT M
ORST
U
ISG
L
ANDST
D
3
B
1
E
4
A
0
A
0
ENT D
GX SHFT D B E A C ENT
OUT 3 1 4 0 2

Manual del PLC DL06, 2a. edición en español, 6/07 5–93


Capítulo 5: Instrucciones aritméticas

La instrucción Multiply Real (MULR)


La instrucción MULR multiplica un número real en el acumulador
1 DS5 Usado
HPP Usado
con una constantee real o un número real que ocupa dos direcciones
MULR
A aaa
consecutivas de memoria V. El resultado se va al acumulador. Ambos
2 números deben estar de acuerdo al formato de punto flotante IEEE.
Tipo de operando de datos Rango del DL06
3 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
4 Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Constante real . . . . . . . . . . . . . . . . . . . . . . . . . . R
Vea el mapa de memoria
-3.402823E +38 to + -3.402823E +38

5 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.

6 SP70
SP71
ON cuando el valor en el acumulador es negativo.
ON en cualquier momento que la memoria V especificada por un puntero (P) no es válida.
SP72 ON cuando el valor en el acumulador es un número de punto flotante inválido.
7 SP73 ON cuando una suma o sustracción con signo da como resultado un bit de signo incorrecto.
SP74 On cuando una operación de punto flotante resulta en un error de underflow.

8 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
9
DirectSOFT
DirectSOFT32

10 X1
LDR
R 7.0
4 0 E 0 0 0 0 0

Carga el número real 7.0

11 al acumulador

x 1
7
5
(decimal)
X 4
4 0
1
E
7
0
0
0
0
0
0
0
0
0
0
(Acumulador)
(MULR)

12 MULR
R 15.0
1 0 5 Acum. 4 2 D 2 0 0 0 0

V1401 V1400

13 Multiplica el contenido
del acumulador por el
número real 15.0
4 2 D 2 0 0 0 0 (Número hexadecimal)

Valor real

14 OUTD
8 4
Acum. 0 1
2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1
0 0 0 0 1 0 1 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
V1400

A Copia el resultado en el
acumulador a las
memorias V1400 y V1401
Bit de signo Exponente (8 bits) Mantisa (23 bits)

B 128 + 4 + 1 = 133
133 - 127 = 6
1.101001 x 2
6
= 1101001 binario = 105
dec im al
6
Implícitamente 2
C
D NOTE: The current HPP does not support real number entry with automatic conversion to the 32-bit IEEE
format. You must use DirectSOFT for this feature.

5–94 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Divide (DIV)


DIV es una instrucción de 16 bits que divide el valor
DS5 Usado BCD en el acumulador por un valor BCD (Aaaa), que es DIV
1
HPP Usado una localización de memoria V o una constantee de 4 A aaa
dígitos (max.) La primera parte del cociente se va al
acumulador y el resto se va al primer nivel del Stack.
2
3
Tipo de operando de datos Rango del DL06
....................................A
Memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria
4
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0–9999 5
Indicadores Descripción
SP53 On cuando el valor del operando es más grande de lo que puede aceptar el acumulador.
6
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP70 ON cuando el valor en el acumulador es negativo. 7
SP75 ON si se espera un número BCD y se encuentra un número diferente de BCD.

NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que 8
use el mismo relevador especial SP.

En el ejemplo siguiente, cuándo X1 está ON, se carga el valor en V2000 al acumulador usando
9
la instrucción LD. El valor en el acumulador será dividido por el valor en V2006 usando la
instrucción DIV. El valor en el acumulador es copiado a V2010 usando la instrucción OUT. 10
DirectSOFT
Direct SOFT32

X1
V2000
5 0 0 0
11
LD
V2000

Carga el valor en V2000 a


t 16 bits más bajos del
los
Los bits no usados del
acumulador son
12
acumulador colocados en cero.

DIV
V2006
÷
0 0 0 0 5 0 0

4
0

9
(Acumulador)

V2006 13
Acc. 1 0 2 0 0 0 0 0 0 0 2
El valor en el acumulador
es dividido por el valor en V2006 El primer nivel del stack
contienel el residuo de la división
14
OUT
V2010
1
V2010
0 2
A
Copia el valor en los 16 bits

Programador D2-HPP
más bajos del acumulador
a V2010 B
$
STR
L
B

D
1
ENT

C A A A
C
SHFT ENT
ANDST 3 2 0 0 0

SHFT D
3
I
8
V
AND
C
2
A
0
A
0
G
6
ENT D
GX SHFT V C A B A ENT
OUT AND 2 0 1 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–95


Capítulo 5: Instrucciones aritméticas

La instrucción Divide Double (DIVD)


DIVD es una instrucción de 32 bits que divide el valor BCD
1 DS5 Usado
en el acumulador por un valor BCD (Aaaa), que se debe
HPP Usado obtener de 2 direcciones consecutivas de memoria V. (No se DIVD
2 puede usar una constantee como el parámetro de la A aaa
instrucción) La primera parte del cociente se va al acumulador
3 y el resto se va al primer nivel del Stack.
Tipo de operando de datos Rango del DL06
4 ....................................A
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria

5 Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria

Indicadores Descripción
6 SP63
SP70
ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
ON cuando el valor en el acumulador es negativo.
SP75 ON si se espera un número BCD y se encuentra un número diferente de BCD.
7 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
8
En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se carga al
9 acumulador usando la instrucción LDD. El valor en el acumulador es dividido por el valor en
V1420 y V1421 usando la instrucción DIVD. La primera parte del cociente se va al
acumulador y el resto se va al primer nivel del Stack . El valor en el acumulador es copiado a
10 V1500 y V1501 usando la instrucción OUTD.

11 X1 LDD 0
V1401
1 5 0 0
V1400
0 0 0
V1400

12 carga el valor en V1400 y V1401


en el acumulador Los bits no usados del acumulador
se colocan en cero
0 1 5 0 0 0 0 0 (Acumulador)

13 DIVD
V1420
Acc.
? 0

0
0

0
0

0
0

3
0

0
0

0
5

0
0

0
(V1421 y V1420)

0 0 0 0 0 0 0 0
El valor en el acumulador La primera localización del stack
14 es dividido por el valor en
V1420 y V1421
contiene el resto

A OUTD
V1500 0 0 0 3 0 0 0 0

Copia el valor en el V1501 V1500

B acumulador a V1500
y V1501
Programador D2-HPP
POP
$ B
C Recupera el resto
STR

SHFT L D
1
D
ENT

B E A A
ENT
ANDST 3 3 1 4 0 0

D OUTD
V1502
SHFT D
3
I
8
V
AND
B
1
E
4
C
2
A
0
ENT

GX SHFT D B F A A ENT
Copia el valoe en
OUT 3 1 5 0 0
V1502 y V1503

5–96 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Divide Real (DIVR)


La instrucción DIVR divide un número real en el acumulador
DS5
HPP
Usado
N/A
por una constantee real o por un número real que ocupa 2 DIVR
A aaa
1
direcciones consecutivas de memoria V. El resultado se va al
acumulador. Ambos números deben estar de acuerdo al formato
punto flotante IEEE.
2
Tipo de operando de datos Rango del DL06 3
....................................A aaa
Memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
4
Constante Real . . . . . . . . . . . . . . . . . . . . . . . . . R -3.402823E + 38 hasta + -3.402823E + 38

Indicadores Descripción
5
SP63
SP70
ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
ON cuando el valor en el acumulador es negativo.
6
SP71 ON en cualquier momento que la memoria V especificada por un puntero (P) no es válida.
SP72
SP74
ON cuando el valor en el acumulador es un número de punto flotante inválido.
ON cuando una operación de punto flotante resulta en un error underflow.
7
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que 8
use el mismo relevador especial SP.

DirectSOFT
DirectSOFT32
9
X1 4 1 7 0 0 0 0 0
LDR
R15.0

Carga el número real 15.0 al


10
acumulador
1 5 (decimal) 4 1 7 0 0 0 0 0 (Acumulador)
¸ 1 0
1. 5
¸

Acc. 3
4 1

F
2

C
0

0
0

0
0

0
0

0
0

0
(DIVR ) 11
DIVR
R10.0

Divide el valor contenido en 3


V1401
F C 0 0
V1400
0 0 0 (Número hexadecimal)
12
el acumulador por el número
real 10.0

Valor real 13
8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1
OUTD
V1400

Copia el resultado que está


Acum. 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
14
en el acumulador a las Bit de signo Exponente (8 bits) Mantisa ( 23 bits)
memorias V1400 y V1401
A
d d RLL

64 + 32 + 16 + 8 + 4 + 2 + 1 = 127 1.1 x 20 = 1.1 = 1.5 dec im al


binario
127 - 127 = 0
Implícitamente 2
0
B
NOTA: El programador D2-HPP no permite entrar números reales con conversión automática al formato
IEEE de 32 bits. Ud debe usar DirectSOFT en este caso, para usar esta función. C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–97


Capítulo 5: Instrucciones aritméticas

La instrucción Increment (INC)


La instrucción INC incrementa un valor BCD en "1"en una INC
1 DS5 Usado
HPP Usado
dirección especificada de memoria V cada vez que se ejecuta la A aaa
instrucción.
2 La instrucción Decrement (DEC)
La instrucción DEC decrementa en "1" un valor BCD en una DEC
3 DS5 Usado
HPP Usado
dirección especificada de memoria V cada vez que se ejecuta la A aaa
instrucción.
4 Tipo de operando de datos Rango del DL06
....................................A aaa
5 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria

6 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
7 SP75 ON si se espera un número BCD y se encuentra un número diferente de BCD.

NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
8 use el mismo relevador especial SP.

9 DirectSOFT
Direct SOFT32 V1400

C5 8 9 3 5

10 INC
V1400

Incrementa el valor en
11 V1400 en "1".
8
V1400
9 3 6
Programador D2-HPP
12 $
STR
NEXT NEXT NEXT NEXT F
5
ENT

13 SHFT I
8
N
TMR
C
2
B
1
E
4
A
0
A
0
ENT

En el ejemplo siguiente, cuándo C5 está ON, el valor contenido en V1400 aumenta en 1.


14 DirectSOFT
Direct SOFT32 V1400
C5 8 9 3 5
A DEC
V1400

Decrementa el valor en
B V1400 en “1”.
V1400
8 9 3 4
C Programador D2-HPP

$ NEXT NEXT NEXT NEXT F ENT


D STR

SHFT D E C B E
5
A A ENT
3 4 2 1 4 0 0

5–98 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Add Binary (ADDB)


ADDB es una instrucción de 16 bits que suma el valor binario
DS5 Usado en los 16 bits más bajos del acumulador con el valor (Aaaa) 1
HPP Usado binario que es una localización de memoria V o una ADDB
constantee de 16 bits. El resultado puede ser de hasta de 32
bits y se va al acumulador. Note que se puede usar el
A aaa 2
complemento de 2 para expresar números negativos. Vea el
apéndice J para más explicaciones. 3
Tipo de operando de datos Rango del DL06
....................................A aaa
4
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria 5
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0-FFFF, h=65636

Indicadores Descripción 6
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP66
SP67
ON cuando la instrucción de 16 bits de suma resulta en un "pasa para".
ON cuando la instrucción de 32 bits de suma resulta en un "pasa para".
7
SP70 ON cuando el valor en el acumulador es negativo.
SP73 ON si una suma o resta con signo resulta con el bit de un signo incorrecto. 8
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
9
En el siguiente ejemplo, cuando X1 está ON, el valor en V1400 se carga en el acumulador 10
usando la instrucción LD. El valor binario en el acumulador es sumado al valor binario en

DirectSOFT
11
DirectS OF T 32 V1400

X1
LD
0 A 0 5
12
V1400

Carga el valor en V1400 a los


16 bits más bajos del acumulador
Los bits no usados del
acumulador son colocados en cero. 13
0 0 0 0 0 A 0 5 (Acumulador)
ADDB + 1 2 C 4 (V1420)
14
V1420

El valor binario en el acumulador


es sumado con el valor binario en V1420
Acc. 1 C C 9
A
1 C C 9
B
OU T D
V1500

Copia el valor en los 16 bits


V1500 C
más bajos del acumulador
a V1500 y V1501
D
V1420 usando la instrucción ADDB. El valor en el acumulador es copiado a V1500 y V1501

Manual del PLC DL06, 2a. edición en español, 6/07 5–99


Capítulo 5: Instrucciones aritméticas

La instrucción Add Binary Double (ADDBD)


ADDBD es una instrucción de 32 bits que suma el valor binario en
1 DS5 Usado el acumulador con el valor (Aaaa), que corresponde a dos ADDBD
HPP Usado A aaa
localizaciones consecutivas de memoria V o una constantee binaria de
2 32 bits. El resultado reside en el acumulador. Note que se puede usar
el complemento de 2 para expresar números negativos. Vea el apéndice J para más explicaciones.
3 Tipo de operando de datos
....................................A
Rango del DL06
aaa
4 Memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0-FFFF FFFF
5 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
6 SP66 ON cuando la instrucción de 16 bits de suma resulta en un "pasa para".
SP67 ON cuando la instrucción de 32 bits de suma resulta en un "pasa para".
7 SP70
SP73
ON cuando el valor en el acumulador es negativo.
ON si una suma o resta con signo resulta con el bit de un signo incorrecto.

8 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
9 En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se carga al acumulador
usando la instrucción LDD. El valor binario en el acumulador se suma con el valor binario en
10 V1420 y V1421 usando la instrucción ADDBD. El valor en el acumulador es copiado a V1500

11 DirectSOFT
DirectS OF T 32

X1 0
V1401
0 0 0 0
V1400
A 0 1
LDD

12 V1400

Carga el valor en V1400 y V1401


al acumulador
(Acumulador)
13 ADDBD
+ 1
0 0
0
0
0
0
0 C
0 A
0
0
1
1
0 (V1421 y V1420)

V1420 Acum. 1 0 0 0 C A 1 1
14 El valor binario en el acumulador
es sumado con el valor
en V1420 y V1421
A 1 0 0 0 C A 1 1
OU T D

B V1500
V1501 V1500

Programador D2-HPP y V1501 usando


C $
STR
L
B

D
1
D
ENT

B E A A
la
OUTD.
instrucción
SHFT ENT
ANDST 3 3 1 4 0 0

D SHFT

GX
A
0
D

D
3
D
3
B

B
1
D

F
3
A
B

A
1
E
4
C
2
A
0
ENT

SHFT ENT
OUT 3 1 5 0 0

5–100 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Subtract Binary (SUBB)


DS5 Usado
SUBB es una instrucción de 16 bits que resta el valor (Aaaa) binario que
es una dirección de memoria V o una constantee del valor binario en el
S UBB
A aaa
1
HPP Usado acumulador. El resultado se va al acumulador. Note que se puede usar
el complemento de 2 para expresar números negativos. Vea el apéndice I para más explicaciones. 2
Tipo de operando de datos Rango del DL06
....................................A aaa 3
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Vea el mapa de memoria
0-FFFF, h=65636
4
Indicadores Descripción 5
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP64
SP65
ON cuando la instrucción de 16 bits de resta resulta en un "préstamo".
ON cuando la instrucción de 32 bits de resta resulta en un "préstamo".
6
SP70 ON cuando el valor en el acumulador es negativo.
SP73 ON si una suma o resta con signo resulta con el bit de un signo incorrecto. 7
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
8
En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 se cargará al acumulador
usando la instrucción LD. El valor binario en V1420 es restado del valor binario en el
9
acumulador usa la instrucción SUBB. El valor en el acumulador es copiado a V1500 usando la
instrucción OUT. 10
X1
LD
Use una memoria V o una constante

LD
11
V1400 K1024

Carga el valor en V1400 en los 16 bits


más bajos del acumulador BIN 1
V1400
0 2 4 12
SUBB
V1420
Los bits no usados del
acumulador son colocados en cero.
13
0 0 0 0 1 0 2 4 (Acumulador)
El valor binario en V1420 es
restado desde el valor
en el acumulador
- 0 A 0 B (V1420) 14
Acc. 0 6 1 9
OUT
V1500 A
Copia el valor en los 16 bits
más bajos del acumulador a V1500
y queda como valor binario
0 6

V1500
1 9
B
Programador D2-HPP
STR X(IN)

D
1

V
ENT

1 4 0 0
C
SHFT L ENT

SHFT

V
S

1
SHFT

4 2
U B

0
B

ENT
D
OUT SHFT D V 1 5 0 0 ENT

Manual del PLC DL06, 2a. edición en español, 6/07 5–101


Capítulo 5: Instrucciones aritméticas

La instrucción Subtract Binary Double (SUBBD)


SUBBD es una instrucción de 32 bits que resta el valor (Aaaa)
1 DS5 Usado
binario que son 2 direcciones consecutivas de memoria V o una S UBBD
HPP Usado
constantee binaria de 32 bits, del valor binario en el acumulador. A aaa
2 El resultado se va al acumulador. Note que el complemento de 2 se
puede usar para expresar números negativos.
3 Tipo de operando de datos Rango del DL06
....................................A aaa
4 Memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Vea el mapa de memoria
Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0-FFFF FFFF
5 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
6 SP64 ON cuando la instrucción de 16 bits de resta resulta en un "préstamo".
SP65 ON cuando la instrucción de 32 bits de resta resulta en un "préstamo"
7 SP70
SP73
ON cuando el valor en el acumulador es negativo.
ON si una suma o resta con signo resulta con el bit de un signo incorrecto.

8 NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
9 En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se cargará en el
acumulador usando la instrucción LDD. El valor binario en V1420 y V1421 es restado del valor
10 binario en el acumulador usando la instrucción SUBB. El valor en el acumulador es copiado a
V1500 y V1501 usando la instrucción OUTD.
11 X1
Use una memoria V o una constante

LDD LDD V1401 V1400


V1400 K393471 0 0 0 6 0 0 F F

12 Carga el valor en V1400 y


V1401 en el acumulador BIN

13 SUBBD -
0
0
0
0
0
0
6
0
0
1
0
A
F
0
F
1
(Acumulador)

(V1421 y V1420)
V1420
Acc. 0 0 0 5 E 6 F E

14 El valor binario en V1420 y


V1421es restado desde el valor
binario en el acumulador

OUTD

A V1500
0 0

V1501
0 5 E 6 F

V1500
E

Copia el valor del


acumulador a V1500 y V1501
B Programador D2-HPP
$ B ENT
C SHFT
STR
L
ANDST
D
1

3
D B
1
E
4
A
0
A
0
ENT
3

D SHFT

GX
S
RST
SHFT

D
U
ISG
B

B
1
B

F
1
D

A
3
A
B
1
E
4
C
2
A
0
ENT

SHFT ENT
OUT 3 1 5 0 0

5–102 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Multiply Binary (MULB)


MULB es una instrucción de 16 bits que multiplica el valor
DS5 Usado
(Aaaa) binario, que es una dirección de memoria V o una MULB
1
HPP Usado constantee binaria de 16 bits, por el valor binario en el A aaa
acumulador. El resultado puede llegar a ser de hasta de 32 bits 2
y se va al acumulador. Note que se puede usar el complemento
de 2 para expresar números negativos. Vea el apéndice J para más explicaciones.
3
Tipo de operando de datos Rango del DL06
....................................A
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria
4
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0-FFFF 5
Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
6
SP70 ON cuando el valor en el acumulador es negativo.

NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
7
use el mismo relevador especial SP.
8
En el ejemplo siguiente, cuando X1 está ON, el valor en V1400 se carga al acumulador usando
la instrucción LD. Luego el valor binario en V1420 es multiplicado por el valor binario en el
acumulador usando la instrucción MULB. El valor en el acumulador es copiado a V1500
9
usando la instrucción OUT.
Use memoria V o constante
V1400
10
0 A 0 1
X1 LD
V1400
11
Los bits no usados del
Carga el valor en V1400 en
los 16 bits más bajos del acumulador
acumulador son colocados en cero

0 0 0 0 0 A 0 1 (Acumulador)
12
MULB
V1420
Acum. 0 0 0 1
0
C
0
C
2
2
E
E
(V1420)
13
El valor binario en V1420 es
multiplicado por el valor
binario en el acumulador 14
OUTD
V1500
0 0 0

V1501
1 C C

V1500
2 E
A
Copia el valor en los 16 bits más
bajos del acumulador
en V1500 y V1501 B
Programador D2-HPP

S TR X 1 E NT C
S HF T L D V 1 4 0 0 E NT

S HF T M U L B V 1 4 2 0 E NT D
O UT S HF T D V 1 5 0 0 E NT

Manual del PLC DL06, 2a. edición en español, 6/07 5–103


Capítulo 5: Instrucciones aritméticas

La instrucción Divide Binary (DIVB)


DIVB es una instrucción de 16 bits que divide el valor binario en el
1 DS5 Usado
acumulador por un valor (Aaaa) binario, que es una dirección de DIVB
HPP Usado
memoria V o una constantee binaria de 16 bits. La primera parte del A aaa
2 cuociente se va al acumulador y el residuo se va al primer nivel del stack.
Note que se puede usar el complemento de 2 para expresar números
negativos. Vea el apéndice J para más explicaciones.
3 Tipo de operando de datos Rango del DL06
4 ....................................A
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria
5 Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0-FFFF

Indicadores Descripción
6 SP53 ON cuando el valor del operando es mayor que lo que puede trabajar el acumulador.
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
7 SP70 ON cuando el valor en el acumulador es negativo.

NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
8 use el mismo relevador especial SP.

9 En el ejemplo siguiente, cuándo X1 está ON, se carga el valor en V1400 al acumulador usando
la instrucción LD. El valor binario en el acumulador es dividido por el valor binario en V1420
usando la instrucción DIVB. El valor en el acumulador es copiado a V1500 usando la
10 instrucción OUT.
DirectSOFT
11 DirectS OF T32

X1 LD
F
V1400
A 0 1

V1400

12 Carga el valor en V1400 en


los 16 bits más bajos del
Los bits no usados del acumulador
son colocados en cero.
acumulador
0 0 0 0 F A 0 1 (Acumulador)

13 DIVB
V1420
0 0 5 0 (V1420)

Acum. 0 3 2 0 0 0 0 0 0 0 0 0
El valor binario en el acumulador
14 es dividido por el valor binario
en V1420
F

A OUT
V1500
0 3 2

V1500
0

Copia el valor en los 16 bits


B más bajos del acumulador a V1500

C Programador D2-HPP
S TR X 1 E NT

S HFT L D V 1 4 0 0 E NT

D S HFT D I V B V 1 4 2 0 E NT

OUT S HFT D V 1 5 0 0 E NT

5–104 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Increment Binary (INCB)


La instrucción INCB incrementa un valor binario en INCB
DS5 Usado "1" en una dirección especificada de memoria V cada A aaa 1
HPP Usado vez que se ejecuta la instrucción.
2
Tipo de operando de datos Rango del DL06
....................................A aaa 3
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria
4
Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0. 5
En el ejemplo siguiente cuando C5 está ON, el valor binario en V2000 es aumentado en 1.
6
DirectSOFT
Direct SOFT32 V2000 Programador D2-HPP
C5 INCB
V2000
4 A 3 C
$
STR
SHFT C
2
F
5
ENT 7
SHFT I N C B C A A A ENT
Incrementa el valor binario 8 TMR 2 1 2 0 0 0
en la memoria V2000 en“1”

4
V2000
A 3 D
8
La instrucción Decrement Binary (DECB) 9
DS5 Usado
La instrucción DECB decrementa en "1"un valor binario DECB
HPP Usado
en una dirección especificada de la memoria V, cada vez
que la instrucción se ejecuta
A aaa 10
Tipo de operando de datos Rango del DL06
11
....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria 12
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria

Indicadores Descripción
13
SP63 On cuando el resultado de la instrucción causa que el valor en el acumulador sea cero.
14
NOTA: Las indicaciones de estado discretas SP son válidas solamente hasta que se ejecute otra instrucción
que use los mismos relevadores especiales SP. A
En el ejemplo siguiente cuando C5 está ON, el valor binario en V2000 es disminuido en 1.
Direct SOFT32
4
V2000
A 3 C
Programador D2-HPP
B
DirectSOFT
C5 DECB $
STR
SHFT C
2
F
5
ENT
V2000

Decrementa el valor binario


en la memoria V2000 en“1”
4 A
V2000
3 B
SHFT D
3
E
4
C
2
B
1
C
2
A
0
A
0
A
0
ENT C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–105


Capítulo 5: Instrucciones aritméticas

La instrucción Add Formatted (ADDF)


ADDF es una instrucción de 32 bits que suma el valor BCD en el
1 DS5 Usado
HPP Usado
acumulador con el valor BCD (Aaaa), que es un rango de bits
ADDF
K bbb
A aaa
discretos. El rango (Kbbb) especificado puede ser 1 a 32 bits
2 consecutivos. El resultado se va al acumulador.
Tipo de operando de datos Rango del DL06
3 ....................................A
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–777
aaa bbb
––
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777 ––
4 Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777 ––
Bits de etapas . . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777 ––
5 Bits de temporizadores . . . . . . . . . . . . . . . . . . . T
Bits de contadores . . . . . . . . . . . . . . . . . . . . . CT
0–377
0–177
––
––
Relevadores especiales . . . . . . . . . . . . . . . . . . SP 0-137 320-717 ––
6 Global I/O. . . . . . . . . . . . . . . . . . . . . . . . . . . . . GX 0-3777 ––
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K –– 1–32
7 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
8 SP66
SP67
ON cuando la instrucción de suma de 16 bits resulta en un "pasa para".
ON cuando la instrucción de suma de 32 bits resulta en un "pasa para".
SP70 ON cuando el valor en el acumulador es negativo.
9 SP73 ON si se espera un número BCD y se encuentra un número diferente de BCD.
SP75 ON si se ejecuta una instrucción BCD y se encuentra un número diferente de BCD.
10 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
11 En el ejemplo siguiente, cuándo X6 está ON, el valor BCD formado por las direcciones
discretas X0-X3 se carga en el acumulador usando la instrucción LDF. El valor BCD formado
12 por las direcciones discretas C0-C3 se suma al valor en el acumulador usando la instrucción
ADDF. El valor en los 4 bits más bajos del acumulador es copiado a Y10-Y13 usando la instrucción
OUTF.
13
DirectSOFT
DirectSOFT32
X3 X2 X1 X0

14 X6 LDF
K4
X0 Carga el valor BCD representado
por las direcciones discretas
X0-X3 al acumulador
ON OFF OFF OFF

Los bits no usados del


acumulador son colocados en cero.

A ADDF
K4
C0
Suma el valor BCD en el
acumulador con el valor
representado por las
direcciones C0-C3
+
0 0 0 0 0 0 0 8
3
(Acumulador)

(C0-C3)
C3 C2 C1
OFF OFF ON ON
C0

Acum. 0 0 0 1 0 0 0 1

B OUTF
K4
Y10 Copia el valor de los 4
bits más bajos del acumulador
a las direcciones Y10-Y13

C Programador D2-HPP
$
STR
G
6
ENT
Y13 Y12 Y11 Y10
OFF OFF OFF ON

SHFT L D F A E ENT

D SHFT
ANDST

A
0
D
3

3
D
5

3
F
5
0

NEXT
4

NEXT NEXT NEXT A


0
E
4
ENT

GX SHFT F B A E ENT
OUT 5 1 0 4

5–106 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Subtract Formatted (SUBF)


SUBF es una instrucción de 32 bits que resta el valor BCD
DS5 Usado (Aaaa), que es un rango de bits distintos del valor BCD en el
S UBF
K bbb
A aaa 1
HPP Usado acumulador. El rango (Kbbb) especificado puede ser 1 a 32 bits
consecutivos. El resultado se va al acumulador. 2
Tipo de operando de datos Rango del DL06
....................................A aaa bbb 3
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–777 ––
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y
Relevadores de control . . . . . . . . . . . . . . . . . . . C
0–777
0–1777
––
––
4
Bits de etapas . . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777 ––
Bits de temporizadores . . . . . . . . . . . . . . . . . . . T 0–377 –– 5
Bits de contadores . . . . . . . . . . . . . . . . . . . . . CT 0–177 ––
Relevadores especiales . . . . . . . . . . . . . . . . . . SP
Global I/O. . . . . . . . . . . . . . . . . . . . . . . . . . . . . GX
0-137 320-717
0-3777
––
––
6
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K –– 1–32

Indicadores Descripción
7
SP63
SP64
ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
ON cuando la instrucción de resta de 16 bits resulta en un "préstamo".
8
SP65 ON cuando la instrucción de resta de 32 bits resulta en un "préstamo".
SP70 ON cuando el valor en el acumulador es un número negativo. 9
SP73 On cuando hay una instrucción de suma o resta que resulta en un bit de signo incorrecto.
SP75 ON si se espera un número BCD y se encuentra un número diferente de BCD.
10
NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
11
En el ejemplo siguiente, cuándo X6 está ON, el valor BCD formado por las direcciones
discretas X0-X3 se carga al acumulador usando la instrucción LDF. El valor BCD formado por
las direcciones discretas C0-C3 se resta del valor en el acumulador usando la instrucción SUBF.
12
El valor en los 4 bits más bajos del acumulador es copiado a Y10-Y13 usando la instrucción
OUTF. 13
DirectSOFT
DirectSOFT32

X6
LDF X0
Carga el valor BCD representado
por las direcciones discretas
X3 X2
ON OFF OFF ON
X1 X0
14
K4 al acumulador.

SUBF C0
Reste el valor BCD representado
por las direcciones discretas
Los bits no usados en el
acumulador son colocados en cero
0 0 0 0 0 0 0 9 (Acumulador) C3 C2 C1 C0
A
K4 C0-C3 desde el valor en el y 8 (C0-- C3) ON OFF OFF OFF

OUTF Y10
acumulador.

Copie los 4 bits más bajos en


el acumulador a las direcciones
ACUM. 0 0 0 0 0 0 0 1
B
K4 discretas Y10 - Y13.
Programador D2-HPP

$ G ENT
Y13 Y12 Y11 Y10
OFF OFF OFF ON
C
STR 6

SHFT

SHFT
L
ANDST

S
D

SHFT
3
F

U
5

B
A

F
0
E

NEXT
4
ENT

NEXT NEXT NEXT A E ENT


D
RST ISG 1 5 0 4
GX SHFT F B A E ENT
OUT 5 1 0 4

Manual del PLC DL06, 2a. edición en español, 6/07 5–107


Capítulo 5: Instrucciones aritméticas

La instrucción Multiply Formatted (MULF)


MULF es una instrucción de 16 bits que multiplica el valor BCD
1 DS5 Usado en el acumulador por el valor BCD (Aaaa) que es un rango de bits
MULF
K bbb
A aaa
HPP Usado discretos. El rango (Kbbb) especificado puede ser 1 a 16 bits
2 consecutivos. El resultado se va al acumulador.
Tipo de operando de datos Rango del DL06
3 ....................................A aaa bbb
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–777 ––
4 Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y
Relevadores de control . . . . . . . . . . . . . . . . . . . C
0–777
0–1777
––
––
Bits de etapas . . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777 ––
5 Bits de temporizadores . . . . . . . . . . . . . . . . . . . T 0–377 ––
Bits de contadores . . . . . . . . . . . . . . . . . . . . . CT 0–177 ––
6 Relevadores especiales . . . . . . . . . . . . . . . . . . SP
Global I/O. . . . . . . . . . . . . . . . . . . . . . . . . . . . . GX
0-137 320-717
0-3777
––
––
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K –– 1–16
7 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
8 SP70 ON cuando el valor en el acumulador es un número negativo.
SP75 ON si se espera un número BCD y se encuentra un número diferente de BCD.
9 NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
10 En el ejemplo siguiente, cuándo X6 está ON, el valor formado por las direcciones discretas X0-
X3 se carga al acumulador usando la instrucción LDF. El valor formado por las direcciones
11 discretas C0-C3 es multiplicado por el valor en el acumulador usando la instrucción MULF. El
valor en los 4 bits más bajos del acumulador es copiado a Y10-Y13 usando la instrucción
12 OUTF.
DirectSOFT
DirectSOFT32

13 X6
LDF
K4
X0
Carga el valor representado
por las direcciones discretas
X3 X2
OFF OFF ON ON
X1 X0

X0-X3 al acumulador

14 MULF C0
Multiplica el valor en
el acumulador con el valor
Los bits no usados del
acumulador son colocados en cero.
0 0 0 0 0 0 0 3 (Acumulador) C3 C2 C1 C0
representado por las 2 (C0-- C3) OFF OFF ON OFF
K4
direcciones discretas C0-C3

A OUTF Y10
Copia los 4 bits más bajos
Acum. 0 0 0 0 0 0 0 6

del acumulador a
K4 direcciones discretas Y10-Y13

B Programador D2-HPP
$ G Y13 Y12 Y11 Y10
ENT
STR 6
C SHFT L
ANDST
D
3
F
5
A
0
E
4
ENT
OFF ON ON OFF

M U L F A E

D SHFT

GX
OUT
ORST

SHFT F
ISG

5
ANDST
B
5

1
A
0
NEXT

E
NEXT

4
NEXT

ENT
NEXT
0 4
ENT

5–108 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Divide Formatted (DIVF)


DIVF es una instrucción de 16 bits que divide el valor BCD en el
DS5 Usado
HPP Usado
acumulador por el valor BCD (Aaaa), que es un rango de bits DIVF A aaa
1
discretos. El rango (Kbbb) especificado puede ser 1 a 16 bits K bbb
consecutivos. La primera parte del cociente se va al acumulador y
el residuo se va al primer nivel del Stack.
2
Tipo de operando de datos
....................................A
Rango del DL06
aaa bbb
3
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–777 ––
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777 –– 4
Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777 ––
Bits de etapas . . . . . . . . . . . . . . . . . . . . . . . . . . S
Bits de temporizadores . . . . . . . . . . . . . . . . . . . T
0–1777
0–377
––
––
5
Bits de contadores . . . . . . . . . . . . . . . . . . . . . CT 0–177 ––
Relevadores especiales . . . . . . . . . . . . . . . . . . SP 0-137 320-717 –– 6
Global I/O. . . . . . . . . . . . . . . . . . . . . . . . . . . . . GX 0-3777 ––
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K –– 1–16
7
Indicadores Descripción
SP53
SP63
ON cuando el valor del operando en más grande de lo que puede trabajar el acumulador.
ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
8
SP70 ON cuando el valor en el acumulador es un número negativo (MSB es 1).
SP75 ON si se espera un número BCD y se encuentra un número diferente de BCD. 9
NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 10
En el ejemplo siguiente, cuándo X6 está ON, se carga el valor formado por las direcciones
discretas X0-X3 al acumulador usando la instrucción LDF. El valor en el acumulador es 11
dividido por el valor formado por las direcciones discretas C0-C3 usando la instrucción DIVF.
El valor en los 4 bits más bajos del acumulador es copiado a Y10-Y13 usando la instrucción 12
OUTF.
DirectSOFT
DirectSOFT32 X3 X2 X1 X0
13
X6 Carga al acumulador el ON OFF OFF OFF
LDF X0 valor representado por
K4 las direcciones discretas X0-X3
Los bits no usados del acumulador
son colocados en cero.
14
Divide el valor en el 0 0 0 0 0 0 0 8 ( C3 C2 C1 C0
DIVF C0
K4
acumulador por el valor
representado por las
direcciones discretas C0-C3 Acum. 0 0 0 0 0 0 0
2

4
(C0-- C3)

0 0 0 0 0 0
OFF OFF ON OFF

0 0
A
Copia los 4 bits más bajos El primer nivel del stack
OUTF
K4
Y10
del acumulador a las
direcciones discretas Y10-Y13
contiene el residuo
B
Programador D2-HPP Y13 Y12 Y11 Y10

$
STR
G
6
ENT
OFF ON OFF OFF
C
SHFT L D F A E ENT

SHFT
ANDST

D
3
I
3

8
V
AND
5

F
5
0

NEXT NEXT
4

NEXT NEXT A
0
E
4
ENT
D
GX SHFT F B A E ENT
OUT 5 1 0 4

Manual del PLC DL06, 2a. edición en español, 6/07 5–109


Capítulo 5: Instrucciones aritméticas

La instrucción Add Top of Stack (ADDS)


ADDS es una instrucción de 32 bits que suma el valor BCD en
1 DS5 Usado
HPP Usado
el acumulador con el valor BCD en el primer nivel del Stack del ADDS
acumulador. El resultado se va al acumulador. El valor en el
2 primer nivel del Stack del acumulador es removido y todos los
valores del Stack se mueven un nivel para arriba.
3 Indicadores
SP63
Descripción
ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP66 ON cuando la instrucción de suma de 16 bits da un resultado con “pasa para”.
4 SP67 ON cuando la instrucción de suma de 32 bits da un resultado con “pasa para”.
SP70 ON cuando el valor en el acumulador es negativo.
5 SP73
SP75
ON cuando una suma o resta con signo resulta con un bit de signo incorrecto.
ON si se espera un número BCD y se encuentra un número diferente de BCD.

6 NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
7 En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se carga al acumulador
usando la instrucción LDD. El valor en V1420 y V1421 se carga al acumulador usando la
8 instrucción LDD, empujando el valor previamente cargado al acumulador en el Stack del
acumulador. El valor en el primer nivel del Stack se suma con el valor en el acumulador usando
9 la instrucción ADDS. El valor en el acumulador es copiado a V1500 y V1501 usando la
instrucción OUTD.
10 DirectSOFT
DirectS

X1
OF T 32

Carga el valor en V1400 0


V1401
0 3 9 5
V1400
0 2 6 Stack del acumulador
LDD después del primer LDD
y V1401 al acumulador

11 V1400

Acum. 0 0 3 9 5 0 2 6
Nivel 1
Nivel 2
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Nivel 3 X X X X X X X X

12 LDD Carga el valor en V1420


y V1421 al acumulador
0
V1421
0 1 7 2
V1420
0 5 6
Nivel 4
Nivel 5
Nivel 6
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
V1420
Nivel 7 X X X X X X X X

13 Acum. 0 0 1 7 2 0 5 6
Nivel 8 X X X X X X X X

ADDS Suma el valor en el acumulador


con el valor en el primer nivel

14 del stack del acumulador Acum. 0 0 5 6 7 0 8 2


Stack del acumulador
después del segundo LDD

Nivel 1 0 0 3 9 5 0 2 6

A OU T D
V1500
Copia elvalor en el
acumulador a V1500
y V1501
0 0 5 6 7 0 8 2
Nivel 2
Nivel 3
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Programador D2-HPP Nivel 4 X X X X X X X X
V1501 V1500

B $
STR
B
1
ENT
Nivel 5
Nivel 6
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X

L D D B E A A Nivel 7 X X X X X X X X
SHFT ENT

C SHFT
ANDST

L
ANDST
D
3

3
D
3

3
B
1

1
E
4

4
C
0

2
A
0

0
ENT
Nivel 8 X X X X X X X X

SHFT A D D S ENT

D GX
OUT
SHFT
0
D
3

3
3
B
RST

1
F
5
A
0
A
0
ENT

5–110 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Subtract Top of Stack (SUBS)


SUBS es una instrucción de 32 bits que resta el valor BCD en el
DS5 Usado
primer nivel del Stack del acumulador del valor BCD en el S UBS 1
HPP Usado
acumulador. El resultado se va al acumulador. El valor en el primer
nivel del Stack del acumulador es removido y todos los valores del
Stack se mueven un nivel hacia arriba.
2
Indicadores
SP63
Descripción
ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
3
SP64
SP65
ON cuando la instrucción de resta de 16 bits resulta en un "préstamo".
ON cuando la instrucción de resta de 32 bits resulta en un "préstamo".
4
SP70 ON cuando el valor en el acumulador es un número negativo.
SP73
SP75
ON cuando una suma o resta con signo resulta con un bit de signo incorrecto.
ON si se espera un número BCD y se encuentra un número diferente de BCD.
5
NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que 6
use el mismo relevador especial SP.

En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se carga al acumulador
7
usando la instrucción LDD. El valor en V1420 y V1421 se carga al acumulador usando la
instrucción LDD, empujando el valor previamente cargado en el acumulador en el Stack 8
delacumulador. El valor BCD en el primer nivel del Stack del acumulador se resta del valor
BCD en el acumulador usando instrucción SUBS. El valor en el acumulador es copiado a
V1500 y V1501 usando la instrucción OUTD.
9
DirectSOFT
DirectSOFT32

X1 LDD Carga el valor en V1400


y V1401 al acumulador
0
V1401
0 1 7 2
V1400
0 5 6 Stack del acumulador
después del primer LDD
10
V1400
Nivel 1 X X X X X X X X
Acum. 0 0 1 7 2 0 5 6
Nivel 2
Nivel 3
X
X
X X
X X
X X
X X
X X
X X
X
X
11
LDD Carga el valor en V1420 V1421 V1420 Nivel 4 X X X X X X X X
V1420
y V1421 al acumulador
0 0 3 9 5 0 2 6 Nivel 5
Nivel 6
X
X
X X
X X
X X
X X
X X
X X
X
X 12
Nivel 7 X X X X X X X X
Acum. 0 0 3 9 5 0 2 6
SUBS Reste el valor en el primer
nivel del stack del acumulador
desde el valor en el acumulador
Nivel 8 X X X X X X X X
13
0 0 2 2 2 9 7 0
Acum.
Stack del acumulador
después del segundo LDD
14
OUTD Copia el valor en el acumulador
Nivel 1 0 0 1 7 2 0 5 6
a V1500 y V1501
V1500 Nivel 2 X X X X X X X X
A
Sta

0 0 2 2 2 9 7 0 Nivel 3 X X X X X X X X
V1501 V1500 Nivel 4 X X X X X X X X
Programador D2-HPP

$
STR
B
1
ENT
Nivel 5
Nivel 6
X
X
X X
X X
X X
X X
X X
X X
X
X B
Nivel 7 X X X X X X X X
L D D B E A A
SHFT

SHFT
ANDST

L D
3

D
3

B
1

E
4

C
0

A
0
ENT

ENT
Nivel 8 X X X X X X X X
C
ANDST 3 3 1 4 2 0

SHFT

GX
S
RST

SHFT
SHFT

D
U
ISG
B

B
1
S

F
RST
A
ENT

A ENT
D
OUT 3 1 5 0 0

DL06 Micro PLC User Manual, 1st Ed., Rev. A


Manual del PLC DL06, 2a. edición en español, 6/07 5–111
Capítulo 5: Instrucciones aritméticas

La instrucción Multiply Top of Stack (MULS)


MULS es una instrucción de 16 bits que multiplica un valor de 4
1 DS5 Usado
dígitos BCD en el primer nivel del Stack del acumulador por un MULS
HPP Usado
valor de 4 dígitos BCD en el acumulador. El resultado se va al
2 acumulador. El valor en el primer nivel del Stack del acumulador
es removido y todos valores del Stack se mueven un nivel hacia arriba.
3 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
4 SP70
SP75
ON cuando el valor en el acumulador es un número negativo.
ON si se espera un número BCD y se encuentra un número diferente de BCD.

5 NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
6 En el ejemplo siguiente, cuándo X1 está ON, se carga el valor en V1400 al acumulador usando
la instrucción LD. El valor en V1420 se carga al acumulador usando la instrucción LD,
7 empujando el valor previamente cargado en el acumulador al Stack del acumulador. El valor
BCD en el primer nivel del Stack del acumulador es multiplicado por el valor BCD en el
acumulador usando la instrucción MULS. El valor en el acumulador es copiado a V1500 y
8 V1501 usando la instrucción OUTD.

9 DirectSOFT
DirectSOFT32

X1
LD
Carga el valor en V1400 50 0
V1400
0 Stack del acumulador
al acumulador Los bits no usados del después del primer LDD
V1400 acumulador son colocados en cero.

10 Acum. 0 0 0 0 5 0 0 0
Nivel 1
Nivel 2
Nivel 3
X
X
X
X
X
X
X X
X X
X
X
X
X
X
X
X X X X X X X X

11 LD
V1420
Carga el valor en V1420
al acumulador Los bits no usados del
0
V1420
2 0 0
Nivel 4
Nivel 5
Nivel 6
X
X
X
X
X
X
X
X
X
X X
X X
X X
X
X
X
X
X
X
X
X
X
acumulador son colocados en cero.
Nivel 7 X X X X X X X X

12 Multiplica el valor en el
Acum. 0 0 0 0 0 2 0 0
Nivel 8 X X X X X X X X

MULS acumulador con el valor en


el primer nivel del stack del

13 acumulador
Acum. 0 1 0 0 0 0 0 0

Stack del acumulador


después del segundo LDD

14 OUTD
V1500
Copia el valor en el
acumulador a V1500
y V1501
0 1 0 0 0 0 0 0
Nivel 1
Nivel 2
0
X
0
X
0
X
0
X X
5 0
X
0
X
0
X
X X X X X X X X
d d RLL
Nivel 3
V1501 V1500

A Programador D2-HPP
Nivel 4
Nivel 5
X
X
X
X
X
X
X
X
X
X X
X X
X X
X
X
X
X
X
X
X
X
X
Nivel 6
$ B ENT

B STR

SHFT L D
1
B E A A ENT
Nivel 7
Nivel 8
X
X
X
X
X
X
X X
X X
X
X
X
X
X
X
S

ANDST 3 1 4 0 0

L D B E C A

C SHFT

SHFT
ANDST

M U
3

L S
1

ENT
4 2 0
ENT

ORST ISG ANDST RST

D GX
OUT
SHFT D
3
B
1
F
5
A
0
A
0
ENT

5–112 Manual del PLC DL06, 2a. edición en español, 6/07


Chapter 5: Standard RLL Instruccións - Math

La instrucción Divide by Top of Stack (DIVS)


DIVS es una instrucción de 32 bits que divide el valor de 8 DIVS
DS5 Usado
HPP Usado
dígitos BCD en el acumulador por un valor de 4 dígitos BCD 1
en el primer nivel del Stack del acumulador. El resultado se va
al acumulador y el residuo se va al primer nivel del Stack del acumulador. 2
Indicadores Descripción
SP53 ON cuando el valor en el operando es más grande de lo que el acumulador puede trabajar. 3
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP70
SP75
ON cuando el valor en el acumulador es un número negativo.
ON si se espera un número BCD y se encuentra un número diferente de BCD.
4
NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
5
En el ejemplo siguiente, cuándo X1 está ON, la instrucción LD carga el valor que está en V1400 6
al acumulador. El valor en V1420 se carga al acumulador usando la instrucción LDD,
empujando el valor previamente cargado en el acumulador al Stack del acumulador. El valor
BCD en el acumulador es dividido por el valor BCD en el primer nivel del Stack del
7
acumulador usando la instrucción DIVS. Luego se copia el valor en el acumulador a V1500 y
V1501usando la instrucción OUTD. 8
X1 LD Carga el valor en V1400
Los bits no usados por el
0
V1400
0 2 0
Stack del acumulador
después del primer LDD 9
al acumulador Nivel 1 X X X X X X X X
V1400 acumulador son colocados en cero.

Acum. 0 0 0 0 0 0 2 0
Nivel 2
Nivel 3
Nivel 4
X X
X X
X X
X
X
X
X
X
X
X X
X X
X X
X
X
X
X
X
X
10
V1421 V1420 Nivel 5 X X X X X X X X

LDD
V1420
Carga el valor en V1420
al acumulador
0 0 5 0 0 0 0 0 Nivel 6
Nivel 7
X X
X X
X
X
X
X
X X
X X
X
X
X
X
11
Nivel 8 X X X X X X X X
Acum. 0 0 5 0 0 0 0 0

Stack del acumulador


después del segundo LDD
12
Divide el valor en el
DIVS acumulador por el valor Nivel 1 0 0 0 0 0 0 2 0
en el primer nivel del
stack del acumulador
Acum. 0 0 0 2 5 0 0 0
Nivel 2
Nivel 3
X X
X X
X
X
X
X
X X
X X
X
X
X
X
13
Nivel 4 X X X X X X X X
OUTD
V1500
Copia el valor en el
acumulador a V1500
y V1501
0 0 0 2 5 0 0 0
Nivel 5
Nivel 6
X X
X X
X
X
X
X
X X
X X
X
X
X
X
14
V1501 V1500 Nivel 7 X X X X X X X X

Programador D2-HPP
Nivel 8 X X X X X X

El residuo se val al primer


X X
A
$ B nivel del stack

SHFT
STR
L
ANDST
D
1

3
ENT

B
1
E
4
A
0
A
0
ENT
Nivel 1
Nivel 2
0
X
0
X
0
X
0
X X
0 0
X
0
X
0
X
B
Nivel 3 X X X X X X X X
SHFT

SHFT
L
ANDST

D
D

I
3
D

V
3

S
B

ENT
1
E
4
C
2
A
0
ENT Nivel 4
Nivel 5
X
X
X
X
X
X
X X
X X
X
X
X
X
X
X
C
3 8 AND RST Nivel 6 X X X X X X X X
GX
OUT
SHFT D
3
B
1
F
5
A
0
A
0
ENT Nivel 7
Nivel 8
X
X
X
X
X
X
X X
X X
X
X
X
X
X
X
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–113


Capítulo 5: Instrucciones aritméticas

La instrucción Add Binary Top of Stack (ADDBS)


La instrucción ADDBS es una instrucción de 32 bits que suma el
1 DS5 Usado
HPP Usado
valor binario en el acumulador con el valor binario en el primer ADDBS
nivel del Stack del acumulador. El resultado se va al acumulador.
2 El valor en el primer nivel del Stack del acumulador se elimina y
todos valores del Stack se mueven un nivel hacia arriba.
3 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
4 SP66
SP67
ON cuando la instrucción de suma de 16 bits da un resultado con “pasa para”.
ON cuando la instrucción de suma de 32 bits da un resultado con “pasa para”.
SP70 ON cuando el valor en el acumulador es negativo.
5 SP73 ON cuando una suma o resta con signo resulta con un bit de signo incorrecto.

NOTA: Las indicaciones de estado discretas SP son sólo válidas hasta que se ejecute otra instrucción que
6 use el mismo relevador especial SP.

7 En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se carga al acumulador
usando la instrucción LDD. El valor en V1420 y V1421 se carga al acumulador usando la
instrucción LDD, empujando el valor previamente cargado en el acumulador al Stack del
8 acumulador. El valor binario en el primer nivel del Stack del acumulador se suma con el valor
binario en el acumulador usando la instrucción ADDBS. El valor en el acumulador es copiado
9 a V1500 y V1501 usando la instrucción OUTD.Double instrucción.

DirectSOFT
10 DirectSOFT32
X1
LDD
Carga el valor en V1400
y V1401 al acumulador
0
V1401
0 3 A 5
V1400
0 C 6 Stack del acumulador
después del primer LDD
V1400
Nivel 1 X X X X X X X X

11 Acum. 0 0 3 A 5 0 C 6 Nivel 2
Nivel 3
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
V1421 V1420 Nivel 4 X X X X X X X X

12 LDD
V1420
Carga el valor en V1420
y V1421 al acumulador
0 0 1 7 B 0 5 F Nivel 5
Nivel 6
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X

Nivel 7 X X X X X X X X
Acum. 0 0 1 7 B 0 5 F

13 Suma el valor binario en el


Nivel 8 X X X X X X X X

ADDBS
acumulador con el valor Acum. 0 0 5 2 0 1 2 5

14 binario en el primer nivel


del stack del acumulador
Stack del acumulador
después del segundo LDD

Nivel 1 0 0 3 A 5 0 C 6
OU T D Copia el valor en el

A V1500
acumulador a V1500
y V1501 0 0 5 2 0 1 2 5
Nivel 2
Nivel 3
Nivel 4
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Programador D2-HPP X X X X X X X X

B $
STR
B
1
ENT
Nivel 5
Nivel 6
Nivel 7
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
SHFT L D D B E A A ENT Nivel 8 X X X X X X X X

C SHFT
ANDST

L
ANDST
D
3

3
D
3

3
B
1

1
E
4

4
C
0

2
A
0

0
ENT

SHFT A D D B S ENT

D GX
OUT
SHFT
0
D
3

3
3
B
1

1
F
RST

5
A
0
A
0
ENT

5–114 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Subtract Binary Top of Stack (SUBBS)


SUBBS es una instrucción de 32 bits que resta el valor binario en
DS5 Usado el primer nivel del Stack del acumulador del valor binario en el
acumulador. El resultado se va al acumulador. El valor en el
S UBBS 1
HPP Usado
primer nivel del Stack del acumulador se pierde y todas
direcciones del Stack se mueven un nivel hacia arriba. 2
Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0. 3
SP64 ON cuando la instrucción de resta de 16 bits resulta en un "préstamo".
SP65 ON cuando la instrucción de resta de 32 bits resulta en un "préstamo". 4
SP70 ON en cualquier momento que el valor en el acumulador es negativo.
SP73 ON cuando una suma o resta con signo resulta con un bit de signo incorrecto.
5
NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 6
En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se carga al acumulador
usando la instrucción LDD. El valor en V1420 y V1421 se carga al acumulador usando la 7
instrucción LDD, empujando el valor previamente cargado en el acumulador en el Stack del
acumulador. 8
El valor binario en el primer nivel del Stack del acumulador se resta del valor binario en el
acumulador que usa la instrucción SUBBS. El valor en el acumulador es copiado a V1500 y
V1501 usando la instrucción OUTD.
9
DirectSOFT
DirectSOFT32 Display

X1 LDD
Carga el valor en V1400 y
V1401 al acumulador
0
V1401
0 1 A 2
V1400
0 5 B Stack del acumulador después d
la ejecución del primer LDD
10
V1400

Acum . 0 0 1 A 2 0 5 B
Nivel 1
Nivel 2
Nivel 3
X X
X X
X X
X
X
X
X X
X X
X X
X
X
X
X
X
X
X
X
X
11
V1421 V1420 Nivel 4 X X X X X X X X

LDD
V1420
Carga el valor en V1420 y
V1421 al acumulador
0 0 3 A 5 0 C 6 Nivel 5
Nivel 6
X X
X X
X
X
X X
X X
X
X
X
X
X
X
12
Nivel 7 X X X X X X X X
0 0 3 A 5 0 C 6

SUBBS
Resta el valor binario en el
Acum . Nivel 8 X X X X X X X X
13
primer nivel del stack desde
el valor binario en el acumulador
Acum . 0 0 2 0 3 0 6 B
Stack del acumulador después
la ejecución del segundo LDD
14
Copia el valor en el acumulador Nivel 1 0 0 1 A 2 0 5 B
OUTD a V1500 y V1501
V1500
0 0
V1501
2 0 3 0
V1500
6 B
Nivel 2
Nivel 3
X X
X X
X
X
X X
X X
X
X
X
X
X
X
A
Nivel 4 X X X X X X X X
Programador D2-HPP

$
STR
B
1
ENT
Nivel 5
Nivel 6
Nivel 7
X X
X X
X X
X
X
X
X X
X X
X X
X
X
X
X
X
X
X
X
X
B
SHFT L D D B E A A ENT Nivel 8 X X X X X X X X

SHFT
ANDST

L
ANDST
D
3

3
D
3

3
B
1

1
E
4

4
C
0

2
A
0

0
ENT
C
SHFT S U B B S ENT
SHFT

GX
OUT
RST

SHFT D
3
ISG
B
1

1
F
1

5
A
RST

0
A
0
ENT
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–115


Capítulo 5: Instrucciones aritméticas

La instrucción Multiply Binary Top of Stack (MULBS)


MULBS es una instrucción de 16 bits que multiplica el valor
1 DS5 Usado
HPP Usado
binario de 16 bits en el primer nivel del Stack del acumulador
por el valor binario de 16 bits en el acumulador. El resultado MULBS
2 se va al acumulador y puede ser de 32 bits (8 dígitos
máximos.) El valor en el primer nivel del Stack del
acumulador se pierde y todas direcciones del Stack se mueven
3 un nivel hacia arriba.

4 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
5 SP70 On cuando el valor en el acumulador es negativo.

6 NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.

7 En el ejemplo siguiente, cuándo X1 está ON, la instrucción LD mueve el valor en V1400 al


acumulador. El valor en V1420 se carga al acumulador usando la instrucción LD, empujando
el valor previamente Cargado en el acumulador al Stack. El valor binario en el primer nivel del
8 Stack es multiplicado por el valor binario en el acumulador usando la instrucción MULBS.
La instrucción OUTD copia el valor en el acumulador a V1500 y V1501.
9
DirectSOFT
DirectSOFT3 V1400 Stack del acumulador

10 X1
LD
V1400
Carga el valor en V1400
al acumulador Los bits no usados del
C

acumulador son colocados en cero.


3 5 0
Nivel 1 X
después del primer LD
X X X X X X X
Nivel 2 X X X X X X X X
0 0 0 0 C 3 5 0

11 Acum.

V1420
Nivel 3
Nivel 4
Nivel 5
X
X
X
X
X
X
X
X
X
X X
X X
X X
X
X
X
X
X
X
X
X
X
0 0 1 4

12 LD
V1420
Carga el valor en V1420
al acumulador
Los bits no usados del
acumulador son colocados en cero.
Nivel 6
Nivel 7
Nivel 8
X
X
X
X
X
X
X
X
X
X X
X X
X X
X
X
X
X
X
X
X
X
X
Acum. 0 0 0 0 0 0 1 4

13 MULBS Multiplica el valor binario


en el acumulador con el
0 0 0 F 4 2 4 0 Stack del acumulador
valor binario en el primer Acum.

14 nivel del stack


Nivel 1
Nivel 2
0
después del segundo LD

0 0 0 C 3 5 0
X X X X X X X X
Copia el valor en el acumulador Nivel 3

A OUTD
V1500
a V1500 y V1501
0 0 0
V1501
F 4 2 4
V1500
0 Nivel 4
Nivel 5
X
X
X
X
X
X
X
X
X
X X
X X
X X
X
X
X
X
X
X
X
X
X
Nivel 6 X X X X X X X X

B Programador D2-HPP

$
STR
B
1
ENT
Nivel 7
Nivel 8
X
X
X
X
X
X
X X
X X
X
X
X
X
X
X

L D B E A A

C SHFT

SHFT
ANDST

L D
3

B
1

E
4

C
0

A
0
ENT

ENT
ANDST 3 1 4 2 0

D SHFT

GX
M
ORST

SHFT
U

D
ISG
L
ANDST
B

B
1
S

F
RST
A
ENT

A ENT
OUT 3 1 5 0 0

5–116 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones aritméticas

La instrucción Divide Binary by Top OF Stack (DIVBS)


Esta es una instrucción de 32 bits que divide el valor binario
DS5 Usado
de 32 bits en el acumulador por el valor binario de 16 bits en DIVBS
1
HPP Usado el primer nivel del stack del acumulador.
El resultado reside en el acumulador y el resto reside en el 2
primer nivel del stack del acumulador.
3
Indicadores Descripción
SP53
SP63
On cuando el valor del operando es más grande que lo que puede aceptar el acumulador
ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
4
SP70 On cuando el valor en el acumulador es negativo.
5
NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 6
En el ejemplo siguiente, cuando X1 está ON, se carga el valor en V1400 en el acumulador
usando la instrucción LD. El valor en V1420 y V1421también se carga en el acumulador 7
usando la instrucción LDD, empujando el valor cargado previamente en el acumulador sobre
el stack del acumulador. El valor binario en el acumulador es dividido por el valor binario en
el primer nivel del stack del acumulador usando la instrucción DIVBS.
8
El valor en el acumulador se copia a V1500 y a V1501 usando la instrucción OUTD.
DirectSOFT
9
DirectSOFT32 V1400 Stack del acumulador
después del primer LD
X1 LD
V1400
Carga el valor en V1400
al acumulador Los bits no usados por el
0

acumulador son colocados en cero.


0 1 4
Nivel 1
Nivel 2
X
X
X X
X X
X X
X X
X X
X X
X
X
10
Acum. 0 0 0 0 0 0 1 4 X X X X X X X X
Nivel 3

V1421 V1420
Nivel 4
Nivel 5
X
X
X X
X X
X X
X X
X X
X X
X
X
11
0 0 0 0 C 3 5 0 Nivel 6 X X X X X X X X
Carga el valor en V1420 y
LDD
V1420
V1421 al acumulador

Acum. 0 0 0 0 C 3 5 0
Nivel 7
Nivel 8
X
X
X X
X X
X X
X X
X X
X X
X
X
12
Stack del acumulador

DIVBS
Divide el valor binario
en el acumulador por
el valor binario en el
Acum. 0 0 0 0 0 9 C 4
Nivel 1 0
después del segundo LD

0 0 0 0 0 1 4 13
primer nivel del stack Nivel 2 X X X X X X X X
del acumulador
Nivel 3
Nivel 4
Nivel 5
X
X
X
X X
X X
X X
X X
X X
X X
X X
X X
X X
X
X
X
14
Copia el valor en el
OUTD X X X X X X X X
Nivel 6
V1500
acumulador a V1500
y V1501
0 0 0
V1501
0 0 9 C
V1500
4
Nivel 7
Nivel 8
X
X
X X
X X
X X
X X
X X
X X
X
X
A
Programador D2-HPP

$
STR
L
B

D
1
ENT

B E A A Nivel 1
El residuo se queda en
el primer nivel del stack

0 0 0 0 0 0 0 0
B
SHFT ENT
ANDST 3 1 4 0 0 Nivel 2 X X X X X X X X

SHFT L
ANDST
D
3
D
3
B
1
E
4
C
2
A
0
ENT
Nivel 3
Nivel 4
X
X
X X
X X
X X
X X
X X
X X
X
X
C
SHFT D I V B S ENT Nivel 5 X X X X X X X X
3 8 AND 1 RST
GX
OUT
SHFT D
3
B
1
F
5
A
0
A
0
ENT
Nivel 6
Nivel 7
X
X
X X
X X
X X
X X
X X
X X
X
X D
Nivel 8 X X X X X X X X

Manual del PLC DL06, 2a. edición en español, 6/07 5–117


Capítulo 5: Instrucciones de funciones transcendentales

Funciones transcendentales
1 El PLC DL06 permite ejecutar funciones numéricas especiales para complementar su capacidad
de procesar números reales. Las funciones transcendentales incluyen el seno, coseno, y tangente
2 trigonométricos y también sus inversos (arcoseno, arcocoseno y arcotangente). La función de
raíz cuadrada también se agrupa con estas otras funciones.
Las instrucciones transcendentales funcionan en un número real localizado en el acumulador
3 (no puede ser BCD o binario). El resultado de la operación reside en el acumulador. La función
de raíz cuadrada funciona en el rango completo de números reales positivos. Las funciones de
4 seno, coseno y tangente requieren números expresados en radianes. Usted puede trabajar con
ángulos expresados en grados primero convirtiéndolos a radianes con la instrucción radián
(RADR) y luego ejecutando la función trigonométrica. Todas las funciones transcendentales
5 utilizan los bits de indicación siguientes:
Indicadores Descripción
6 SP53 ON cuando el valor del operando es más grande que de lo que el acumulador puede aceptar.
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
7 SP70 ON cuando el valor en el acumulador es negativo.
SP72 ON cuando el valor en el acumulador es un número de punto flotante inválido.

8 SP73
SP75
ON cuando el valor en el acumulador es negativo.
ON cuando se ejecuta una instrucción de número real y fue encontrado un número que no es real.

9 La instrucción Sine Real (SINR)


DS5 Usado La instrucción SINR calcula el seno del número real almacenado en
S INR
10 HPP N/A el acumulador. El resultado se va al acumulador. El número original
y el resultado deben estar en el formato de 32 bits IEEE.
11
La instrucción Cosine Real (COSR)
12 DS5 Usado La instrucción COSR calcula el coseno del número real almacenado
en el acumulador. El resultado se va al acumulador. El número
COSR
HPP N/A
original y el resultado deben estar en el formato de 32 bits IEEE.
13
14 La instrucción Tangent Real (TANR)
La instrucción TANR calcula la tangente del número real almacenado
DS5 Usado TANR
en el acumulador. El resultado se va al acumulador. El número
A HPP N/A
original y el resultado deben estar en el formato de 32 bits IEEE.

B La instrucción Arc Sine Real (ASINR)


C DS5 Usado
La instrucción ASINR calcula el arcoseno del número real
almacenado en el acumulador. El resultado se va al acumulador. El
AS INR
HPP N/A
número original y el resultado deben estar en el formato de 32 bits
D IEEE.

5–118 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de funciones transcendentales

La instrucción Arc Cosine Real (ACOSR)


La instrucción ACOSR calcula el arcocoseno del número real
DS5
HPP
Usado
N/A almacenado en el acumulador. El resultado se va al acumulador. El
ACOSR 1
número original y el resultado deben estar en el formato de 32 bits
IEEE. 2
La instrucción Arc Tangent Real (ATANR)
DS5 Usado La instrucción ATANR calcula el arcotangente del número real ATANR
3
HPP N/A almacenado en el acumulador. El resultado se va al acumulador. El
número original y el resultado deben estar en el formato de 32 bits
IEEE.
4
La instrucción Square Root Real (SQRTR)
La instrucción SQRTR calcula la raíz cuadrada del número real
5
DS5 Usado SQR TR
almacenado en el acumulador. El resultado se va al acumulador. El
HPP N/A
número original y el resultado deben estar en el formato de 32 bits 6
IEEE.
NOTA: La función raíz cuadrada puede ser útil en varias situaciones. Sin embargo, si se trata de hacer la
7
función de extracción de raíz para un instrumento medidor de flujo del tipo de placa orificio como PV
para un lazo de PID, note que el lazo de PID ya tiene una función de extracción de raíz cuadrada 8
incluida.

El ejemplo siguiente toma el seno de 45 grados. Ya que estas funciones trascendentales operan 9
sólo con números reales, hacemos una instrucción LDR (Carga real) con el operando 45,0. Las
funciones trigonométricas operan sólo con radianes, así que se debe convertir los grados a
radianes usando la instrucción RADR. Después de usar la instrucción SINR (Seno Real), se usa
10
la instrucción OUTD para mover el resultado del acumulador a la memoria V. El resultado es
DirectSOFT
DirectS OF T 32
Contenido del acumulador
11
X1 Carga el número real 45,0
(visto como número real)
LDR
R 45,0
al acumulador 12
45, 000000
R ADR
Convierte los grados en
radianes, dejando el
13
resultado en el acumulador

Calcula el seno del número


0, 7358981
14
S INR en el acumulador que está
en radianes dejando el
resultado en el acumulador 0, 7071067
A
OU T D
V2000
Copia el valor en el
acumulador a V2000
B
y V2001
0, 7071067
de 32 bits, y se necesita la instrucción OUTD para moverlo.
C
NOTA: El D2-HPP no permite el uso de números reales con la conversión automática al formato de 32 bit
de IEEE. Usted debe utilizar DirectSOFT para entrar números reales, usando la instrucción LDR.
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–119


Capítulo 5: Instrucciones de operacioneas con bits

Instrucciones de operación con bits


1 La instrucción Sum (SUM) SUM
2 DS5 Usado
La instrucción SUM cuenta el número de bits que son
"1" en el acumulador. El resultado en hexadecimal se va
HPP Usado
al acumulador.
3 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
4
En el ejemplo siguiente, cuándo X1 está ON, se carga el valor formado por las direcciones
discretas X10-X17 al acumulador usando la instrucción LDF. Luego es contado el número de
5 bits del acumulador que son "1s", usando la instrucción SUM. El valor en el acumulador es
copiado a V1500 usando la instrucción OUT.
6 NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
7
DirectSOFT
8 Direct SOFT32

X1 LDF X10 X17 X16 X15 X14 X13 X12 X11 X10
K8 ON ON OFF OFF ON OFF ON ON

9 Carga el valor representado por


las direcciones discretas X10–X17 Los bits no usados del acumulador son colocados en cero.
al acumulador

10 Acum. 0
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
8
0
7
1
6 5
1 0
4 3
0 1
2
0 1
1 0
1

11 SUM Acum. 0 0 0 0 0 0 0 5

12 Suma el número de bits en


el acumulador que son “1”

13 OUT
V1500
0 0 0 5

V1500

14 Copia el valor en los 16 bits más


bajos del acumulador a V1500

Programador D2-HPP

A $
STR
B
1
ENT

SHFT L D F B A I ENT

B SHFT
ANDST
S
RST
SHFT
3
U
5

ISG
M
ORST
1

ENT
0 8

GX B F A A

C OUT
PREV PREV PREV
1 5 0 0
ENT

5–120 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de operacioneas con bits

La instrucción Shift Left (SHFL)


SHFL es una instrucción de 32 bits que desplaza los bits en el
DS5 Usado
acumulador un número especificado de lugares (Aaaa) a la
SHFL 1
HPP Usado izquierda, es decir, en la dirección desde el bit menos A aaa
significativo al más significativo. Las posiciones vacías se llenan
con ceros y los bits que son desplazados fuera del acumulador se pierden.
2
Tipo de operando de datos Rango del DL06 3
....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Vea el mapa de memoria
1-32
4
Indicadores
SP63
Descripción
ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
5
SP70 ON cuando el valor en el acumulador es negativo.
En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 y V2001 se carga al acumulador 6
usando la instrucción LDD. El conjunto de bits en el acumulador se desplaza 2 bits a la
izquierda usando la instrucción SHFL. El valor en el acumulador es copiado a V2010 y V2011 7
usando la instrucción OUTD.
NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que 8
use el mismo relevador especial SP.
DirectSOFT
Direct SOFT32 V2001 V2000
9
X1 6 7 0 5 33 31 10 01
LDD
V2000

Copia el valor en V2000 y V2001


10
al acumulador

SHFL
Acum.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
0 1 1 0 0 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0
8
1
7
0
6 5
0 0
4 3
0 0
2
0
1
0
0
1 11
K2

EL grupo de bits del acumulador


es desplazado 2 posiciones
Desplazado para fuera
del acumulador
. . . . 12
de bit a la izquierda

OUTD
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
13
Acum. 0
1 0 0 0
1 0
1 1 0 0 0 0 0 0
1 0 0
1 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0
V2010

Copia el valor en el acumulador


a V2010 y V2011
14
9 C 1 4 C 4 0 4
A
Programador D2-HPP

$ B ENT
V2011 V2010
B
STR 1

SHFT L
ANDST
S
D
3
D

H
3
F
C

L
2
A
0
A

C
0
A
0
ENT
C
SHFT SHFT ENT
RST 7 5 ANDST 2
GX
OUT
SHFT D
3
C
2
A
0
B
1
A
0
ENT D

Manual del PLC DL06, 2a. edición en español, 6/07 5–121


Capítulo 5: Instrucciones de operacioneas con bits

La instrucción Shift Right (SHFR)


SHFR es una instrucción de 32 bits que desplaza los bits en el
1 DS5 Usado acumulador un número especificado de lugares (Aaaa) a la
SHFR
A aaa
HPP Usado derecha, es decir, en la dirección desde el bit más significativo al
2 menos significativo. Las posiciones vacías se llenan con ceros y los
bits que son desplazados fuera del acumulador se pierden.
3 Tipo de operando de datos
....................................A
Rango del DL06
aaa
4 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Vea el mapa de memoria
1-32

5 Indicadores
SP63
Descripción
ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP70 ON cuando el valor en el acumulador es negativo.
6 En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 y V2001 se carga al acumulador
usando la instrucción LDD. El conjunto de bits en el acumulador se cambia de 2 bits a la
7 derecha usando la instrucción SHFR. El valor en el acumulador es copiado a V2010 y V2011
usando la instrucción OUTD.
8 NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
9 DirectSOFT
Direct SOFT32 V2001 V2000
X1 Constante 6 7 0 5 33 11 00 11

10 LDD
V2000

Carga el valor en V2000 y


V2001 al acumulador

11 SHFR Acum.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
0 1 1 0 0 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0
8
1
7
0
6 5
0 0
4 3
0 0
2
0
1
0
0
1
K2

12 El grupo de bits en el acumulador


es desplazado 2 posiciones de
bit a la derecha ... . Desplazado para
fuera del acumulador

13 OUTD
V2010 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

Copia el valor en el acumulador Acum. 0 0 0 0


1 0
1 1
0 0 0
1 0
1 0
1 0 0 0 0 0 0
1 0 1 0 0 1 1 0 0 0 1 0 0 0 0 0 0

14 a V2010 y V2011

A
1 9 C 1 4 C 4 0

B Programador D2-HPP
V2011 V2010

C $
STR

SHFT L
B

D
1
ENT

D C A A A ENT
ANDST 3 3 2 0 0 0

D SHFT

GX
S

SHFT
RST
SHFT

D
H
7
F

C
5
R

A
ORN
B
C

A
2
ENT

ENT
OUT 3 2 0 1 0

5–122 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de operacioneas con bits

ROTL es una instrucción de 32 bits que desplaza


los bits en el acumulador un número (Aaaa) R OTL
DS5 Usado
HPP Usado
especificado de lugares a la izquierda y los que se A aaa 1
perderían se van al extremo derecho,es decir, los bits
se desplazan en la dirección desde el bit menos significativo al más signficativo. 2
Tipo de operando de datos Rango del DL06
....................................A
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria
3
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-32
Indicadores Descripción
4
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP70 ON cuando el valor en el acumulador es negativo. 5
En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se carga al acumulador
usando la instrucción LDD. El conjunto de bits en el acumulador se mueve 2 bits a la izquierda 6
usando la instrucción ROTL. El valor en el acumulador es copiado a V1500 y V1501 usando
la instrucción OUTD. 7
NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 8
DirectSOFTDisplay
DirectSOFT32

X1
LDD 6 7
V1401
0 5 3 1
V1400
0 1 9
V1400

Carga el valor en V1400 y


V1401 al acumulador
10
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

ROTL
K2
Acum 0 1 1 0 0 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 1
11
El grupo de bits en el acumulador
es rotatdo 2 posiciones de bit
a la izquierda
12
OUTD
V1500 Acum
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
1 0 0 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 0
8
0
7
0
6
0
5
0
4
0
3
0
2
1
1
0
0
1
13
Copia el valor en el acumulador
a V1500 y V1501 14
9 C 1 4 C 4 0 5
A
Programador D2-HPP V1501 V1500

$
STR
B
1
ENT B
SHFT L D D B E A A ENT
ANDST 3 3 1 4 0 0

SHFT R
ORN
O
INST#
T
MLR
L
ANDST
C
2
ENT C
GX SHFT D B F A A ENT
OUT 3 1 5 0 0
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–123


Capítulo 5: Instrucciones de operacioneas con bits

La instrucción Rotate Right (ROTR)


ROTR es una instrucción de 32 bits que desplaza los bits en
1 DS5 Usado el acumulador un número (Aaaa) especificado de lugares a la
R OTR
A aaa
HPP Usado derechaes decir, los bits de desplazan en la dirección desde el
2 bit más significativo al menos significativo.
Tipo de operando de datos Rango del DL06
3 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
4 Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-32

Indicadores Descripción
5 SP63
SP70
ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
ON cuando el valor en el acumulador es negativo.

6 En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se carga al acumulador
usando la instrucción LDD. El conjunto de bits en el acumulador desplaza 2 bits a la derecha
7 usando la instrucción ROTR. El valor en el acumulador es copiado a V1500 y V1501 usando
la instrucción OUTD.
8
DirectSOFT
9 Direct SOFT

X1 LDD 6
V1401
7 0 5 3
V1400
1 0 1

V1400

10 Carga el valor en V1400 y


V1401 al acumulador
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

11 ROTR
K2
Acum. 0 1 1 0 0 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 1

12 El grupo de bits en el acumulador


es rotatdo 2 posiciones de
bit a la drecha

13 OUTD
V1500
Acum. 0
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
0
1 0 0
1 0
1 1
0 0 0
1 0
1 0
1 0 0 0 0 0 0
1 0 1 0 0 1 1 0
8
0
7
0
6 5
1 0
4 3
0 0
2
0
1
0
0
0

14 Copia el valor en el acumulador


a V1500 y V1501

A Programador D2-HPP
5 9

V1501
C 1 4 C

V1500
4 0

B $

SHFT
STR
L
B

D
1
D
ENT

B E A A ENT
ANDST 3 3 1 4 0 0

C SHFT

GX
R
ORN
O
INST#
D
T
MLR
R

B
ORN
F
C

A
2
A
ENT

SHFT ENT
OUT 3 1 5 0 0

5–124 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de operacioneas con bits

La instrucción Encode (ENCO)


La instrucción ENCO es una instrucción de 16 bits que codifica la
DS5 Usado
posición del bit en el acumulador que tiene un valor de 1 y retorna 1
HPP Usado
la representación binaria apropiada de 5 bits. Si el bit más ENCO
significativo está en 1 (Bit 31), la instrucción ENCO colocaría el
valor 1F hexadecimal (decimal 31) en el acumulador. Si el valor a
2
ser codificado es 0000 o 0001, la instrucción colocará un cero en
el acumulador. Si el valor a ser codificado tiene más de un 3
conjunto de posiciones de bit en "1", el bit menos significativo
con un "1" será codificado y SP53 se hará ON. 4
Indicadores Descripción
SP53 ON cuando el valor del operando es más grande de lo que puede procesar el acumulador. 5
NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
6
En el ejemplo siguiente, cuándo X1 está ON, se carga el valor en V2000 al acumulador usando
la instrucción LD. La posición del bit que está en "1" (posición 12) en el acumulador es
7
codificada como el valor binario correspondiente usando la instrucción ENCO. El valor en los
16 bits más bajos del acumulador es copiado a V2010 usando la instrucción OUT. 8
DirectSOFT
Direct SOFT32

X1 LD 1
V2000
0 0 0
9
V2000

Carga el valor en V2000 a


los 16 bits más bajos
del acumulador 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
10
Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0

El bit en la posición 12 es
11
convertido a binario

ENCO 12
Codifica la posición del bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
colocado como "1" en el
acumulador a un valor
binario de 5 bits.
Acum. 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
13
OUT
V2010
14
Copia el valor en los 16 bits
más bajos del acumulasor
a V2010
0 0

V2010
0 C

Valor BCD/Hexadecimal
correspondiente a 12
A
Programador D2-HPP decimal.

$
STR
L
B

D
1
ENT

C A A A
B
SHFT ENT
ANDST 3 2 0 0 0

SHFT E
4
N
TMR
C
2
O
INST#
ENT C
GX SHFT V C A B A ENT
OUT AND 2 0 1 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–125


Capítulo 5: Instrucciones de operacioneas con bits

La instrucción Decode (DECO)


La instrucción DECO decodifica un valor binario de 5 bits en el
1 DS5 Usado
HPP Usado
rango de 0-31 (0-1F hexadecimal ) en el acumulador poniendo DECO
la posición apropiada del bit en "1".
2 Si el acumulador contiene el valor F (hexadecimal), el bit 15 será
colocado como "1" en el acumulador. Los demás bits serán 0.
3 Si el valor para ser decodificado es más que 31, el número es dividido por 32 hasta que el valor
sea menor que 32 y entonces el valor se decodifica.
4 En el ejemplo siguiente cuando X1 está ON, el valor formado por las direcciones discretas X10-
X14 se carga al acumulador usando la instrucción LDF.
5 Los cinco bits en el acumulador son decodificados poniendo la posición correspondiente de bit
en "1" usando la instrucción DECO.
6
DirectSOFT
7 Direct SOFT32

X1 LDF X10
X14 X13 X12 X11 X10
OFF ON OFF ON ON
K5

8 Carga el valor representado


por las direcciones discretas
X10 - X14 al acumulador
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

9 Acum. 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 0 1 1

El valor binario es
convertido a la

10 DECO

Decodifica el grupo de 5 bits


31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5
posición de bit 11

4 3 2 1 0

en el acumulador y configura Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0

11 la posición correspondiente de
bit a "1".

Programador D2-HPP

12 $
STR
L
B

D
1
ENT

F B A F
SHFT ENT
ANDST 3 5 1 0 5

13 SHFT D
3
E
4
C
2
O
INST#
ENT

14
A
B
C
D

5–126 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de conversión de formatos

Instrucciones de conversión de formatos numéricos


La instrucción Binary (BIN)
1
BIN
La instrucción BIN convierte un valor BCD en el
DS5 Usado
acumulador al valor binario equivalente(o decimal, como se
2
HPP Usado
llama en DirectSOFT). El resultado se va al acumulador.
Indicadores Descripción
3
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP70 ON cuando el valor en el acumulador es negativo. 4
SP75 On cuando se ejecuta una instrucción BCD y se encuentra un número que NO es BCD.

En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 y V2001 se carga al acumulador
5
usando la instrucción LDD. El valor BCD en el acumulador es convertido a binario
(hexadecimal) usando la instrucción BIN. El valor binario en el acumulador es copiado a V2010 6
y V2011 usando la instrucción OUTD.
(El programador D2-HPP mostrará el valor binario en V2010 y V2011 como un valor
hexadecimal)
7
DirectSOFT
DirectS OF T 32

X1 LDD
0
V2001
0 0 2 8
V2000
5 2 9
8
V2000

Carga el valor en V2000 y


V2001 al acumulador
9
8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1

BIN
Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0

Valor BCD
0 0 0 1 0 1 0 0 1 0 1 0 0 1
10
Convierte el valor BCD en
el acumulador al valor
equivalente binario
28529 = 16384 + 8192 + 2048 + 1024 + 512 + 256 + 64 + 32 + 16 + 1

Valor equivalente binario


11
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

OU T D
Acum. 0

2
0 0

1 5
0

2
0

1
0

6
0 0

3 1
0

8
0

4
0

2
0 0

1 5
0

2
0

1
0

6
0

3
1 1

1 8
0

4
1

2
1

1
1 1

5 2
0

1 6
1 1

3
1 0

1 8
0

4
0

2
1

1
12
1 0 3 6 3 7 3 6 3 1 0 0 2 6 3 5 2 6 1 0 0 0 1 5 2 4 2 6
V2010 4 7 6 8 4 1 5 7 8 9 9 4 4 2 1 5 7 3 9 9 4 2 2 6 8

Copia los datos binarios en el


acumulador a V2010 y V2011
7
4
4
8
3
7
4
1
8
7
0
9
4
3
5
4
2
1
7
7
0
8
8
6
5
4
4
3
7
7
2
1
8
6
0
8
4
3
0
4
7
1
5
2
8
5
7
6
2
8
8
1
4
4
0
7
2
3
6
6
8
8
4
2 6 8 4
13
3 8 1 5 2 4 2 6
6
4
8
2
4
2 6 8

14
A
S tan

Programador D2-HPP
El valor binario (hexadecomal copiado
dard R LL

0 0 0 0 6 F 7 1 a V2010 y V2011
$ B
E NT
STR 1 V2011 V2010

S HF T L
ANDS T
D
3
D
3
C
2
A
0
A
0
A
0
E NT B
Ins tructions

S HF T B I N E NT
1 8 T MR

GX
OU T
S HF T D
3
C
2
A
0
B
1
A
0
E NT C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–127


Capítulo 5: Instrucciones de conversión de formatos

La instrucción Binary Coded Decimal (BCD)


La instrucción BCD convierte un valor binario en el acumulador
1 DS5 Usado
HPP Usado
al valor equivalente BCD. El resultado se va al acumulador.
BCD

2 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
3 SP70 ON cuando el valor en el acumulador es negativo.

4 En el ejemplo siguiente, cuándo X1 está ON, el valor binario (hexadecimal) en V2000 y V2001
se carga al acumulador usando la instrucción LDD. El valor binario en el acumulador es
convertido al valor equivalente BCD usando la instrucción BCD. El valor BCD en el
5 acumulador es copiado a V2010 y V2011 usando la instrucción OUTD.

6 DirectSOFT
DirectS OF T 32

X1
LDD
0
V2001
0 0 0 6
V2000
F 7 1
Valor binario
V2000
7 Carga el valor en V2000 y V2001
al acumulador
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

8 Acum. 0
2
1
0
1
0
0
5
3
0 0
2
6
1
3
0
6
7
3
3
0
1
6
0
8
3
0 0
4
1
0
2
0
0
1
0
5
2
0 0 0
2
6
1
3
0
6
5
0
3
2
1
1
6
1
8
1
0 1
4
0
2
0
1
1
0
1
5
1
1
2
5
0 1
1 6
2 4
1
3
2
1
1
6
0
8
0 0
4 2 1
1

BC D 4 7 6 8 4 1 5 7 8 9 9 4 4 2 1 5 7 3 9 9 4 2 2 6 8

9 Convierte el valor binario


7
4
4
8
3
7
4
1
8
7
0
9
4
3
5
4
2
1
7
7
0
8
8
6
5
4
4
3
7
7
2
1
8
6
0
8
4
3
0
4
7
1
5
2
8
5
7
6
2
8
8
1
4
4
0
7
2
3
6
6
8
8
4
2 6 8 4

en el acumulador al valor 3 8 1 5 2 4 2 6

10 equivalente BCD 6
4
8
2
4
2 6 8

11 OU T D
V2010
16384 + 8192 + 2048 + 1024 + 512 + 256 + 64 + 32 + 16 + 1 = 28529

Valor equivalente BCD

12 Copia el valor BCD que está


en el acumulador a V2010 y V2011
Acum.
8
0
4 2
0 0
1
0 0
8 4
0
2 1
0 0
8
0 0
4 2
0
1 8
0 0
4
0 1
2 1
0
8
1
4 2
0 0
1
0 0
8 4
1
2 1
0 1
8
0 0
4 2
1
1 8
0 1
4
0 0
2 1
1

13
14 Programador D2-HPP

$ B E NT
0 0 0 2 8 5 2 9
El valor BCD copiado
a V2010 y V2011
ST R 1 V2011 V2010

A S HF T

S HF T
L
ANDS T
B
D

C
3
D

D
3

E NT
C
2
A
0
A
0
A
0
E NT

1 2 3

B GX
OU T
S HF T D
3
C
2
A
0
B
1
A
0
E NT

C
D

5–128 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de conversión de formatos

La instrucción Invert (INV)


La instrucción INV invierte o toma el complemento de
DS5 Usado
uno del valor de 32 bits en el acumulador. El resultado se
INV
1
HPP Usado
va al acumulador. Esto es, cada bit que es cero pasa a ser
uno y cada bit que es uno pasa a ser cero, en la misma posición de la palabra. 2
En el ejemplo siguiente, cuándo X1 está ON, el valor en V2000 y V2001 se carga al acumulador
usando la instrucción LDD. El valor en el acumulador se invierte usando la instrucción INV.
El valor en el acumulador es copiado a V2010 y V2011 usando la instrucción OUTD.
3
DirectSOFT
4
Direct SOFT32

X1 LDD
V2000 0
V2001
4 0 5
V2000
00 22 55 00
5
Carga el valor en V2000 y
V2001 al acumulador

31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
6
Acum. 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0

INV
7
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

Invierte el grupo de bits en


el acumulador
Acum. 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 0 1 1 0 1 0 1 1 1 1
8
OUTD
V2010
F B F
V2011
A F D A
V2010
F 9
Copia el valor en el acumulador
a V2010 y V2011
10
Programador D2-HPP

$
STR
B
1
ENT
11
SHFT

SHFT
L
ANDST
I
8
D

N
TMR
3
D

V
AND
3

ENT
C
2
A
0
A
0
A
0
ENT
12
GX D C A B A
OUT
SHFT
3 2 0 1 0
ENT
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–129


Capítulo 5: Instrucciones de conversión de formatos

La instrucción Ten’s Complement (BCDCPL)


La instrucción BCDCPL toma el complemento de 10's (BCD) BC DC P L
1 DS5 Usado
del acumulador con 8 dígitos. El resultado se va al acumulador. El
HPP Usado
cálculo para esta instrucción es:
2
100000000
3 Ҁacumulador
valor del complemento de 10
4
En el ejemplo siguiente cuando X1 está ON, el valor en V2000 y V2001 se carga al
5 acumulador.
Se calcula entonces el complemento de 10 del acumulador con los 8 dígitos usando la
instrucción BCDCPL.
6 El valor en el acumulador es copiado a V2010 y V2011 usando la instrucción OUTD.
7 DirectSOFT
DirectS OF T 32

8 X1 LDD
V2000 0
V2001
0 0 0 0
V2000
0 8 7

9 Carga el valor en V2000 y V2001


al acumulador
Acum. 0 0 0 0 0 0 8 7

10 BC DC PL

Acum. 9 9 9 9 9 9 1 3

11 Calcula el complemento de 10
desde el valor en el acumulador

12 OU T D
V2010
9 9 9 9 9 9 1 3

V2011 V2010

13 Copia el valor en el acumulador


a V2010 y V2011

14 Programador D2-HPP

$ B E NT
STR 1

A S HF T
L
ANDS T
D
3
D
3
C
2
A
0
A
0
A
0
E NT

B C D C P L
S HF T E NT
1 2 3 2 CV ANDS T

B GX
OU T
S HF T D
3
C
2
A
0
B
1
A
0
E NT

C
D

5–130 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de conversión de formatos

La instrucción Binary to Real Conversion (BTOR)


La instrucción BTOR convierte un valor binario en el
DS5 Usado
HPP Usado
acumulador al formato de número real equivalente (punto
BT O R 1
flotante). El resultado se va al acumulador. El número
binario y el número real pueden usar los 32 bits del
acumulador.
2
NOTA: Esta instrucción sólo trabaja con valores binarios. No trabajará con valores decimales con signo. 3
Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0. 4
SP70 ON cuando el valor en el acumulador es negativo.
En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se carga al acumulador 5
usando la instrucción LDD. La instrucción BTOR convierte el valor binario en el acumulador
al formato real equivalente del número. El peso binario del MSB (El bit más significativo) es
convertido al exponente real del número sumándolo a 127 (decimal). Luego los bits restantes
6
son copiados a la mantisa como es mostrado en el diagrama. El valor en el acumulador es
copiado a V1500 y V1501 usando la instrucción OUTD. 7
El programador D2-HPP mostraría el valor binario en V1500 y V1501 como un valor
hexadecimal. 8
DirectSOFT
DirectSOFT32

X1
LDD
V1400
0
V1401
0 0 5 7
V1400
2 4 1 9
Carga el valor en V1400 y V1401
al acumulador
8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1
10
Acum. 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 0 0 1 0 0 0 0 1

BTOR 2 (exp 18)


127 + 18 = 145
Valor binario
11
Convierte el número binario 145 = 128 + 16 + 1
en el acumulador al formato
de número real equivalente
12
Acum. 0 1 0 0 1 0 0 0 1 0 1 0 1 1 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 13
OUTD
V1500

Copia el valor real en el


Bit de signo Exponente (8 bits) Mantisa (23 bits)
14
acumulador a V1500 y V1501 Formato de número real

A
Programador D2-HPP El valor del número real
4 8 A E 4 8 2 0
$
STR
L D
B
1
ENT

D B E A A
V1501 V1500
copiado a V1500 y V1501
B
SHFT ENT
ANDST 3 3 1 4 0 0

SHFT

GX
B

SHFT
1
T

D
MLR
O
INST#
R

B
ORN
F
ENT

A A ENT
C
OUT 3 1 5 0 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–131


Capítulo 5: Instrucciones de conversión de formatos

La instrucción Real to Binary Conversion (RTOB)


La instrucción RTOB convierte un número real en el acumulador a
1 DS5 Usado
HPP Usado
un valor binario. El resultado se va al acumulador. El número
R TOB

binario y el número real pueden usar los 32 bits del acumulador. El


2 valor real es truncado a un número entero.
NOTA1: La porción decimal del resultado será truncada.
3 NOTA2: si el número real es negativo, se torna en un valor decimal con signo.

4 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.

5 SP70
SP72
ON cuando el valor en el acumulador es negativo.
ON cuando el valor en el acumulador es un número de punto flotante inválido.
SP73 ON cuando una suma o resta con signo resulta en un bit de signo incorrecto.
6 SP75 ON cuando un número no puede ser convertido a binario.

En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 y V1401 se carga al acumulador
7 usando la instrucción LDD. La instrucción de RTOB convierte el valor real en el acumulador
al formato equivalente de numeración binaria. El valor en el acumulador es copiado a V1500 y
8 V1501 usando la instrucción OUTD. El programador D2-HPP mostraría el valor binario en
V1500 y V1501 como un valor hexadecimal.
DirectSOFT
9 DirectSOFT32
4 8

V1401
A E 4 8

V1400
2 0 Formato de número real

Bit de signo

10 X1 LDD
V1400
Exponente (8 bits) Mantisa (23 bits)

Carga el valor real en V1400


y V1401 al acumulador

11 Acum. 0 1 0 0 1 0 0 0 1 0 1 0 1 1 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0

RTOB

12 Convierte el número real en


el acumulador a formato

13 binario
128 + 16 + 1 = 145
145 - 127 = 18
Valor binario
2 (exp 18)
14 OUTD
V1500
Acc.
8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 0 0 1 0 0 0 0 1
Copia el número binario en

A el acumulador a
V1500 y V1501

B 0
V1501
0 0 5 7
V1500
2 4 1
El valor binario
copiado a V1500 y V1501
Programador D2-HPP
C $
STR
B
1
ENT

L D D B E A A

D SHFT

SHFT
ANDST
R T
3
O
3
B ENT
1 4 0 0
ENT

ORN MLR INST# 1


GX SHFT D B F A A ENT
OUT 3 1 5 0 0

5–132 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de conversión de formatos

La instrucción Radian Real Conversion (RADR)


R ADR
RADR convierte el valor real del grado almacenado en el
DS5 Usado
acumulador al número real equivalente en radianes. El 1
HPP N/A
resultado se va al acumulador.
La instrucción Degree Real Conversion (DEGR) 2
La instrucción DEGR convierte el valor real de radián DE G R
DS32 Usado
almacenado en el acumulador al número real equivalente en 3
grados. El resultado se va al acumulador.
HPP N/A
Indicadores Descripción
4
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
SP70 ON cuando el valor en el acumulador es negativo. 5
SP72 ON cuando el valor en el acumulador es un número de punto flotante inválido.
SP73
SP75
ON cuando una suma o resta con signo resulta en un bit de signo incorrecto.
ON cuando un número no puede ser convertido a formato binario (antes era SP74)
6
Las dos instrucciones descritas encima convierten números reales en el acumulador del formato
de grado al formato de radián, y vice-versa. En el formato de grado, un círculo contiene 360
7
grados. En el formato de radián, un círculo contiene aproximadamente 6.28 radianes (2xπ).
Estos convierten números positivos y negativos reales y ángulos de más de un círculo completo. 8
Estas funciones son muy útiles cuando son combinadas con las funciones trigonométricas
trascendentales (vea la sección en instrucciones aritméticas). 9
NOTA: El programador D2-HPP no permite entrar números reales con conversión automática al formato de
32 bits IEEE. Usted debe usar DirectSOFT para entrar números reales, usando la instrucción LDR. 10
El ejemplo siguiente calcula el seno de 45 grados. Ya que las funciones trascendentales operan
sólo con números reales, se hace un LDR (Cargue real) 45,0. Las funciones trigonometricas 11
operan sólo en radianes, así que debemos convertir los grados a radianes usando la instrucción
RADR. Después de usar la instrucción SINR (Seno Real), se usa la instrucción OUTD para
copiar el resultado del acumulador a la memoria V. El resultado es de 32 bits de ancho,
12
requiriendo el OUTD para moverlo.
DirectSOFT
DirectS OF T 32
Contenido del acumulador
13
X1 Carga el número real 45,0
LDR (visto como número real)
R 45,0
al acumulador
45, 000000
14
R ADR
Convierte los grados en
radianes, dejando el A
resultado en el acumulador
0, 7358981
Calcula el seno del número
B
S INR en el acumulador que está
en radianes dejando el
resultado en el acumulador 0, 7071067 C
OU T D
V2000
Copia el valor en el
acumulador a V2000 D
y V2001
0, 7071067

Manual del PLC DL06, 2a. edición en español, 6/07 5–133


Capítulo 5: Instrucciones de conversión de formatos

La instrucción ASCII a HEX (ATH)


La instrucción ATH convierte una tabla de valores de ASCII a una
1 DS5 Usado
tabla de valores hexadecimales. Los valores de ASCII son dos dígitos y ATH
HPP N/A V aaa
sus equivalentes hexadecimales solamente son un dígito. Esto significa
2 que una tabla ASCII de cuatro direcciones de memoria V sólo requiere
dos direcciones de memoria V para la tabla equivalente hexadecimal.
Los parámetros de la función son cargados en el Stack del acumulador y en el acumulador por
3 dos instrucciones adicionales.
Abajo están listados los pasos necesarios de programar una función de tabla de ASCII a
4 hexadecimal.
El ejemplo en la página siguiente muestra un programa para la función de conversión ASCII a
5 hexadecimal.
Paso 1: — Cargue el número de direcciones de memoria V para la tabla ASCII en el primer
6 nivel del Stack del acumulador.
Paso 2: — Cargue la dirección de memoria V de inicio para la tabla ASCII en el acumulador.
7 Este parámetro debe ser un valor en hexadecimal.
Paso 3: — Especifique la dirección de memoria V (Vaaa) de inicio para la tabla hexadecimal en
8 la instrucción de ATH.
Tipo de operando de datos Rango del DL06
9 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria

10 Indicadores
SP53
Descripción
ON cuando el valor del operando es más grande de lo que puede procesar el acumulador.

11 Sugerencia: — Para parámetros que requieran valores en hexadecimal cuando se refieran a


direcciones de memoria se puede usar la instrucción LDA para convertir una dirección octal al
equivalente hexadecimal y cargar el valor al acumulador.
12 En el ejemplo en la página siguiente, cuándo X1 está ON la constantee (K4) es cargada en el
acumulador usando la instrucción LD y se colocará en el primer nivel del Stack del acumulador
13 cuando se ejecuta la próxima instrucción LD. La localización de inicio para la tabla ASCII
(V1400) es cargada en el acumulador usando la instrucción LDA. La dirección inicial para la
14 tabla hexadecimal (V1600) es especificada en la instrucción ATH. La tabla de abajo lista valores
válidos ASCII para la conversión ATH.
A Valores ASCII válidos para la conversión ATH
Valor ASCII Valor hexadecimal Valor ASCII Valor hexadecimal
B 30
31
0
1
38
39
8
9
32 2 41 A
C 33 3 42 B
34 4 43 C
D 35
36
5
6
44
45
D
E
37 7 46 F

5–134 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de conversión de formatos

DirectSOFT
Direct SOFT32

X1 LD
Carga el valor constante 4
en los 16 bits más bajos
del acumulador. Este valor
Tabla ASCII Equivalente
hexadecimal
1
K4 .
define la cantidad de
palabras en la tabla ASCII.

Convierte el octal 1400 al


V1400 33 34 2
LDA
O 1400
hexadecimal 300 y carga 1234 V1600
el valor al acumulador

V1600 es la dirección inicial


V1401 31 32 3
ATH
de la tabla hexadecimal

Programador D2-HPP
V1600

4
37 38
$

SHFT
STR
L
ANDST
B

D
1

3
ENT

PREV E
4
ENT
V1402

5678 V1601
5
L D A B E A A
35 36
SHFT

SHFT
ANDST
A
0
T
MLR
3
H
0

7
B
1

1
G
4

6
A
0

0
A
0

0
ENT

ENT
V1403
6
7
La instrucción HEX a ASCII (HTA)
DS5 Usado
La instrucción HTA convierte una tabla de valores hexadecimales a una tabla especificada de
valores ASCII. Los valores hexadecimales son de un dígito y sus equivalentes ASCII son de dos
8
HPP N/A
dígitos.
Esto significa que una tabla hexadecimal de dos
9
direcciones de memoria V requeriría cuatro
direcciones de memoria V para la tabla equivalente
HTA
V aaa
10
de ASCII. Los parámetros de la función son cargados
en el Stack del acumulador y el acumulador por dos
instrucciones adicionales. Abajo están listados los pasos necesarios para programar la función de
11
transformación de la tabla hexadecimal a ASCII. El ejemplo en la página siguiente muestra un
programa para la función de conversión hexadecimal a ASCII. 12
Paso 1: Cargue el número de direcciones de memoria V en la tabla hexadecimal al primer
nivel del Stack del acumulador. 13
Paso 2: Cargue la localización de la memoria V de inicio para la tabla hexadecimal al
acumulador. Este parámetro debe ser un valor hexadecimal. 14
Paso 3: Especifique la localización de memoria V (Vaaa) de inicio para la tabla ASCII en
la instrucción HTA. A
Sugerencia: — Se puede usar la instrucción LDA para parámetros que requieran valores en
hexadecimal cuando se refieran a direcciones de memoria, para convertir una dirección octal al
equivalente hexadecimal y cargar el valor al acumulador.
B
Tipo de datos del operando Rango en el DL06
C
aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memorias D

Manual del PLC DL06, 2a. edición en español, 6/07 5–135


Capítulo 5: Instrucciones de conversión de formatos

Indicadores Descripción
1 SP53 ON cuando el valor del operando es más grande de lo que puede procesar el acumulador.

En el ejemplo siguiente, cuándo X1 está ON, se carga la constantee (K2) al acumulador usando
2 la instrucción LD. La dirección inicial para la tabla hexadecimal (V1500) es cargada al
acumulador usando la instrucción LDA. La dirección inicial para la tabla ASCII (V1400) es
3 especificada en la instrucción HTA.
DirectSOFT
Direct SOFT32

4 X1 LD
K2
Equivalentes hexadecimales Tabla ASCII

Carga el valor constante 2 a los

5 16 bits más bajos del acumulador.


Este valor define la cantidad de
palabras de memoria en
la tabla hexadecimal.
33 34 V1400

V1500 1234
6 LDA
O 1500
31 32 V1401

Convierte el octal 1500 to

7 hexadecimal 340 y carga el


valor al acumulador.

8 HTA
V1400
37 38 V1402

V1400 es la direccion inicial


V1501 5678
9 de la tabla ASCII.
La conversión es ejecutada
por esta instrucción.
35 36 V1403

10 Programador D2-HPP
$
STR
B
1
ENT

11 SHFT

SHFT
L
ANDST
L
D

D
3
A
SHFT K

B
JMP
E

F
4
ENT

A A ENT
ANDST 3 0 1 5 0 0

12 SHFT H
7
T
MLR
A
0
B
1
E
4
A
0
A
0
ENT

13 La tabla de abajo lista los valores válidos de ASCII para la conversión HTA.
Valores ASCII válidos para conversión HTA
14 Valor hexadecimal Valor ASCII Valor hexadecimal Valor ASCII
0 30 8 38
A 1
2
31
32
9
A
39
41
3 33 B 42
B 4 34 C 43
5 35 D 44
C 6
7
36
37
E
F
45
46

5–136 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de conversión de formatos

La instrucción Segment (SEG)


La instrucción SEGMENT convierte un valor hexadecimal SEG
DS5 Usado
de 4 dígitos en el acumulador a un formato de visor de 7
1
HPP Usado
segmentos. El resultado se va al acumulador.
En el ejemplo siguiente, cuándo X1 está ON, el valor en V1400 se carga en los 16 bits más bajos 2
del acumulador usando la instrucción LD. El valor binario (hexadecimal) en el acumulador es
convertido a un formato de siete segmentos usando la instrucción SEGMENT. El modelo de
bits en el acumulador es copiado a Y20-Y57 usando la instrucción OUTF.
3
DirectSOFT
4
DirectSOFT32 V1400

X1
LD
V1400
6 F 7 1
5
Carga el valor en V1400 a los 16
bits más bajos del acumulador

Acc.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 1
8
1
7
0
6 5
1 1
4 3
1 0
2 1
0 0
0
1
6
SEG

Convierte el valot binario


7
(hexadecimal) en el acumulador
a un formato de un visor
de siete segmentos
8
OUTF Y20
K32

Copia el valor en el 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
9
acumulador a Y20 hasta Y57
Acum. 0 1 1 1 1 1 0 1 0 1 1 1 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0

a
- g f e d c b a - g f e d c b a - g f e d c b a - g f e d c b a Identificación
de segmentos
10
Identificación
de segmentos
f

g
b
Y57 Y56 Y55 Y54 Y53 Y24 Y23 Y22 Y21 Y20
11
OFF ON ON ON ON OFF OFF ON ON OFF
e

d
c
12
Programador D2-HPP
13
$ B

L
ANDST
STR
D
3
1
ENT

B
1
E
4
A
0
A
0
ENT
14
S E G
SHFT

GX
OUT
RST

SHFT
SHFT

F
5
4
C
6

2
ENT

A
0
D
3
C
2
ENT
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–137


Capítulo 5: Instrucciones de conversión de formatos

La instrucción Gray Code (GRAY)


La instrucción GRAY convierte un valor de código Gray de 16
1 DS5 Usado
HPP Usado
bits a un valor BCD. La conversión BCD requiere 10 bits del GRAY
acumulador. Los 22 bits superiores son colocados en "0". Esta
2 instrucción está diseñada para uso con aparatos (típicamente
encoders) que usan el código Gray, como los encoders absolutos.
3 La instrucción GRAY convertirá directamente un número de código GRAY a un número BCD
para aparatos que tienen una resolución de 512 o 1024 conteos por revolución. Si un aparato
que tiene una resolución de 360 conteos por revolución lo deberá ser usada debe restar un valor
4 BCD de 76 del valor convertido para obtener el resultado apropiado. Para un aparato que tiene
una resolución de 720 conteos por revolución usted debe restar un valor BCD de 152.
5 Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
6 SP70 ON cuando el valor en el acumulador es negativo.

En el ejemplo siguiente, cuándo X1 está ON el valor binario representado por X10-X27 es


7 cargado al acumulador usando la instrucción LDF. El valor del código GRAY en el
acumulador es convertido a BCD usando la instrucción GRAY. El valor en los 16 bits más
8 bajos del acumulador es copiado a V2010.
NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
9 use el mismo relevador especial SP.

10 DirectSOFT
Direct SOFT32

X1
X27 X26 X25
OFF OFF OFF
X12 X11 X10
ON OFF ON
LDF K16

11 X10

Carga el valor representado


por las entradas X0 - X27 a
los 16 bits más bajos 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
del acumulador

12 GRAY
Acum. 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 0 1

13 Convierte los 16 bits del valor


del código GRAY en el
acumuladro a un valor BCD
Acum.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
8
0
7
0
6 5
0 0
4 3
0 0
2
1
1
1
0
0
OUT

14 V2010

Copia el valor en los 16 bits más


Código Gray BCD
bajos del acumulador a V2010
0 0 0 6

A Programador D2-HPP
0000000000
0000000001
0000000011
0000
0001
0002
V2010

$ B ENT

B SHFT
STR
L
ANDST
D
1

3
F
5
B
1
A
0
B
1
G
6
ENT
0000000010
0000000110
0000000111
0003
0004
0005
SHFT G R A Y ENT 0000000101 0006

C GX
OUT
6 ORN

SHFT V
AND
0
C
MLS

2
A
0
B
1
A
0
ENT
0000000100 0007

D 1000000001 1022
1000000000 1023

5–138 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de conversión de formatos

La instrucción Shuffle Digits (SFLDGT)


DS5 Usado
La instrucción SFLDGT baraja un máximo de 8 dígitos re-
arreglándolos en una orden especificada. Esta función SFLDGT 1
HPP Usado
requiere que los parámetros sean cargados al primer nivel del
Stack del acumulador y al acumulador con dos instrucciones 2
adicionales. Abajo están listados los pasos necesarios para usar la función SFLDGT.
Paso 1: Cargue el valor (dígitos) para ser barajados en el primer nivel del Stack del 3
acumulador.
Paso 2: Cargue la orden en que los dígitos serán barajados en el acumulador. 4
Paso 3: Use la instrucción SFLDGT.
NOTA: Si el número especificado para especificar el orden contiene un 0 o 9 hasta F la posición 5
correspondiente será colocada como 0.
6
Indicadores Descripción
SP63 ON cuando el resultado de la instrucción hace que el valor en el acumulador sea 0.
7
SP70 ON cuando el valor en el acumulador es negativo.
8
Diagrama de bloque de barajada de dígitos
Hay un máximo de 8 dígitos que se pueden Dígitos a ser barajados
(en el primer nivel del stack)
9
barajar.
9 A B C D E F 0
Las posiciones de los bits en el primer nivel del
Stack del acumulador definen los dígitos a ser
10
barajados.
Ellos corresponden a las posiciones de bits en el
1 2 8 7 3 6 5 4 11
acumulador que define la orden que los dígitos se Orden especificada (en el acumulado

barajarán. 12
Posiciones de bits 8 7 6 5 4 3 2 1
Los dígitos se barajan y el resultado se va al
acumulador. B C E F 0 D A 9 13
Resultado (en el acumulador)
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–139


Capítulo 5: Instrucciones normales RLL - Conversión de números

En el ejemplo siguiente cuando X1 está ON, el valor en el primer nivel del Stack del
acumulador será reorganizado en la orden especificada por el valor en el acumulador.
1 El ejemplo A muestra cómo los dígitos siendo barajados trabajan, cuándo 0 o 9 hasta F no se
usan, cuándo se especifica la orden que los dígitos deben ser barajados. También, no hay
2 números duplicados en la orden especificada.
El ejemplo B muestra cómo los dígitos siendo barajados trabajan, cuando se usa un 0 o de 9
3 hasta F, cuándo se especifica la orden que los dígitos deberán ser barajados. Note que cuando
se ejecuta la instrucción SFLDGT, las posiciones de bits en la primera dirección del Stack que
tenía un 0 o de 9 hasta F correspondiente en el acumulador (orden especificado) son puestos a
4 "0".
El ejemplo C muestra cómo los dígitos siendo barajados trabajan, cuando se usan números
5 duplicados, especificando la orden en que los dígitos deberán ser barajados. Note que cuando
se ejecuta la instrucción SFLDGT, se usa el número duplicado más significativo en la orden
6 especificada en el resultado.

DirectSOFT
7 Direct SOFT32

X1
LDD V2001
A
V2000 V2001
B
V2000 V2001
C
V2000
V2000 9 A B C D E F 0 0 F E D C B A 9 9 A B C D E F 0

8 Carga el valor en V2000 y


V2001 al acumulador Posición
de los bits
8 7 6 5
9 A B C D
4 3
E
2
F
1
0
8 7 6 5
0 F E D
4
C
3
B
2
A
1
9
8
9
7
A
6
B
5
C
4
D
3
E
2
F
1
0
original Acum. Acum. Acum.

9 LDD 1
V2007
2 8 7 3
V2006
6 5 4 0
V2007
0 4 3 0
V2006
0 2 1 4
V2007
3 2 1 4
V2006
3 2 1
V2006

10 Carga el valor en V2006 y


V2007 al acumulador Orden
8 7 6 5
especificada 1 2 8 7 3
4 3
6
2
5
1
4 Acum.
8
0
7
0
6
4
5
3
4
0
3
0
2
2
1
1 Acum.
8
4
7
3
6
2
5
1
4
4
3
3
2
2
1
1 Acum.

11 SFLDGT
Nueva
posición
de los bits
8
B C
7
E
6 5
F 0
4 3
D A
2 1
9 Acum.
8 7 6 5
0 0 0 0
4 3
E D
2
A
1
9 Acum.
8
0
7
0
6
0
5
0
4
9
3
A
2
B
1
C Acum.

12 Reordena los dígitos en el


primer nivel del stack
basados en el modelo en
el acumulador. El resultado
se queda en el acumulador
B C E F 0 D A 9 0 0 0 0 E D A 9 0 0 0 0 9 A B C

13 OUTD
V2010
V2011 V2010 V2011 V2010 V2011 V2010

Copia el valor en el acumulador

14 Programador D2-HPP
a V2010 y V2011

$ B

A SHFT
STR
L
ANDST
D
1

3
D
ENT

3
C
2
A
0
A
0
A
0
ENT

L D D C A A G

B SHFT

SHFT
ANDST
S
RST
SHFT
3
F
3

5
L
ANDST
D
2

3
G
0

6
T
MLR
0 6

ENT
ENT

GX SHFT D C A B A ENT

C OUT 3 2 0 1 0

5–140 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

Instrucciones de tablas (Tablas son simplemente memorias consecutivas)


La instrucción Move (MOV)
1
La instrucción MOV copia los valores de una tabla de memoria V
DS5 Usado a otra tabla de memoria V de una misma longitud. La tabla original
MOV
V aaa
2
HPP Usado queda intacta. Los parámetros de función se cargan en el primer
nivel del Stack del acumulador y en el acumulador con dos 3
instrucciones adicionales. Abajo están listados los pasos necesarios para programar la función
MOV.
• Paso 1 Cargue el número de direcciones de memoria V a ser copiados al primer nivel del Stack del
4
acumulador. Este parámetro es un valor hexadecimal (máx. kFFF, 4096 decimall)
• Paso 2 Cargue la dirección inicial de memoria V de las direcciones a ser copiadas al acumulador. Este
5
parámetro es un valor hexadecimal.
• Paso 3 Use la instrucción MOV que especifica donde está la dirección inicial de memoria V (Vaaa) 6
en la tabla de destino.
Sugerencia: — Para parámetros que necesitan valores hexadecimales cuando se refieren a 7
direcciones de memoria, se puede usar la instrucción LDA para convertir una dirección de octal
al equivalente hexadecimal y cargar el valor en el acumulador.
Tipo de operando de datos Rango del DL06
8
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria
9
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria
Indicadores Descripción 10
SP53 ON cuando el valor del operando es más grande que lo que el acumulador puede usar

En el ejemplo siguiente, cuándo X1 está ON, se carga el valor constantee (K6) al acumulador
11
usando la instrucción LD. Este valor especifica la longitud de la tabla y se coloca en el primer
nivel del Stack después que se ejecuta la instrucción LDA. La dirección octal 2000 (V2000), que 12
es la dirección inicial para la tabla fuente, se carga al acumulador. La dirección de la tabla de
destino (V2030) es especificada en la instrucción MOV. 13
Esta es la única instrucción que permite escribir datos a memoria no-volátil.
DirectSOFT
Direct SOFT32

X1 LD
Carga el valor constante 6
hexadecimal en los 16 bits
14
X X X X V2026
K6 más bajos del acumulador

LDA
O 2000
Convierte el octal 2000 al
hexadecimal 400 y carga el
valor al acumulador
0
0
1
5
2
0
3 V2000
0 V2001
X
0
0
X
1
5
X
2
0
X V2027
3 V2030
0 V2031
A
9 9 9 9 V2002 9 9 9 9 V2032
MOV
V2030
Copia la tabla especificada
a una tabla que comienza
en la dirección V2030
3
8
0
9
7
8
4 V2003
9 V2004
3
8
0
9
7
8
4 V2033
9 V2034
B
1 0 1 0 V2005 1 0 1 0 V2035
Programador D2-HPP

$
STR
B
1
ENT
X
X
X
X
X
X
X V2006
X V2007
X
X
X
X
X
X
X V2036
X V2037
C
SHFT L D SHFT K G ENT

SHFT
ANDST
L
ANDST
D
3

3
A
0
C
JMP

2
A
6

0
A
0
A
0
ENT
D
SHFT M O V C A D A ENT
ORST INST# AND 2 0 3 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–141


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Move Memory Cartridge (MOVMC)


1 La instrucción Load Label (LDLBL)
Las instrucciones MOVMC y LDLBL son usadas para copiar los
DS5 Usado MOVMC
2 HPP Usado
datos en la memoria ladder de un programa a memoria V. La
instrucción LDLBL se usa con la instrucción MOVMC cuando se V aaa
copian los datos de memoria ladder en un programa a la memoria V.
3 Para copiar los datos de la memoria ladder a la memoria V, se cargan
los parámetros de la función a los primeros dos niveles del Stack del
4 acumulador y a acumulador con dos instrucciones adicionales. LDLBL
K aaa
Esta instrucción está relacionada con las instrucciones DLBL, ACON
5 y NCON. Le recomendamos que vea las definiciones de estas
instrucciones.
6 Abajo están listados los pasos necesarios para programar las funciones MOVMC y LDLBL.
• Paso 1: Cargue el número de palabras a ser copiado en el segundo nivel del Stack del acumulador.
7 • Paso 2: Cargue el desplazamiento del área de data label en la memoria ladder y el comienzo del bloque
de memoria V en el primer nivel del Stack .
• Paso 3:Cargue la etiqueta de datos de fuente (LDLBL Kaaa) al acumulador cuando se copian los datos
8 de memoria ladder a la memoria V. Esto es la fuente de la localización del valor.
• Paso 4: la instrucción MOVMC que especifica el destino en la memoria V (Vaaa). Esto es el destino
9 de copia.

10 Tipo de operando de datos


....................................A
Rango del DL06
aaa

11 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria

NOTA: Para más información sobre LDLBL, vea la página 5-187.


12
ADVERTENCIA: El desplazamiento para este uso de la instrucción comienza en 0, pero puede ser
13 cualquier número que no dé lugar a datos fuera del área de datos de la fuente que es
copiada en la tabla de destino. Cuando un desplazamiento está fuera de los límites de la
información de la fuente, entonces serán transferidos valores desconocidos de datos en
14 la tabla de destino.

A
B
C
D

5–142 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

Copie datos de un area de etiqueta de datos a la memoria V (Data Label Area)


En el ejemplo de abajo, se copian los datos de un área de etiqueta de datos a la memoria V.
Cuándo X1 está ON, se carga el valor constantee (K4) al acumulador usando la instrucción LD. 1
Este valor especifica la longitud de la tabla y se coloca en la segunda localización del Stack
después que se ejecutan las próximas instrucciones LD y LDLBL. El valor constantee (K0) es
cargado al acumulador, especificando el desplazamiento para los datos fuente y destino. Se
2
coloca en la primera localización del Stack, después que se ejecuta la instrucción de LDLBL. La
dirección fuente de donde se copian los datos es cargada al acumulador usando la instrucción 3
LDLBL. La instrucción MOVMC especifica la dirección inicial de la tabla de destino y ejecuta
la copia de datos del área de etiqueta de datos a la memoria V. 4
Area de etiqueta de datos DirectSOFT
Direct SOFT32
programada después de
la instrucción END
X1 LD 5
. K4
DLBL K1 . Carga el valor 4 al acumulador, 6
N C O N 1 2 3 4 V2000 especificando la cantidad de
localizaciones a ser copiadas
K 1 2 3 4

N C O N 4 5 3 2 V2001
LD
7
K 4 5 3 2

N
K
C
6
O
1
N
5 1
6 1 5 1 V2002
K0

Carga el valor 0 al acumulador


8
especificando el desplazamiento
N
K 8
C O
8
N
4 5
8 8 4 5 V2003 de las direcciones fuente y destino
9
X X X X V2004 LDLBL
. K1 10
. Carga el valor 1 al acumulador

Programador D2-HPP
especificando el area de etiqueta
de datos K1 como dirección inicial
de los datos a ser copiados
11
$
STR
B
1
ENT
MOVMC
12
L D K E V2000
SHFT SHFT ENT
ANDST
L D
3
K
JMP
A
4
V2000 es la dirección inicial 13
SHFT SHFT ENT del destino para los datos
ANDST 3 JMP 0 a ser copiados
SHFT L
ANDST
D
3
L
ANDST
B
1
L
ANDST
B
1
ENT 14
M O V M C C A A A
SHFT
ORST INST# AND ORST 2 2 0 0 0
ENT
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–143


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción SETBIT
La instrucción SETBIT pone un solo bit en "1" SETBIT
1 DS5 Usado
HPP Usado dentro de un rango de direcciones de memoria V. A aaa

La instrucción RSTBIT
2 La instrucción RSTBIT coloca un solo bit en "0" en A aaa
RSTBIT

DS5 Usado un rango de localizaciones de memoria V.


3 HPP Usado
La descripción siguiente se aplica a las instrucciones SETBIT y RSTBIT.
Paso 1: Cargue la longitud de la tabla (el número de direcciones de memoria V) al primer nivel
4 del Stack del acumulador. Este parámetro debe ser un valor hexadecimal, 0 hasta FF, que
es 255 decimal.
5 Paso 2: Cargue la dirección inicial de memoria V de la tabla al acumulador. Este parámetro debe
ser un valor hexadecimal. Usted puede usar la instrucción LDA para convertir una
6 dirección octal a hexadecimal.
Paso 3: Coloque la instrucción SETBIT o RSTBIT. Esto especifica la referencia del número del
7 bit que usted quiere hacer "1" o "0". El número del bit está en octal, y el primer bit en
la tabla es el número "0".
Sugerencia: — Recuerde que cada dirección de memoria V contiene 16 bits. Así, los bits de la
8 primera palabra de la tabla se numeran de 0 a 17 octal. Por ejemplo, si la longitud de tabla es
de seis palabras, entonces 6 palabras = (6x16 bits) = 96 bits (decimal) o 140 octal. El rango
9 permisible de números de referencia de bits sería 0 a 137 octal. SP 53 se hará ON si el bit
especificado está fuera del rango de la tabla.
10 Tipo de operando de datos Rango del DL06
aaa
11 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria

Indicadores Descripción
12 SP53 ON cuando el número de bit referenciado en el Set Bit o en el Reset Bit excede el rango
de la tabla.

13 NOTA: Indicaciones de estado discretas SP son válidas solamente hasta que se ejecute otra instrucción que
use los mismos relevadores especiales SP.
14 Por ejemplo, suponga que tenemos una V3000
tabla que comienza en V3000 que tiene dos MSB LSB
A palabras, como mostrado a la derecha. Cada
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

palabra en la tabla contiene 16 bits, o 0 a 17


B en octal. Para poner el bit 12 en la segunda
palabra, usamos su referencia octal (bit 14).
16 bits
Entonces calculamos la dirección octal de
C bit desde el comienzo de la tabla, de modo MSB
V3001
LSB
que 17 + 14 = 34 octal. El programa 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

D siguiente muestra cómo poner el bit (como 17 16 15 14 13 12 11 10 7 6 5 4 3 2 1 0


mostrado) en "1".

5–144 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

En este ejemplo usaremos la entrada X0 para disparar o activar la operación SETBIT.


Primero, cargamos la longitud de la tabla (2 palabras) al Stack del acumulador.
Luego, cargamos la dirección inicial en el acumulador. Ya que V3000 es un número octal lo
1
tenemos que convertir a hexadecimal usando la instrucción LDA.
Finalmente, usamos la instrucción SETBIT (o RSTBIT) y especificamos la dirección octal del
2
bit (bit 34), referenciada de la tabla.
DirectSOFT
3
El PLC carga el valor constante 2
(Hexadecimal) en los 16 bits
4
menos significativos del
acumulador 5
Convierte el valor octal V3000 a
hexadecimal y lo coloca en el
acumulador. Esta dirección es el
6
comienzo de la tabla
7
Coloca el bit 34 (octal) en la tabla
como “1” 8
Programador D2-HPP
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–145


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Fill (FILL)


La instrucción FILL llena una tabla de hasta 255 direcciones de
1 DS5 Usado
HPP Usado
memoria V con un valor (Aaaa), que es una dirección de memoria V o FILL
una constantee de 4 dígitos. Los parámetros de la función son cargados A aaa
2 al primer nivel del Stack del acumulador y al acumulador con dos
instrucciones adicionales. Abajo están listados los pasos necesarios para
programar la función FILL.
3 Paso 1:— Cargue la cantidad de direcciones de memoria V a ser llenadas al primer nivel del
Stack del acumulador. Este parámetro debe ser un valor hexadecimal, de 0 a FF, que es 255
4 decimal.
Paso 2:— Cargue la dirección inicial de memoria V de la tabla en el acumulador. Este parámetro
5 debe ser un valor hexadecimal.
Paso 3:— Coloque la instrucción FILL que especifica el valor para llenar la tabla.
6 Sugerencia: — Para parámetros que requieran valores en hexadecimal cuando se refieran a
direcciones de memoria se puede usar la instrucción LDA para convertir una dirección octal al
7 equivalente hexadecimal y cargar el valor al acumulador.
Tipo de operando de datos Rango del DL06
8 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria

9 Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Vea el mapa de memoria
0–FF

10 Indicadores
SP53
Descripción
On si la dirección de memoria está fuera de rango
En el ejemplo siguiente, cuándo X1 está ON, se carga el valor (K4 constante) al acumulador
11 usando la instrucción LD. Este valor especifica la longitud de la tabla y se coloca en el primer
nivel del Stack del acumulador cuando se ejecuta la instrucción LDA. La dirección octal 1600
12 (V1600) es la dirección inicial de la tabla y se carga en el acumulador usando la instrucción
LDA. El valor para llenar la tabla con (V1400) es especificado en la instrucción FILL.
El PLC carga la constante 4
13 (hexadecimal) en los 16 bits menos
significativos del acumulador

14 Convierte la dirección octal


1600 a hexadecimal y
coloca el valor en el
acumulador
A
Llena la tabla con el valor en V1400
B
Programador D2-HPP
C
D

5–146 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Find (FIND)


La instrucción Find se usa para buscar un valor especificado en
DS5 Usado una tabla de memoria V de hasta 255 direcciones. Los FIND
1
HPP Usado parámetros de la función FIND son cargados en el primer y
segundo nivel del Stack del acumulador y del acumulador con A aaa 2
tres instrucciones adicionales. Abajo están listados los pasos
necesarios para programar la función Find.
Paso 1: Cargue la longitud de la tabla (el número de direcciones de memoria V) en el segundo
3
nivel del Stack del acumulador. Este parámetro debe ser un valor hexadecimal, de 0
hasta FF, que es 255 decimal. 4
Paso 2: Cargue la dirección de la memoria V de inicio de la tabla en el primer nivel del Stack del
acumulador. Este parámetro debe ser un valor hexadecimal. 5
Paso 3: Cargue la cantidad de memorias a ser saltadas de la dirección inicial para comenzar la
búsqueda. Este parámetro debe ser un valor hexadecimal. 6
Paso 4: Coloque la instrucción Find especificando el primer valor a ser encontrado en la tabla.
Resultado: — El resultado es expresado en hexadecimal y muestra cuantas memorias V hay 7
entre el inicio de la tabla y la memoria encontrada. El desvío de la dirección inicial a la primera
dirección de la memoria V que contiene el valor de búsqueda es vuelto al acumulador. SP53 se
pondrá ON si se especifica una dirección fuera de la tabla en el desvío, o el valor no es
8
encontrado. Si el valor no se encuentra serán colocados 0s en el acumulador.
Sugerencia: — Para parámetros que requieran valores hexadecimales cuando se refieran a
9
direcciones de memoria se puede usar la instrucción LDA para convertir una dirección octal al
equivalente hexadecimal y cargar el valor al acumulador. 10
Tipo de operando de datos Rango del DL06
....................................A aaa 11
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0–FF 12
Indicadores Descripción
SP53 ON si no hay un valor en la tabla que sea igual a valor de búsqueda. 13
NOTA: Las indicaciones de estado discretas SP son válidas solamente hasta que se ejecute otra instrucción
que use los mismos relevadores especiales SP.
14
En el ejemplo siguiente, cuando X1 está encendido, el valor de la constante K6 se carga en el A
acumulador usando el instrucción..Este valor especifica la longitud de la tabla y se coloca en la
segunda localización del stack cuando se ejecuta la instrucción siguiente. La dirección octal 1400
(V1400) es la localización inicial de la tabla y se carga en el acumulador. Este valor se pone en
B
el primer nivel del stack del acumulador cuando se ejecuta el instrucción siguienteLD. El
desplazamiento (offset K2) se carga en los 16 bits más bajos del acumulador usando la C
instrucción LD. El valor que se encontrará en la tabla se especifica en el instrucción FIND. Si
se encuentra un valor igual al valor de la búsqueda, el desplazamiento (desde el inicio de la
tabla) donde se encuentra el valor residirá en el acumulador.
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–147


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

DirectSOFT
DirectS OF T 32 S

1 X1 LD
K6
0 1
S
2 3 V1400 0
Longitud de la tabla
Desvío
0 5 0 0 V1401 1

2 Carga el valor 6 hexadecimal


a los 16 bits más bajos
del acumulador
Comience aquí 9
3
9
0
9
7
9 V1402
4 V1403
2
3 Acumulador
0 0 0 0 0 0 0 4
8 9 8 9 V1404 4
3 LDA
O 1400 1
X
0
X
1
X
0 V1405
X V1406
5 V1404 contiene la posición
relativa donde fue
encontrado el primer valor
Convierte el octal 1400 a buscado. El valor 8989 fue
X X X X V1407
4 hexadecimal 300 y carga el
valor al acumulador
S
S
encontrado en la cuarta
posición después del inicio
de la tabla especificada

LD
5 K2 Programadoir D2-HPP

$ B
Carga el valor constante 2 a ENT
STR 1
los 16 bits más bajos
6 del acumulador SHFT L
ANDST
D
3
PREV G
6
ENT

SHFT L D A B E A
F IND ANDST 3 0 1 4 0

7 K8989

Encuentra la posición en la
SHFT L
ANDST
D
3
PREV
C
2
ENT

tabla donde está el valor 8989. SHFT F I N D I J I J ENT


NEXT

8 El resultado es en hexadecimal
5 8 TMR 3 8 9 8 9

La instrucción Find Greater Than (FDGT)


9 La instrucción FDGT se usa para buscar la primera ocurrencia
de un valor en una tabla de memoria V que es más grande que el
valor (Aaaa) especificado, que puede ser una dirección de
10 memoria V o una constantee de 4 dígitos. Los parámetros de la F DG T
función son cargados en el primer nivel del Stack del A aaa
11 acumulador y el acumulador por dos instrucciones adicionales.
Abajo están listados los pasos necesarios para programar la
instrucción FDGT.
12 Paso 1: Cargue la longitud de la tabla (hasta 255 direcciones) al primer nivel del Stack
del acumulador. Este parámetro debe ser un valor hexadecimal, de 0 hasta FF.
13 Paso 2: Cargue la direción inicial de la tabla en el acumulador. Este parámetro debe ser
un valor hexadecimal.
14 Paso 3: Coloque la instrucción FDGT que especifica el valor prefijado de búsqueda. El
resultado es expresado en hexadecimal.
A Resultado:— El desvío de la dirección inicial a la primera dirección de memoria V que contiene
el valor más grande de búsqueda es vuelto al acumulador. SP53 se pondrá ON si el valor no se
B encuentra y se colocarán "0s" en el acumulador.
Sugerencia: — Para parámetros que requieran valores en hexadecimal cuando se refieran a
C direcciones de memoria la instrucción LDA se puede usar para convertir una dirección octal
al equivalente hexadecimal y cargar el valor al acumulador.
D NOTA: Esta instrucción no tiene una cantidad de memorias a ser saltadas tal como el que se usa para la
instrucción FIND.

5–148 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

Tipo de operando de datos Rango del DL06


....................................A aaa 1
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 0–FF
2
Indicadores Descripción
SP53 ON si no hay un valor en la tabla que sea mayor que el valor de búsqueda 3
NOTA: Las indicaciones de estado discretas SP son válidas solamente hasta que se ejecute otra
instrucción que use los mismos relevadores especiales SP. El puntero para esta instrucción 4
comienza en 0 y se va al acumulador.

En el ejemplo siguiente, cuándo X1 está ON, se carga el valor constantee (K6) al acumulador
5
usando la instrucción LD. Este valor especifica la longitud de la tabla y se coloca en la primera
localización del Stack después que se ejecuta la instrucción LDA. La dirección octal 1400 6
(V1400) es la dirección inicial de la tabla y se carga al acumulador. El valor prefijado de
búsqueda se especifica en la instrucción Find. Si se encuentra un valor mayor que el valor
prefijado de búsqueda, el desvío (de la dirección inicial de la tabla) donde el valor se localiza
7
residirá en el acumulador.
Si no hay un valor en la tabla que sea mayor que el valor buscado, se almacena un cero en el
8
acumulador y SP53 se hará ON.
DirectSOFT
DirectS OF T 32
9
X1 LD
K6 10
Carga el valor constante 6 S
S
hexadecimal en los 16 bits
más bajos del acumulador
Comienza aquí 0 1 2 3 V1400 0
Longitud de la tabla 11
LDA 0 5 0 0 V1401 1 Acumulador
O 1400

Convierte el octal 1400 a


9
3
9
0
9
7
9 V1402
4 V1403
2
3
0 0 0 0 0 0

V1402 contiene el primer valor


0 2
12
hexadecimal 300 y carga 8 9 8 9 V1404 que es mayor que el valor prefijado.
4
el valor al acumulador
1
X
0
X
1
X
0 V1405
X V1406
5
9999 fue la segunda posición después
del inicio de la tabla especificada 13
F DG T
X X X X V1407
K8989

Encuentra el valor en la tabla


S
S
14
que es más grande del que
fue especificado. El resultado

Programador D2-HPP
es en hexadecimal
A
$
STR
B
1
ENT
B
SHFT L D PREV G ENT

SHFT
ANDST

L D
3

A B
6

E A A ENT
C
ANDST 3 0 1 4 0 0

SHFT F
5
D
3
G
6
T
MLR
NEXT
I
8
J
9
I
8
J
9
ENT D

Manual del PLC DL06, 2a. edición en español, 6/07 5–149


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Table to Destination (TTD)


La instrucción TTD copia un valor de una tabla de memoria
1 DS5 Usado V a una dirección de memoria V e incrementa el puntero de
HPP Usado la tabla en 1. La primera dirección de memoria V en la tabla
2 contiene el puntero de la tabla que indica la próxima
dirección a ser copiada en la tabla. La instrucción será TTD
Aaaa
ejecutada una vez por barrido si el renglón es verdadero u
3 ON. El puntero de la tabla vuelve a 1 cuando el valor se hace
igual a la última dirección en la tabla. Los parámetros de la
4 función son cargados al primer nivel del Stack del
acumulador y al acumulador con dos instrucciones
5 adicionales.
Abajo están listados los pasos necesarios para programar la instrucción TTD.
6 Paso 1: Cargue la longitud de la tabla de datos (el número de direcciones de memoria V)
al primer nivel del Stack del acumulador. Este parámetro debe ser un valor
hexadecimal, 0 hasta FF, que es 255 decimal..
7 Paso 2: Cargue la dirección de memoria V inicial para la tabla en el acumulador.
(Recuerde, para esta instrucción la dirección inicial de la tabla se usa como el
8 puntero de la tabla.) Este parámetro debe ser un valor hexadecimal.
Paso 3: Coloque la instrucción TTD especificando el destino de la memoria V (Vaaa)
9 Sugerencia: — Para parámetros que requieran valores en hexadecimal cuando se refieran a
direcciones de memoria se puede usar la instrucción LDA para convertir una dirección octal al
10 equivalente hexadecimal y cargar el valor al acumulador.
Sugerencia:— La instrucción se ejecutará cada barrido si la lógica de la entrada está ON. Si
11 usted no quiere que la instrucción ejecute en más que un barrido, se debe usar una instrucción
one shot (PD) en la lógica de entrada.
12 Sugerencia: — La localización del puntero debe ser puesta al valor donde comenzará la
operación de tabla. Se debe usar el relevador especial SP0 o una instrucción one shot (PD) de
modo que el valor sólo sea puesto en un barrido y no afecte la operación de la instrucción.
13
Tipo de operando de datos Rango del DL06
14 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
A Indicadores Descripción
B SP56 ON cuando el puntero de la tabla llega a la longitud de la tabla.

NOTA: Las indicaciones de estado discretas SP son válidas solamente hasta que se ejecute otra instrucción
C que use los mismos relevadores especiales SP o en el fin del barrido. El puntero para esta instrucción
comienza en 0 y se hace 1 cuando se llega a la longitud de la tabla. Note que el puntero se vuelve a
D "1" en esta ocasión y no a 0.

5–150 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

En el ejemplo siguiente, cuándo X1 está ON, se carga el valor constantee (K6) al acumulador
usando la instrucción LD. Este valor especifica la longitud de la tabla y se coloca en la primera
localización del Stack después que se ejecuta la instrucción LDA. La dirección octal 1400
(V1400) es la dirección inicial de la tabla fuente y se carga en el acumulador.
1
Recuerde, V1400 se usa como la localización de un puntero, y no es realmente parte de la tabla
fuente de datos. La localización de destino (V1500) es especificada en la instrucción TTD. El
2
puntero de la tabla (V1400 en este caso) será aumentado en "1" después de cada ejecución de
la instrucción TTD. 3
DirectSOFT
DirectSOFT32

X1 LD Carga el valor constante 6 hexadecimal


en los 16 bits más bajos del acumulador
4
K6

LDA
Convierte el octal 1400 a hexadecimal 300
5
y carga este valor al acumulador.
0 1400 Esta es la localización del
puntero de la tabla

Copia el valor especificado desde


6
TTD
Programador D2-HPP la tabla al destino especificado (V1500)

$
STR
B
1
ENT
V1500
7
L D G
SHFT

SHFT
ANDST

L D
3

A
PREV

B
6

E
ENT

A A ENT
8
ANDST 3 0 1 4 0 0

SHFT T
MLR
T
MLR
D
3
B
1
F
5
A
0
A
0
ENT 9
Es importante entender cómo se numeran las
direcciones de la tabla. Si examina la tabla del V1401 0
Tabla
5 0 0 0 6
Puntero de la tabla
0 0 0 0 V1400 10
ejemplo, usted notará que la primera dirección de V1402 9 9 9 9 1

datos, V1401, se usará cuando el puntero es igual a


0, y nuevamente cuando el puntero es igual a seis.
V1403 3 0 7 4
V1404 8 9 8 9
2
3
Des tino
X X X X V1500 11
V1405 1 0 1 0 4
¿Por qué? Porque el puntero es sólo igual a 0 antes
de la primera ejecución. De allí en adelante,
V1406 2 0 4 6
V1407 X X X X
5
12
incrementa de uno a seis y luego vuelve a 1. S

También, nuestro ejemplo usa un contacto DirectSOFT


S

DirectSOFT32 (Ejemplo de enclavamiento usando SP56)


13
normal de entrada (X1) para controlar la X1 C0
ejecución. Ya que el barrido de la CPU es
extremadamente rápido y el puntero C1
PD 14
LD
aumenta en 1 automáticamente, la tabla
hace el ciclo por todas las direcciones muy
K6

Carga el valor constante 6 hexadecimal


A
rápidamente. en los 16 bits más bajos del acumulador

Si esto es un problema, se tiene la opción C0 C1


B
de usar SP56 en unión con una instrucción SET

one shot (PD) y un enclavamiento (C1 por


ejemplo) para permitir a la tabla pasar por
SP56 C1
RST
C
todas direcciones una vez y luego para. La
lógica mostrada aquí no es necesaria, es Ya que los relevadores especiales vuelven a 0 al fin
del barrido, este enclavamiento debe estar justamente
D
solamente un método opcional. después de la instrucción TTD en el programa

Manual del PLC DL06, 2a. edición en español, 6/07 5–151


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

El diagrama en esta página muestra los resultados barrido por barrido de la ejecución del
programa del ejemplo.Note como el puntero automáticamente salta de 0 a 6 y luego comienza
1 en 1 en vez de 0. También, note como SP56 es ON solamente hasta el fin del barrido

2 Barrido N Antes de la ejecución de TTD

Tabla Puntero de la tabla


Después de la ejecución de TTD

Tabla
Puntero de la tabla
(Incrementado automáticamente)
0 0 0 0 V1400 0 0 0 1 V1400
3 V1401
V1402
V1403
0
9
3
5
9
0
0
9
7
0
9
4
0 6
1
2
Destino
V1401
V1402
V1403
0
9
3
5
9
0
0
9
7
0
9
4
0 6
1
2
Destino
X X X X V1500 0 5 0 0 V1500
8 9 8 9 3 8 9 8 9 3

4 V1404
V1405
V1406
1
2
0
0
1
4
0
6
4
5
SP56
V1404
V1405
V1406
1
2
0
0
1
4
0
6
4
5
SP56
SP56 = OFF SP56 = OFF
V1407 X X X X V1407 X X X X

5 S
S
S
S

6 Barrido N+1 Antes de la ejecución de TTD

Tabla Puntero de la tabla


Después de la ejecución de TTD

Tabla
Puntero de la tabla
(Incrementado automáticamente)

V1401 0 5 0 0 0 6 0 0 0 1 V1400 V1401 0 5 0 0 0 6 0 0 0 2 V1400

7 V1402
V1403
9
3
9
0
9
7
9
4
1
2
Destino
V1402
V1403
9
3
9
0
9
7
9
4
1
2
Destino
0 5 0 0 V1500 9 9 9 9 V1500
V1404 8 9 8 9 3 V1404 8 9 8 9 3

8 V1405
V1406
1
2
0
0
1
4
0
6
4
5 SP56
SP56 = OFF
V1405
V1406
1
2
0
0
1
4
0
6
4
5 SP56
SP56 = OFF
V1407 X X X X V1407 X X X X

9 S
S
S
S

10 S
S

Barrido N+5 Antes de la ejecución de TTD Después de la ejecución de TTD

11 V1401 0
Tabla
5 0 0 0 6
Puntero de la tabla
0 0 0 5 V1400 V1401 0
Tabla
5 0 0 0 6
Puntero de la tabla
(Incrementado automáticamente)
0 0 0 6 V1400

12 V1402
V1403
V1404
9
3
8
9
0
9
9
7
8
9
4
9
1
2
3
1
Destino
0 1 0 V1500
V1402
V1403
V1404
9
3
8
9
0
9
9
7
8
9
4
9
1
2
3
2
Destino
0 4 6 V1500

V1405 1 0 1 0 4 V1405 1 0 1 0 4
13 V1406
V1407
2
X
0
X X
4 6
X
5 SP56
SP56 = OFF
V1406
V1407
2
X
0
X
4
X
6
X
5 SP56
SP56 = ON hasta el
fin del barrido
o próxima

14 S
S
S
S
instrucción
que use SP56

Barrido N+6 Antes de la ejecución de TTD Después de la ejecución de TTD

A V1401 0
Tabla
5 0 0 0 6
Puntero de la tabla
0 0 0 6 V1400 V1401 0
Tabla
5 0 0 0 6
Puntero de la tabla
(Vuelve a 1, no a 0)
0 0 0 1 V1400
V1402 9 9 9 9 1 V1402 9 9 9 9 1

B V1403
V1404
3
8
0
9
7
8
4
9
2
3
2
Destino
0 4 6 V1500
V1403
V1404
3
8
0
9
7
8
4
9
2
3
0
Destino
5 0 0 V1500

V1405 1 0 1 0 4 V1405 1 0 1 0 4

C V1406
V1407
2
X
0
X X
4 6
X
5 SP56
SP56 = OFF
V1406
V1407
2
X
0
X
4
X
6
X
5 SP56
SP56 = OFF

S S

D S S

5–152 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Remove from Bottom (RFB)


La instrucción RFB copia un valor del fondo de una tabla de
DS5 Usado
HPP Usado memoria V a una dirección de memoria V y decrementa un puntero 1
de la tabla en "1". La primera localización de memoria V en la tabla RFB
contiene el puntero de la tabla que indica la próxima localización
en la tabla a ser copiada. La instrucción se ejecutará una vez por
Aaaa 2
barrido si el renglón es verdadero. La instrucción parará la operación
cuando el puntero es igual a 0. Los parámetros de la función son 3
cargados al primer nivel del Stack del acumulador y al acumulador
con dos instrucciones adicionales. Abajo están listados los pasos 4
necesarios para programar la instrucción RFB.
Paso 1:— Cargue la longitud de la tabla (la cantidad de direcciones de memoria V) en el primer
nivel del Stack del acumulador. Este parámetro debe ser un valor hexadecimal, 0
5
hasta FF.
Paso 2:— Cargue la dirección de la memoria V inicial de la tabla al acumulador. (Recuerde, para
6
esta instrucción, la primera dirección de la tabla se usa como el puntero de la tabla).
Este parámetro debe ser un valor hexadecimal. 7
Paso 3:— Coloque la instrucción RFB que especifica la dirección (Vaaa) de la memoria V de
destino. 8
Sugerencia: — Para parámetros que requieran valores en hexadecimal cuando se refieran a
direcciones de memoria se puede usar la instrucción LDA para convertir una dirección octal al 9
equivalente hexadecimal y cargar el valor al acumulador.
Sugerencia:— La instrucción se ejecutará cada barrido si la lógica de entrada está ON. Si usted
no quiere que la instrucción se ejecute más que un barrido, se debe usar una instrucción one shot
10
(PD) en la lógica de entrada.
Sugerencia: — La localización del puntero debe ser puesta al valor donde comenzará la
11
operación de tabla. Se debe usar el relevador SP0 especial o la instrucción one shot (PD) de
modo que el valor sólo sea puesto en un barrido y no afecte la operación de la instrucción. 12
Tipo de operando de datos Rango del DL06
....................................A aaa
13
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
14
Indicadores Descripción
SP56 ON cuando el valor del puntero de la tabla es igual a 0
A
NOTA: Las indicaciones de estado discretas SP son válidas solamente hasta que se ejecute otra instrucción
que use los mismos relevadores especiales SP o en el fin del barrido. El puntero para esta instrucción
puede ser colocado para iniciar en cualquier parte de la tabla. No es colocado automáticamente. Ud.
B
debe colocar un valor en el puntero en algún lugar del programa ladder.
C
D

Manual del PLC DL06, 2a. edición en español, 6/07


5–153
Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

En el ejemplo siguiente, cuándo X1 está ON, se carga el valor constantee (K6) al acumulador
usando la instrucción LD. Este valor especifica la longitud de la tabla y se coloca en el primer
1 nivel del Stack después que se ejecuta la instrucción LDA. La dirección octal 1400 (V1400) es
la dirección inicial de la tabla fuente y se carga en el acumulador. Recuerde, V1400 se usa como
2 la localización de un puntero y no es realmente parte de la fuente de datos de la tabla. La
dirección del destino (V1500) es especificada en la instrucción TFB. El puntero de la tabla
(V1400 en este caso) será decrementado en "1" después de cada ejecución de la instrucción
3 RFB.

4 DirectSOFT
DirectSOFT32

X1 LD

5 K6

Carga el valor constante 6


hexadecimal a losa 16 bits
6 más bajos del acumulador.

LDA

7 0 1400

Convierte el octal 1400 al


Programador D2-HPP hexadecimal 300 y carga

8 $
STR
B
1
ENT
este valor al acumulador.
Esta es la localización del
puntero de la tabla.

RFB
9 SHFT L
ANDST
D
3
PREV G
6
ENT
V1500
L D A B E A A Copia el valor especificado
SHFT ENT desde la tabla al destino
ANDST 3 0 1 4 0 0
10 SHFT R F B B F A A ENT
especificado (V1500)

ORN 5 1 1 5 0 0

11 Es importante entender cómo se numeran las 0


Tabla
5 0 0 1
Puntero de la tabla
0 0 0 0 V1400
V1401
direcciones de la tabla. Si usted examina la tabla del
12 ejemplo, usted verá que la primera localización de
V1402
V1403
9
3
9
0
9
7
9
4
2
3
Des tino
X X X X V1500
V1404 8 9 8 9 4
datos, V1401, se usará cuando el puntero es igual a
13 uno. La segunda localización de datos, V1402, se
V1405
V1406
1
2
0
0
1
4
0
6
5
6
usará cuando el puntero es igual a dos, etc. V1407 X X X X

14 También, nuestro ejemplo usa un contacto normal


de entrada (X1) para controlar la ejecución. Ya que
S
S
(Método opcional one shot)
X1 C0
el barrido de la CPU es extremadamente rápido y el
A puntero decrementa el valor automáticamente, la
C0
PD

tabla recorre las direcciones en un ciclo muy rápido. LD

B Si esto es un problema para su aplicación, usted K6


Carga la constante 6 en los
tiene la opción de usar una instrucción one shot 16 bits más bajos del acumulador
(PD) para quitar un valor cada vez que el contacto
C de entrada hace la transición de OFF para ON.
LDA
O 1400

D C
Convierte el octal 1400 a
hexadecimal 300 y carga
el valor al acumulador. Esta
es la localización del puntero
de la tabla

5–154 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

El esquema siguiente muestra los resultados de la ejecución barrido por barrido para nuestro
programa del ejemplo. Advierta cómo el puntero automáticamente decrece de 6 a 0. También,
note cómo SP56 es sólo ON hasta el fin del barrido. 1
Example of Execution 2
Scan N Before RFB Execution After RFB Execution

V1401 0
Table
5 0 0 1
Table Pointer
0 0 0 6 V1400 V1401 0
Table
5 0 0 1
Table Pointer (Automatically Decremented)
0 0 0 5 V1400
3
V1402 9 9 9 9 2 V1402 9 9 9 9 2
V1403
V1404
3
8
0
9
7
8
4
9
3
4
Destination
X X X X V1500
V1403
V1404
3
8
0
9
7
8
4
9
3
4
Destination
2 0 4 6 V1500
4
V1405 1 0 1 0 5 V1405 1 0 1 0 5
V1406
V1407
2
X
0
X X
4 6
X
6
SP56
SP56 = OFF
V1406
V1407
2
X
0
X
4
X
6
X
6
SP56
SP56 = OFF 5
S S

Scan N+1
S S
6
Before RFB Execution After RFB Execution

V1401 0
Table
5 0 0 1
Table Pointer
0 0 0 5 V1400 V1401 0
Table
5 0 0 1
Table Pointer (Automatically Decremented)
0 0 0 4 V1400 7
V1402 9 9 9 9 2 V1402 9 9 9 9 2
Destination Destination
V1403
V1404
3
8
0
9
7
8
4
9
3
4
2 0 4 6 V1500
V1403
V1404
3
8
0
9
7
8
4
9
3
4
1 0 1 0 V1500 8
V1405 1 0 1 0 5 V1405 1 0 1 0 5
SP56 SP56
V1406
V1407
2
X
0
X X
4 6
X
6
SP56 = OFF
V1406
V1407
2
X
0
X
4
X
6
X
6
SP56 = OFF
9
S S
S S

S
S
10
S

Scan N+4 Before RFB Execution After RFB Execution


11
Table Table Pointer Table Table Pointer (Automatically Decremented)
V1401
V1402
0
9
5
9
0
9
0
9
1
2
0 0 0

Destination
2 V1400 V1401
V1402
0
9
5
9
0
9
0
9
1
2
0 0 0

Destination
1 V1400
12
V1403 3 0 7 4 3 V1403 3 0 7 4 3
V1404
V1405
8
1
9
0
8
1
9
0
4
5
3 0 7 4 V1500
V1404
V1405
8
1
9
0
8
1
9
0
4
5
9 9 9 9 V1500
13
V1406 2 0 4 6 6 SP56 V1406 2 0 4 6 6 SP56
V1407 X X X
S
X
SP56 = OFF
V1407 X X X
S
X
SP56 = OFF
14
S S

Scan N+5 Before RFB Execution

Table Table Pointer


After RFB Execution

Table Table Pointer


A
0 0 0 1 V1400 0 0 0 0 V1400
V1401
V1402
V1403
0
9
3
5
9
0
0
9
7
0
9
4
1
2
3
Destination
V1401
V1402
V1403
0
9
3
5
9
0
0
9
7
0
9
4
1
2
3
Destination
B
9 9 9 9 V1500 0 5 0 0 V1500
8 9 8 9 4 8 9 8 9 4
V1404
V1405
V1406
1
2
0
0
1
4
0
6
5
6 SP56
V1404
V1405
V1406
1
2
0
0
1
4
0
6
5
6 SP56
C
SP56 = OFF SP56 = ON
V1407 X X X X V1407 X X X X
S
S
S
S
until end of scan
or next instruction
that uses SP56
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–155


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Source a Table (STT)


La instrucción SST copia un valor de memoria V a una
1 DS5 Usado
tabla de memoria V e incrementa el puntero de la tabla en
HPP Usado
1. Cuándo el puntero de la tabla alcanza el fin de la tabla,
2 vuelve a 1. La primera dirección de memoria V en la tabla
contiene el puntero de la tabla que indica la próxima
STT
V aaa
dirección en la tabla que almacenará un valor. La
3 instrucción se ejecutará una vez por barrido si el renglón es
verdadero.
4 Los parámetros de la función se cargan al primer nivel del
Stack del acumulador y al acumulador con dos
5 instrucciones adicionales. Abajo están listados los pasos
necesarios de programar la instrucción STT.
6 Paso 1: Cargue la longitud de la tabla (la cantidad de direcciones de memoria V) al
primer nivel del Stack del acumulador. Este parámetro debe ser un valor
hexadecimal, 0 a FF.
7 Paso 2: Cargue la dirección inicial de la memoria V en la tabla al acumulador.
(Recuerde, la dirección inicial de la tabla se usa como el puntero de la tabla.)
8 Este parámetro debe ser un valor hexadecimal.
Paso 3: Coloque la instrucción STT especificando la dirección (Vaaa) de la memoria V
9 fuente. Aquí es de donde se moverá el valor.
Sugerencia: — Para parámetros que requieran valores en hexadecimal cuando se refieran a
10 direcciones de memoria, se puede usar la instrucción LDA para convertir una dirección octal al
equivalente hexadecimal y cargar el valor al acumulador.
11 Sugerencia:— La instrucción se ejecutará cada barrido si la lógica de entrada está ON. Si usted
no quiere que la instrucción se ejecute por más que un barrido, se debe usar instrucción one shot
(PD) en la lógica de entrada.
12 Sugerencia: — El valor contador de la tabla debe ser configurado para indicar el punto de
partida de la operación. También, debe ser configurado a un valor que esté dentro de la longitud
13 de la tabla. Por ejemplo, si la tabla es de 6 palabras, entonces el rango admisible de los valores
que podrían estar en el puntero debe estar entre 0 y 6. Si el valor está fuera de este rango, los
14 datos no se moverán. También, se debe usar una instrucción one shot (PD) de modo que el valor
sólo sea puesto en un barrido y no afecte la operación de la instrucción.
A Tipo de operando de datos
....................................A
Rango del DL06
aaa
B Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Indicadores Descripción
Vea el mapa de memoria

C SP56 On cuando el puntero de la tabla es igual a la longitud de la tabla.

NOTA: Las indicaciones de estado discretas SP son válidas solamente hasta que se ejecute otra
D instrucción que use los mismos relevadores especiales SP o en el fin del barrido. El puntero para
esta instrucción comienza en 0 y vuelve a 1 automáticamente cuando se alcanza la longitud de

5–156 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

En el ejemplo siguiente, cuándo X1 está ON, se carga el valor constantee (K6) al acumulador
usando la instrucción LD. Este valor especifica la longitud de la tabla y se coloca en la primera
localización del Stack después que se ejecuta la instrucción LDA. La dirección octal 1400 1
(V1400), que es la de la tabla de destino y el puntero de la tabla, se carga al acumulador. La
dirección de la fuente de datos (V1500) es especificada en la instrucción STT. El puntero de la
tabla será aumentado en "1" cada vez que se ejecuta la instrucción.
2
DirectSOFT
DirectS OF T 32

X1 LD Carga el valor constante


6 hexadecimal en los 16 bits
3
K6
más bajos del acumulador

4
LDA
0 1400
Convierte el octal 1400 a
hexadecimal 300 y carga
el valor al acumulador
5
6
Copia el valor especificado

$
Programador D2-HPP

B ENT
STT
V1500
desde la localización de origen
(V1500) a la tabla 7
STR 1

SHFT L
ANDST
D
3
PREV G
6
ENT
8
SHFT L D A B E A A ENT
ANDST 3 0 1 4 0 0

SHFT S
RST
SHFT
T
MLR
T
MLR
B
1
F
5
A
0
A
0
ENT
9
Es importante entender cómo se numeran las
direcciones de tabla. Si usted examina la tabla del V1401 X
Tabla
X X X 0 6
Puntero de la tabla
0 0 0 0 V1400
10
ejemplo, usted notará que la primera dirección de V1402 X X X X 1
almacenamiento de datos, V1401, se usará
cuando el puntero es igual a 0 y otra vez cuando
V1403 X X X X 2
Origen de los datos
0 5 0 0 V1500
11
V1404 X X X X 3
el puntero es igual a seis. ¿Por qué? Porque el
puntero es sólo igual a 0 antes de la primera
V1405
V1406
X
X
X
X
X
X
X
X
4
5
12
ejecución. De allí en adelante incrementa de 1 a X X X X
6 y entonces vuelve a 1.
V1407
S 13
También, nuestro ejemplo usa un contacto S

normal de entrada (X1) para controlar la


ejecución. Ya que el barrido de la CPU es
DirectSOFT
DirectSOFT32

X1
(Método opcional one shot)
C0
14
PD
extremadamente rápido y el puntero se
incrementa automáticamente, los datos de la C0 LD
A
fuente se cambiarían a todas las direcciones de K6
tabla muy rápidamente. Si esto es un problema Carga el valor constante 6
hexadecimal a los 16 bits
B
para su aplicación, usted tiene la opción de usar más bajos del acumulador
una instrucción one shot (PD) para mover un
valor cada vez que el contacto de entrada hace la
LDA
O 1400
C
transición de OFF para ON.
Convierte el octal 1400 a
hexadecimal y carga este
valor al acumulador. Esta
D
es la memoria inicial de la tabla.

Manual del PLC DL06, 2a. edición en español, 6/07 5–157


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

El esquema siguiente muestra barrido por barrido los resultados de la ejecución para el programa
ejemplo. Note cómo el puntero automáticamente hace un ciclo de 0 - 6, y luego comienza de
1 nuevo en 1 en vez de 0. También, note cómo es afectado SP56 por la ejecución. Aunque el
ejemplo no lo muestre, asumimos que hay otra parte del programa que cambia el valor en
2 V1500 (la fuente de datos) antes de la ejecución de la instrucción STT. Esto no es necesario pero
hace más fácil de ver cómo la fuente de datos se copia en la tabla.

3 Barrido N Antes de la ejecución STT Después de la ejecución STT


Puntero de la tabla
Tabla Puntero de la tabla Tabl (cambiado automáticamente)

4 V1401
V1402
X
X
X
X
X
X
X
X
0 6
1
0 0 0

Origen
0 V1400 V1401
V1402
0
X
5
X
0
X
0
X
0 6
1
0 0 0

Origen
1 V1400

V1403 X X X X 2 V1403 X X X X 2
0 5 0 0 V1500 0 5 0 0 V1500

5 V1404
V1405
V1406
X
X
X
X
X
X
X
X
X
X
X
X
3
4
5
SP56
V1404
V1405
V1406
X
X
X
X
X
X
X
X
X
X
X
X
3
4
5
SP56
SP56 = OFF SP56 = OFF

6 V1407 X X X

S
S
X V1407 X X

S
S
X X

7 Barrido N+1 Antes de la ejecución STT


Tabla Puntero de la tabla
Después de la ejecución STT

Tabla
Puntero de la tabla
(cambiado automáticamente)
V1401 0 5 0 0 0 6 0 0 0 1 V1400 V1401 0 5 0 0 0 6 0 0 0 2 V1400

8 V1402
V1403
X
X
X
X
X
X
X
X
1
2
Origen
V1402
V1403
9
X
9
X
9
X
9
X
1
2
Origen

X X X X 9 9 9 9 V1500 9 9 9 9 V1500
V1404 3 V1404 X X X X 3

9 V1405
V1406
X
X
X
X
X
X
X
X
4
5 SP56
SP56 = OFF
V1405
V1406
X
X
X
X
X
X
X
X
4
5 SP56
SP56 = OFF
V1407 X X X X V1407 X X X X

10 S
S
S
S

11 S
S

Barrido N+5 Antes de la ejecución STT Después de la ejecución STT

12 V1401 0
Tabla
5 0 0 0 6
Puntero de la tabla
0 0 0 5 V1400 V1401 0
Tabla
5 0 0 0 6
Puntero de la tabla
(cambiado automáticamente)
0 0 0 6 V1400
V1402 9 9 9 9 1 V1402 9 9 9 9 1

13 V1403
V1404
3
8
0
9
7
8
4
9
2
3
2
Origen
0 4 6 V1500
V1403
V1404
3
8
0
9
7
8
4
9
2
3
2
Origen
0 4 6 V1500

V1405 1 0 1 0 4 V1405 1 0 1 0 4

14 V1406
V1407
X
X
X X
X X
X
X
5 SP56
SP56 = OFF
V1406
V1407
2
X
0
X
4
X
6
X
5 SP56
SP56 = ON
hasta el fin del barrido
S S o hasta la próxima

A S S instructión que use SP56

Barrido N+6 Antes de la ejecución STT Después de la ejecución STT


Puntero de la tabla

B V1401 0
Tabla
5 0 0 0 6
Puntero de la tabla
0 0 0 6 V1400 V1401 1
Tabla
2 3 4 0 6
(cambia a "1". no a "0")
0 0 0 1 V1400

V1402 9 9 9 9 1 V1402 9 9 9 9 1

C V1403
V1404
3
8
0
9
7
8
4
9
2
3
1
Origen
2 3 4 V1500
V1403
V1404
3
8
0
9
7
8
4
9
2
3
1
Origen
2 3 4 V1500

V1405 1 0 1 0 4 V1405 1 0 1 0 4

D V1406
V1407
2
X
0
X X
4 6
X
5 SP56
SP56 = OFF
V1406
V1407
2
X
0
X
4
X
6
X
5 SP56
SP56 = OF F

S S
S S

5–158 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Remove from Table (RFT)


La instrucción RFT remueve un valor de una tabla y lo almacena en
DS5 Usado
HPP Usado
una dirección de memoria V. Cuándo un valor se remueve de la tabla 1
todos los otros valores se mueven para arriba 1 nivel. La primera RFT
dirección de memoria V en la tabla contiene el contador de la
longitud de la tabla. El valor corriente del contador de la tabla
V aaa 2
disminuye en 1 cada vez que se ejecuta la instrucción. Si el contador
de la longitud es cero o mayor que la longitud máxima de la tabla 3
(especificada en el primer nivel del Stack del acumulador) la
instrucción no se ejecutará y SP56 se hará ON. 4
La instrucción se ejecutará una vez por barrido si que el renglón fuera verdadero. Los parámetros de
la instrucción son cargados al primer nivel del Stack del acumulador y al acumulador con dos
instrucciones adicionales. Abajo están listados los pasos necesarios de programar la instrucción RFT.
5
Paso 1: Cargue la longitud de la tabla (el número de direcciones de memoria V) al primer nivel
del Stack del acumulador. Este parámetro debe ser un valor hexadecimal, 0 a FF.
6
Paso 2: Cargue la localización de la memoria V de inicio a la tabla en el acumulador. (Recuerde,
la localización de inicio de la tabla se usa como el contador de longitud de tabla). Este
7
parámetro debe ser un valor hexadecimal.
Paso 3: Coloque la instrucción RFT que especifica la dirección de la memoria de destino (Vaaa).
8
Esto es, donde el valor en la tabla será movido.
Sugerencia: — Para parámetros que requieran valores en hexadecimal cuando se refieran a direcciones de 9
memoria, se puede usar la instrucción LDA para convertir una dirección octal al equivalente hexadecimal
y cargar el valor al acumulador. 10
Sugerencia:— La instrucción se ejecutará cada barrido si el renglón está ON. Si usted no quiere que la
instrucción ejecute más que un barrido, se debe usar la instrucción PD (one shot) en la lógica del renglón. 11
Sugerencia: — El valor del contador de la tabla se debe definir para indicar el punto de partida de la
operación. También, debe ser colocado a un valor que esté dentro de la longitud de la tabla. Por ejemplo,
si la tabla es de 6 palabras de longitud, entonces el rango admisible de los valores que podrían estar en el
12
contador de la tabla debe estar entre 1 y 6. Si el valor está fuera de este rango o es 0, los datos no se moverán
de la tabla. También, se debe usar una instrucción one shot (PD) de modo que el valor sólo sea colocado 13
en un barrido y no afecte la operación de la instrucción.
14
Tipo de operando de datos Rango del DL06
....................................A aaa A
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria

Indicadores Descripción B
SP56 ON cuando el valor corriente del contador de la tabla es igual a 0

NOTA: Las indicaciones de estado discretas SP son válidas solamente hasta que se ejecute otra instrucción
C
que use los mismos relevadores especiales SP o en el fin del barrido. El puntero para esta instrucción
puede comenzar en cualquier lugar en la tabla. No es colocado automáticamente. Usted tiene que D
cargar un valor en el puntero en algún lugar en su programa.

Manual del PLC DL06, 2a. edición en español, 6/07 5–159


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

En el ejemplo siguiente, cuándo X1 está ON, se carga el valor constantee (K6) al acumulador
usando la instrucción LD. Este valor especifica la longitud de la tabla y se coloca en la primera
1 localización del Stack después que se ejecuta la instrucción LDA. La dirección octal 1400
(V1400) es la dirección inicial de la tabla fuente y se carga en el acumulador. La localización
2 (V1500 del destino) es especificado en la instrucción RFT. El contador de la tabla será
disminuido en "1" después que se ejecuta la instrucción.
X1 Carga el valor constante
3 LD
K6
6 hexadecimal en los 16 bits
más bajos del acumulador

4 LDA
Convierte el octal 1400 al
valor 300 hexadecimal y
O 1400 carga el valor al acumulador

5 Copia el valor especificado


RFT
desde la tabla a la
6 V1500 localización especificada (V1500)

Programador D2-HPP

7 $
STR
B
1
ENT

SHFT L D PREV G ENT


8 SHFT
ANDST

L D
3

A B
6

E A A ENT
ANDST 3 0 1 4 0 0

9 SHFT R
ORN
F
5
T
MLR
B
1
F
5
A
0
A
0
ENT

Ya que el contador de la tabla especifica el rango de


10 los datos que se sacarán de la tabla, es importante V1401 0 5 0 0 1
Tabla Contador de tabla
0 0 0 6 V1400
entender cómo se numeran las direcciones de la V1402 9 9 9 9 2
11 tabla. Si usted examina la tabla del ejemplo, usted V1403 3 0 7 4 3
notará que las direcciones de datos se numeran desde V1404 8 9 8 9 4
Des tino
X X X X V1500

encima de la tabla. Por ejemplo, si el contador de la V1405 1 0 1 0 5


12 tabla comenzó en 6, entonces todas las seis V1406 2 0 4 6 6
direcciones se afectarían durante la ejecución de la V1407 X X X X
13 instrucción.
DirectSOFT
S
DirectSOFT32 (Método opcional "one-shot")
S
También, nuestro ejemplo usa un contacto X1 C0
14 normal de entrada (X1) para controlar la
ejecución. Ya que el barrido es
PD

C0
extremadamente rápido, y el puntero se LD
A decrementa automáticamente, los datos se K6
sacarían de la tabla muy rápidamente. Si esto Carga el valor constante
B es un problema para su aplicación, usted 6 hexadecimal en los 16 bits
más bajos del acumulador
tiene una opción de usar una instrucción one
shot (PD) para sacar un valor cada vez en la
C transición del contacto de entrada de OFF
LDA
O 1400
para ON.
D Convierte el octal 1400 a 300
hexadecimal y carga el valor al
acumulador. Esta es la
localización del puntero de la tabla

5–160 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

El esquema siguiente muestra barrido por barrido los resultados de la ejecución para el programa
del ejemplo. En el ejemplo mostramos el valor corriente del contador de la tabla en 4
inicialmente. (Recuerde, usted puede poner el valor corriente del contador de la tabla a 1
cualquier valor que este dentro del rango de la tabla). El contador de la tabla automáticamente
decrece de 4 hasta 0 cuando se ejecuta la instrucción. Note cómo las últimas dos posiciones de
la tabla, 5 y 6, no son movidas para arriba por la tabla. También, note cómo SP56, que se hace
2
ON cuando el contador de la tabla es cero, es ON sólo hasta que el fin del barrido.
3
Barrido N
Antes de la ejecución RFT

Tabla Contador de la tabla


Después de la ejecución RFT

Tabla
Contador de la tabla
(decrementado automáticamente)
4
El contador de V1401 0 5 0 0 1 0 0 0 4 V1400 V1401 9 9 9 9 1 0 0 0 0 3 V1400
tabla indica que
serán usadas
estas 4 direcciones
V1402
V1403
9
3
9
0
9
7
9
4
2
3
Destino
X X X X V1500
V1402
V1403
4
8
0
9
7
8
9
9
2
3
5
0
0 Destino
0 5 0 0 V1500
5
V1404 8 9 8 9 4 Aquí comienza V1404 8 9 8 9 4

V1405
V1406
1
2
0
0
1
4
0
6
5
6
SP56
SP56 = OFF
V1405
V1406
1
2
0
0
1
4
0
6
5
6
SP56
SP56 = OFF
6
V1407 X X X X V1407 X X X X

7
Barrido N+1 Antes de la ejecución RFT Después de la ejecución RFT

V1401 9
Tabla
9 9 9 1
Contador de la tabla
0 0 0 3 V1400 V1401 4
Tabla
0 7 9 1 9
9
Contador de la tabla
(decrementado automáticamente)
0 0 0 2 V1400
8
V1402 4 0 7 9 2 V1402 8 9 8 9 2 9
V1403
V1404
8
8
9
9
8
8
9
9
3
4
Destino
0 5 0 0 V1500
Aquí comienza V1403
V1404
8
8
9
9
8
8
9
9
3
4
9 Destino
9 9 9 9 V1500 9
V1405 1 0 1 0 5 V1405 1 0 1 0 5
V1406
V1407
2
X
0
X
4
X
6
X
6 SP56
SP56 = OFF
V1406
V1407
2
X
0
X
4
X
6
X
6 SP56
SP56 = OFF
10
Barrido N+2 Antes de la ejecución RFT Después de la ejecución RFT
11
Contador de la tabla
Contador de la tabla

V1401
V1402
4
8
Tabla
0
9
7
8
9
9
1
2
0 0 0 2 V1400 V1401
Aquí comienza V1402
8
8
Tabla
9
9
8
8
9
9
1
2
4
0
7
(decrementado automáticamente)
0 0 0 1 V1400 12
Destino 9
8 9 8 9 3 8 9 8 9 3 Destino
V1403 V1403
V1404
V1405
8
1
9
0
8
1
9
0
4
5
9 9 9 9 V1500
V1404
V1405
8
1
9
0
8
1
9
0
4
5
4 0 7 9 V1500
13
V1406 2 0 4 6 6 SP56 V1406 2 0 4 6 6 SP56
V1407 X X X X SP56 = OFF
V1407 X X X X SP56 = OFF
14
Barrido N+3 Antes de la ejecución RFT
Contador de la tabla
Después de la ejecución RFT
Contador de la tabla
(decrementado automáticamente)
A
Tabla Tabla
V1401
V1402
V1403
8
8
8
9 8 9
9
9
8
8
9
9
1
2
3
0 0

Destino
0 1 V1400 Aquí comienza V1401
V1402
V1403
8 9 8
8
8
9
9
8
8
9
9
9
1
2
3
8
9
8
9
0 0

Destino
0 0 V1400
B
4 0 7 9 V1500 8 9 8 9 V1500
V1404 8 9 8 9 4 V1404 8 9 8 9 4
V1405
V1406
1
2
0
0
1
4
0
6
5
6 SP56
V1405
V1406
1
2
0
0
1
4
0
6
5
6 SP56
C
X X X X SP56 = OFF X X X X SP56 = ON
V1407 V1407
hasta el fin del
barrido o la
próxima instrucción
que usa SP56
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–161


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Add a Top (ATT)


La instrucción ATT lleva un valor a la memoria inicial de
1 DS5 Usado
una tabla de memoria desde una dirección de memoria V.
AT T
V aaa
HPP Usado Cuándo el valor es agregado a la tabla todos los otros
2 valores se corren hacia abajo 1 localización.
La instrucción se ejecutará una vez por barrido si el renglón fuera ON o verdadero. Los
3 parámetros de la función son cargados al primer nivel del Stack del acumulador y al acumulador
con dos instrucciones adicionales. Abajo están listados los pasos necesarios para programar la
instrucción ATT.
4 Paso 1: Cargue la longitud de la tabla (cantidad de direcciones de memoria V) al
primer nivel del Stack. Este parámetro debe ser un valor hexadecimal, 0 a FF.
5 Paso 2: Cargue la dirección de memoria V inicial de la tabla al acumulador. (Recuerde,
para esta instrucción, la dirección inicial de la tabla se usa como el contador de
6 longitud de la tabla). Este parámetro debe ser un valor hexadecimal.
Paso 3: Coloque la instrucción ATT que especifica la dirección de la memoria origen
7 (Vaaa). Esto es, desde donde se moverá el valor.
Sugerencia:- La instrucción se ejecutará en cada barrido si el renglón fuera verdadero. Si usted
8 no quiere que la instrucción se ejecute en más que un barrido, se debe usar una instrucción one
shot (PD) en la lógica de activación.
9 Sugerencia: - Para parámetros que requieran valores en hexadecimal cuando se refieran a
direcciones de memoria, se puede usar la instrucción LDA para convertir una dirección octal
al equivalente hexadecimal y cargar el valor al acumulador.
10 Sugerencia: - Se debe definir el valor del contador de la tabla para indicar el punto de partida de
la operación. También, debe ser puesto a un valor que esté dentro de la longitud de la tabla. Por
11 ejemplo, si la tabla es de longitud de 6 palabras, entonces el rango admisible de los valores que
podrían estar en el contador de la tabla debe estar entre 1 y 6. Si el valor está fuera de este rango
12 o es 0, los datos no se irán a la tabla. También, se debe usar una instrucción one shot (PD) de
modo que el valor sólo sea colocado en un barrido y no afecte la operación de la instrucción.

13 Tipo de operando de datos Rango del DL06


....................................A aaa
14 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria

Indicadores Descripción
A SP56 ON cuando el valor corriente del contador de la tabla es igual a 0

B NOTA: Las indicaciones de estado discretas SP son válidas solamente hasta que se ejecute otra instrucción
que use los mismos relevadores especiales SP o en el fin del barrido. El puntero para esta instrucción
C puede comenzar en cualquier lugar en la tabla. No es colocado automáticamente. Usted tiene que
cargar un valor en el puntero en algún lugar en su programa.

5–162 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

En el ejemplo siguiente, cuándo X1 está ON, se carga el valor constantee (K6) al acumulador
usando la instrucción LD. Este valor especifica la longitud de la tabla y se coloca en la primera
localización del Stack después que se ejecuta la instrucción LDA. La dirección octal 1400 1
(V1400), que es la dirección inicial de la tabla de destino y contador de tabla, se carga en el
acumulador. La dirección de la tabla origen (V1500) es especificada en la instrucción ATT. El
contador de la tabla será aumentado en "1" después que se ejecuta la instrucción.
2
DirectSOFT
Direct SOFT32

X1 LD 3
K6

Carga el valor constante 6 hexadecimal


en los 16 bits más bajos del acumulador 4
LDA
O 1400

Convierte el octal 1400 al


5
hexadecimal 300 y carga
este valor al acumulador

ATT
6
V1500

Programador D2-HPP
$ B ENT
Copia el valor especificado
desde V1500 a la tabla 7
STR 1

SHFT

SHFT
L
ANDST

L
D

D
3

A
PREV G

B
6

E
ENT

A A ENT
8
ANDST 3 0 1 4 0 0

SHFT A
0
T
MLR
T
MLR
B
1
F
5
A
0
A
0
ENT
9
Tabla
En la instrucción ATT, el contador de la tabla Contador de tabla

determina el número de las adiciones de valores que V1401 0 5 0 0 1 0 0 0 2 V1400 10


V1402 9 9 9 9 2
se pueden hacer antes la instrucción pare de Origen del dato
ejecutarse. Es útil entender cómo el sistema usa este
contador para controlar la ejecución. Por ejemplo, si
V1403
V1404
3
8
0
9
7
8
4
9
3
4
X X X X V1500 11
V1405 1 0 1 0 5
el contador de la tabla está colocado en 2 y la
longitud de la tabla es 6 palabras, entonces allí V1406 2 0 4 6 6 12
X X X X
pueden haber solamente 4 adiciones de datos antes V1407

de que la ejecución se pare. Esto puede ser calculado ( Ejemplo: 6 - 2 = 4 ) 13


fácilmente por:
Longitud de tabla - contador de tabla = número de ejecuciones DirectSOFT (Método opcional one-shot)
X1 C0
14
También, el ejemplo usa un contacto normal de PD
entrada (X1) para controlar la ejecución. Ya que el
barrido es extremadamente rápido y el contador de
C0 LD
A
K6
la tabla se incrementa automáticamente, los datos
pasan a la tabla muy rápidamente.
Carga el valor constante 6
hexadecimal en los 16 bits
B
más bajos del acumulador
Si esto es un problema para su aplicación, tiene la
opción de usar una instrucción one shot (PD) para LDA
O 1400
C
agregar solamente un valor cada vez que el contacto
hace la transición de OFF para ON. Convierte el octal 1400 a
hexadecimal 300 y carga este
valor al acumulador. Esta es la
D
dirección inicial de la tabla

Manual del PLC DL06, 2a. edición en español, 6/07 5–163


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

El esquema siguiente muestra barrido por barrido los resultados de la ejecución para el programa
del ejemplo. El contador de la tabla es configurado como 2 inicialmente, e incrementará
1 automáticamente de 2 hasta 6 cuando se ejecuta la instrucción. Note cómo SP56 se hace ON
cuando el contador de la tabla es 6, que es igual a la longitud de la tabla. Además, aunque el
2 ejemplo no lo muestre, asumimos que hay otra parte del programa que cambia el valor en
V1500 (el origen de datos) antes de la ejecución de la instrucción de ATT.

3 Ejemplo de ejecución
Barrido N Antes de la ejecución ATT Después de la ejecución ATT
Contador de tabla

4 V1401 0
Tabla
5 0 0 1
Contador de tabla
0 0 0 2 V1400 V1401 1
Tabla
2 3 4 1 1
2
(incrementado automáticamente)

0 0 0 3 V1400

V1402 9 9 9 9 2 V1402 0 5 0 0 2 3
4
5 V1403
V1404
3
8
0
9
7
8
4
9
3
4
Origen de datos

1 2 3 4 V1500
V1403
V1404
9
3
9
0
9
7
9
4
3
4
1
Origen de datos

2 3 4 V1500

V1405 1 0 1 0 5 V1405 8 9 8 9 5

6 V1406
V1407
2
X
0
X X
4 6
X
6
SP56
SP56 = OFF
V1406
V1407
1
X
0
X
1
X
0
X
6
SP56
SP56 = OFF

Descartado

7 2046

Después de la ejecución ATT


Barrido N+1 Antes de la ejecución ATT
Contador de tabla

8 V1401 1
Tabla
2 3 4 1
Contador de tabla
0 0 0 3 V1400 V1401 5
Table
6 7 8 1 5
6
(incrementado automáticamente)
0 0 0 4 V1400

V1402 0 5 0 0 2 V1402 1 2 3 4 2 7
Origen de datos 8 Origen de datos
9 V1403
V1404
9
3
9
0
9
7
9
4
3
4
5 6 7 8 V1500
V1403
V1404
0
9
5
9
0
9
0
9
3
4
5 6 7 8 V1500

V1405 8 9 8 9 5 V1405 3 0 7 4 5

10 V1406
V1407
1
X
0
X
1
X
0
X
6 SP56
SP56 = OFF
V1406
V1407
8
X
9
X
8
X
9
X
6
SP56
SP56 = OFF

Descartado
1010
11
Barrido N+2 Antes de la ejecución ATT Después de la ejecución ATT Contador de tabla

12 V1401 5
Tabla
6 7 8 1
Contador de tabla
0 0 0 4 V1400 V1401 4
Tabla
3 4 3 1 4
3
(incrementado automáticamente)
0 0 0 5 V1400

V1402 1 2 3 4 2 V1402 5 6 7 8 2 4
Origen de datos 3 Origen de datos

13 V1403
V1404
0
9
5
9
0
9
0
9
3
4
4 3 3 4 V1500
V1403
V1404
1
0
2
5
3
0
4
0
3
4
4 3 4 3 V1500

V1405 3 0 7 4 5 V1405 9 9 9 9 5

14 V1406
V1407
8
X
9
X
8
X
9
X
6 SP56
SP56 = OFF
V1406
V1407
3
X
0
X
7
X
4
X
6 SP56
SP56 = OFF

Descartado
8989

A
Barrido N+3 Antes de la ejecución ATT Después de la ejecución ATT Contador de tabla

B V1401
V1402
4
5
Tabla
3
6
4
7
3
8
1
2
Contador de tabla
0 0 0 5 V1400 V1401
V1402
7
4
Tabla
7
3
7
4
7
3
1
2
7
7
7
(incrementado automáticamente)
0 0 0 6 V1400

Origen de datos 7
1 2 3 4 5 6 7 8 3 Origen de datos

C V1403
V1404
V1405
0
9
5
9
0
9
0
9
3
4
5
7 7 7 7 V1500
V1403
V1404
V1405
1
0
2
5
3
0
4
0
4
5
7 7 7 7 V1500

3 0 7 4 SP56 9 9 9 9 6 SP56

D V1406
V1407 X X X X
6
SP56 = OFF
V1406
V1407 X X X X

Descartado
SP56 = ON
hasta el fin del barrido
hasta una próxima
3074 instrucción que use SP

5–164 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Table Shift Left (TSHFL)


La instrucción TSHFL mueve todos los bits en una tabla de T S HF L
DS5 Usado
HPP Usado
memoria a la izquierda el número especificado de posiciones de A aaa 1
bit, esto es, desde el bit menos al más significativo.
La instrucciónTable Shift Right (TSHFR) 2
La instrucción TSHFR mueve todos los bits en una tabla de TSHFR
DS5 Usado
HPP Usado
memoria V a la derecha, un número especificado de posiciones de A aaa 3
bit, esto es, desde el bit más al menos significativo.
La descripción siguiente se aplica a ambas instrucciones. Una tabla es solamente un rango de 4
direcciones de memoria V. Las instrucciones TSHFL y TSHFR mueven los bits serialmente a lo
largo de la tabla entera. Los bits se mueven saliendo del fin de una palabra y hasta el fin opuesto
de una palabra adyacente. Al final de la tabla los bits son sacados o se desplazan ceros a la tabla.
5
Las tablas del ejemplo debajo son arbitrariamente de cuatro palabras de largo.
Table Shift Left
Table Shift Right
6
Desplace ceros Descarte bits
V - xxxx 7
V - xxxx + 1 8
V - xxxx + 2 9
Descarte bits Desplace ceros 10
Paso 1: Cargue la longitud de la tabla (cantidad de direcciones de memoria V) en el
primer nivel del stack del acumulador. Este parámetro debe ser un valor 11
hexadecimal, 0 hasta FF
Paso 2: Cargue la localización de la memoria V de inicio de la tabla al acumulador. 12
Este parámetro debe ser un valor hexadecimal. Usted puede usar la instrucción
LDA para convertir una dirección de octal a hexadecimal.
Paso 3: Coloque la instrucción que desee. Esta especifica el número de posiciones de
13
bits que desea desplazar la tabla entera. El número de posiciones de bits debe
estar en octal. 14
Sugerencia: — Recuerde que cada dirección de memoria V contiene 16 bits, de modo que los
bits de la primera palabra de la tabla se numeran de 0 a 17 octal. Si usted quiere desplazar la A
tabla entera 20 bits, eso es 24 octal. SP 53 será ON si el número de bits a ser desplazado es
más grande que los bits totales contenidos dentro de la tabla. B
El relevador especial SP67 será colocado ON si el último bit desplazado (justamente antes de
eliminarlo) es un "1. C
Tipo de operando de datos Rango del DL06
....................................A aaa D
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria

Manual del PLC DL06, 2a. edición en español, 6/07 5–165


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

Indicadores Descripción
SP53 ON cuando el número de bits a ser desplazados es más grande que el número de bits en la tabla
1 SP67 ON cuando el último bit que se desplazó es un "1" (antes de que sea eliminado)

2 NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. o hasta el fin del barrido.

3 La tabla del ejemplo contiene a la derecha los datos V 3000 V 3000


BCD como mostrado (para propósitos de
1 2 3 4 6 7 8 1
4 demostración). Suponga que queremos hacer una
movida de bits a la derecha de 3 dígitos BCD (12
5 6 7 8 1 2 2 5
bits). La conversión al octal de 12 bits es 14 octal.
5 Usando instrucción TSHFR y especificando un 1 1 2 2 3 4 4 1
desplazamiento a la derecha con el octal 14, tenemos
6 la tabla resultante mostrada a la derecha. Note que se
ha sacado la sucesión 2-3-4 de la secuencia y se ha
3 3 4 4 5 6 6 3

desplazado la sucesión 0-0-0 en la parte inferior.


7 El ejemplo siguiente ladder asume que los datos en
5 5 6 6 0 0 0 5

V3000 a V3004 ya existen, como mostrado arriba. Usaremos la entrada X0 para provocar la
8 operación. Primero, cargaremos la longitud de tabla (5 palabras) al Stack del acumulador. Luego
cargamos la dirección de inicio al acumulador. Ya que V3000 es un número octal lo tenemos
9 que convertir a hexadecimal usando la instrucción LDA. Finalmente, usamos la instrucción
TSHFR y especificamos el número de bits para ser desplazados (12 decimal), que es 14 octal.
DirectSOFT
10 X0 LD Carga el valor constante 5 hexadecimal
a los 16 bits más bajos del acumulador
11 K5

12 LDA
Convierte el octal 3000 to hexadecimal
y carga el valor al acumulador. Este es
0 3000 el inicio de la tabla
13
TSHFR Hace una operación SHIFT RIGHT
14 0 14
con 12 bits, el cual es 14 octal.

A Programador D2-HPP
$ A
B STR
L D
0
ENT

F
SHFT PREV ENT
ANDST 3 5
C SHFT L
ANDST
D
3
A
0
D
3
A
0
A
0
A
0
ENT

D SHFT T
MLR
SHFT
S
RST
H
7
F
5
R
ORN
NEXT B
1
E
4
ENT

5–166 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción AND Move (ANDMOV)


La instrucción ANDMOV copia los datos de una tabla a la dirección
DS5
HPP
Usado
Usado
especificada de memoria, haciendo la operación AND de cada
ANDMO V
A aaa 1
palabra con los datos de acumulador cuando se procesa.
La instrucción OR Move (ORMOV) 2
DS5 Usado La instrucción OR MOVE copia los datos de una tabla a la dirección ORMOV
HPP Usado especificada de memoria, haciendo la operación OR de cada palabra
con el valor contenido en el acumulador cuando se procesa.
A aaa 3
La instrucción Exclusive OR Move (XORMOV) 4
DS5 Usado
La instrucción Exclusive OR Move copia los datos de una tabla a la XO R MO V
dirección especificada de memoria, haciendo una operación OR
HPP Usado
exclusiva de cada palabra con el valor del acumulador cuando se procesa.
A aaa 5
La descripción siguiente se aplica a las instrucciones ANDMOV, ORMOV y XORMOV.
Estas instrucciones copian los datos de una tabla a otra tabla en la localización especificada, ejecutan
6
una operación lógica en cada palabra con el contenido del acumulador y crean entonces la otra tabla.
Paso 1: Cargue la longitud de la tabla (el número de direcciones de memoria V) al primer nivel del
7
Stack del acumulador. Este parámetro debe ser un valor hexadecimal, 0 hasta FF.
Paso 2: Cargue la dirección inicial de la memoria V de la tabla en el acumulador. Este parámetro 8
debe ser un valor hexadecimal. Usted puede usar la instrucción LDA para convertir una dirección
octal a uno hexadecimal.
Paso 3: Cargue el valor BCD/hexadecimal que expresa el conjunto de bits a ser el operando AND
9
en el acumulador que será combinado lógicamente con el contenido de la tabla durante la
operación. 10
Paso 4: Coloque una de las instrucciones ANDMOV, ORMOV o XORMOV. La que sea escogida
especifica la dirección inicial de la copia de la tabla original. Esta tabla nueva será automáticamente de
la misma longitud que la tabla original.
11
Tipo de operando de datos Rango del DL06
....................................A aaa
12
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
13
La tabla del ejemplo contiene a la derecha los datos BCD como mostrado (para propósitos de
demostración). Suponga que queremos
mover una tabla de dos palabras localizada
V 3000 V 3100 14
3 3 3 3 ANDMOV 2 2 2 2
en V3000 y hacer la operación AND con
K6666. La copia de la tabla en V3100
K 6666 A
muestra el resultado de la operación AND F F F F 6 6 6 6
con cada palabra. B
El programa en esta página realiza el
ejemplo de la operación de ANDMOV anterior. Asume que los datos en la tabla en V3000 -
V3001 ya existen. Primero cargamos la longitud de la tabla (dos palabras) en el acumulador.
C
Luego cargamos la dirección de inicio de la tabla origen, usando la instrucción LDA. Luego
cargamos los datos en el acumulador para ser operados AND con la tabla. En la instrucción D
ANDMOV se especifica el destino de la tabla, V3100.

Manual del PLC DL06, 2a. edición en español, 6/07 5–167


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

DirectSOFT 5
X0
LD
1 Programador D2-HPP
K2

Load the constant value 2


$ A ENT
STR 0 (Hex.) into the lower 16

2 SHFT L
ANDST
D
3
PREV C
2
ENT
bits of the accumulator.

LDA
SHFT L D A D A A A ENT 0 3000

3 SHFT
ANDST
L
ANDST
D
3

3
0

PREV G
3

6
G
0

6
G
0

6
G
0

6
ENT
Convert otal 3000 to HEX
and load the value into the
accumulator. This is the
V M O V D B A A

4 AND
SHFT
ORST INST# AND 3 1 0 0
ENT table beginning.

LD
K6666
El ejemplo de la derecha muestra una tabla de dos palabras
5 en V3000 y lógica OR con K8888. La copia de la tabla en
Load the constant value
6666 (Hex.) into the lower
16 bits of the accumulator.
V3100 muestra el resultado de la operación OR con cada
6 palabra.
ANDMOV
0 3100

El programa de abajo realiza el ejemplo de ORMOV arriba. Copy the table to V3100,

7 Asume que los datos en la tabla en V3000 - V3001 ya


existen. Primero cargamos la longitud de la tabla (dos V 3000
ANDing its contents with the
accumulator as it is written.
V 3100
OR MOV
palabras) en el acumulador. Luego cargamos la dirección de 1 1 1 1 9 9 9 9
8 inicio de la tabla fuente, usando la instrucción LDA. Luego
K 8888
1 1 1 1 9 9 9 9
cargamos los datos en el acumulador para ser operados OR
9 con la tabla. En la instrucción ORMOV se especifica el DirectSOFT
DirectSOFT 32

destino de la tabla, V3100. X0 LD

10 Programador D2-HPP
$ A
K2

Carga el valor constante 2


ENT hexadecimal en los 16 bits
STR 0
más bajos del acumulador
11 SHFT L
ANDST
D
3
PREV C
2
ENT
LDA
L D A D A A A
SHFT
ANDST 3 0 3 0 0 0
ENT 0 3000

12 SHFT L
ANDST
D
3
PREV I
8
I
8
I
8
I
8
ENT
Convierte el octal 3000 a
hexadecimal y carga el valor
al acumulador. Este es el
Q SHFT M O V D B A A ENT comienzo de la tabla
13 OR ORST INST# AND 3

El ejemplo a la derecha muestra una tabla de dos palabras en


1 0 0
LD
K8888
V3000 y hace una operación XOR lógico con K3333. La
14 copia de la tabla en V3100 muestra el resultado de la Carga el valor constante 8888
hexadecimal en los 16 bits
operación XOR para cada palabra. más bajos del acumulador

A El ejemplo del programa ladder para el XORMOV es similar


al de arriba para el ORMOV. Use sin emabargo la
ORMOV
0 3100

instrucción XORMOV.
B En el programador usted debe usar la tecla SHFT y deletrear
Copia la tabla a V3100, hacien
un OR de su contenido con el
acumulador mientras se

"XORMOV" explícitamente..
C V 3000
1 1 1 1 X OR MOV
K 3333
V 3100
2 2 2 2

D 1 1 1 1 2 2 2 2

5–168 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Find Block (FINDB)


La instrucción FINFB busca una ocurrencia de un bloque
DS5 Usado
especificado de valores en una tabla de memoria V. Los F INDB 1
HPP N/A A aaa
parámetros de la instrucción son cargados al primer y segundo
nivel del Stack del acumulador y el acumulador por tres
instrucciones adicionales. Si el bloque se encuentra, su dirección inicial se almacenará en el
2
acumulador. Si el bloque no se encuentra, el relevador especial SP53 se hará ON.
Tipo de operando de datos Rango del DL06
3
....................................A
Memoria V. . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria
4
Puntero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria

Indicadores Descripción
5
SP56 ON cuando la instrucción FINDB fue ejecutada pero no encontró el bloque de datos
6
NOTA: Las indicaciones de estado discretas SP son válidas solamente hasta que se ejecute otra
instrucción que use los mismos relevadores especiales SP. 7
Los pasos necesarios para programar la instrucción FINDB están listados abajo.
Paso 1: Cargue el número de byte en el bloque a ser localizado. Este parámetro debe ser
8
un valor hexadecimal, 0 a FF, que es 255 decimal..
Paso 2: Cargue la longitud de una tabla (el número de palabras) a ser buscada. FINDB 9
buscará múltiples tablas que están adyacentes en la memoria V. Este parámetro
debe ser un valor hexadecimal, 0 hasta FF. 10
Paso 3: Cargue la localización final para todas las tablas en el acumulador. Este
parámetro debe ser un valor hexadecimal. Usted puede usar la instrucción LDA
para convertir una dirección octal a hexadecimal.
11
Paso 4: Cargue la dirección inicial de la tabla para todas las tablas en el acumulador.
Este parámetro debe ser un valor hexadecimal.
12
Paso 5: Coloque la instrucción FINDB. Esta especifica la dirección inicial del bloque de
los datos que usted trata de localizar.
13
Dirección inicial
Tabla 1
Cantidad 14
de palabras
Tabla 2 Dirección inicial A
Tabla 3
Cantidad
Bloque
de bytes B
C
Tabla n
Dirección final D

Manual del PLC DL06, 2a. edición en español, 6/07 5–169


Capítulo 5: Instrucciones normales RLL - Instrucciones de tablas

La instrucción Swap (SWAP)


S WAP
Esta instrucción SWAP intercambia datos en dos
1 DS5 Usado
HPP Usado
tablas de igual longitud.
A aaa

Paso 1: Cargue la longitud de las tablas (la cantidad de direcciones de memoria V) al primer
2 nivel del Stack del acumulador. Este parámetro debe ser un valor hexadecimal, 0 hasta
FF. Recuerde que las tablas deben ser de igual longitud.
3 Paso 2: Cargue la dirección de la memoria V de inicio de la primera tabla al acumulador. Este
parámetro debe ser un valor hexadecimal. Usted puede usar la instrucción de LDA
4 para convertir una dirección octal a hexadecimal.
Paso 3: Coloque la instrucción SWAP. Esta especifica la dirección inicial de la segunda tabla.
5 Este parámetro debe ser un valor hexadecimal.
Sugerencia: —- El intercambio de datos ocurre dentro de un solo barrido. Si la instrucción
ejecuta en múltiples barridos, será difícil de saber el contenido real de cualquier tabla en algún
6 tiempo particular. De modo que solo ejecuta esta instrucción en un solo barrido.

7 Tipo de operando de datos Rango del DL06


aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
8 El ejemplo a la derecha muestra una tabla de 2 palabras comenzando en V3000. Haremos la
función SWAP con otra tabla de 2 palabras
9 comenzando en V3100. El programa ladder V 3000 V 3100
para esto es mostrado abajo. 1 2 3 4 S WAP A B C D
10
5 6 7 8 0 0 0 0
11 El programa del ejemplo adyacente usa un DirectSOFT
DirectSOFT 32
contacto PD (dispara por un barrido en la X0
12 transición de OFF para ON de X0). Primero, LD
K2
Carga el valor constante
a los 16 bits más bajos
del acumulador
cargamos la longitud de las tablas (dos
13 palabras) al acumulador. Luego cargamos la
dirección de la primera tabla (V3000) en el
LDA
0 3000
Convierte el octal 3000 a
hexadecimal y carga el valo
al acumulador. Este es el
comienzo de la tabla
acumulador usando la instrucción LDA,
14 convirtiendo la dirección de octal a SWAP Intercambia el contenido
de la tabla definida en las
hexadecimal. Note que no importa cuál tabla 0 3100 instrucciones anteriores

A declaramos "primero", porque los resultados


de intercambio serán los mismos.
con una en V3100

Programador D2-HPP

B $
STR
SHFT

L
P

D
CV
D
3
A

C
0
ENT

SHFT PREV ENT


ANDST 3 2

C SHFT L
ANDST

S
D
3
A

W
0

A
D

P
3
A
0
A

D
0
A

B
0

A
ENT

A
SHFT SHFT ENT
RST ANDN 0 CV 3 1 0 0

5–170 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de fecha y hora

Instrucciones de fecha y hora


La instrucción Date (DATE)
1
La instrucción DATE puede ser usada para poner la fecha en la
DS5 Usado
CPU. La instrucción requiere dos direcciones consecutivas de DAT E 2
HPP Usado V aaa
memoria V (Vaaa) para ajustar la fecha. Si los valores
especificados en las direcciones no son válidos, la fecha no se 3
ajustará en la CPU. La fecha actual se puede leer desde 4
memorias V consecutivas V (V7771 hasta V7774). 4
En el ejemplo siguiente, cuándo C0 está ON, el valor constantee (K94010301) es cargado en
el acumulador usando la instrucción LDD (C0 debe ser un contacto de una instrucción One
Shot (PD)). El valor en el acumulador es copiado a V2000 usando la instrucción OUTD. La
5
instrucción DATE usa el valor en V2000 para ajustar la fecha en la CPU.
Fecha Rango Memoria V(BCD) 6
(Sólo para lectura)

Mes
0-99
1-12
V7774
V7773
7
Día
Día de la semana 0-06
1-31
V7771
V7772
8
Los valores a entrar como día de la semana son:
0=Domingo, 1=Lunes, 2=Martes, 3=Miércoles, 4=Jueves, 5=Viernes, 6=Sábado 9
Tipo de operando de datos Rango del DL06
aaa 10
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
DirectSOFT
DirectSOFT 32

9 4 0
Constante (K)
1 0 3 0 1
11
C0 LDD En este ejemplo, la instrucción DATE
K94010301

Carga el valor constante Acum. 9 4 0 1 0 3 0 1


usa los valores colocados en V2000
y V2001 para colocar la fecha en las
12
(K94010301) al acumulador
memorias adecuadas (V7771-V7774).

OUTD Acum. 9 4 0 1 0 3 0 1 13
V2000

Copia el valor en el acumulador


a V2000 y V2001
9 4 0

V2001
1 0 3

V2000
0 1
14
Formato
DATE
V2000
Ajusta la fecha en la CPU usando
V2001 V2000 A
el valor en V2000 y V2001 9 4 0 1 0 3 0 1

Programador d2-HPP
B
$ A
Año Mes Día Día de la semana
STR

SHFT L
ANDST
NEXT

D
3
NEXT

D
3
NEXT NEXT

PREV J
0

9
E
ENT

4
A
0
B
1
ENT
C
A D A B

GX
OUT
0

SHFT
3
D
0

3
1
ENT

C
2
A
0
A
0
A
0
ENT
D
SHFT D A T E C A A A ENT
3 0 MLR 4 2 0 0 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–171


Capítulo 5: Instrucciones de fecha y hora

La instrucción Time (TIME)


La instrucción TIME se puede usar para ajustar la hora (24
1 DS5 Usado
HPP Usado
horas) en la CPU. La instrucción requiere dos direcciones T IME
consecutivas de memoria V (Vaaa) que se usan para ajustar la V aaa
2 hora, minutos y segundos. Si los valores en las direcciones
especificadas no son válidos, el tiempo no se ajustará. El
tiempo actual se puede leer en las direcciones de memoria V7747 y V7766-V7770.
3 Dirección de Memoria V
Hora Rango (BCD) (Sólo para lectura)
4 1/100 segundos (10ms) 0-99 V7747
Segundos 0-59 V7766
5 Minutos 0-59 V7767
Hora 0-23 V7770
6 Tipo de operando de datos Rango del DL06
aaa
7 Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria

En el ejemplo siguiente, cuándo C0 está ON, se carga el valor constantee (K73000) al


8 acumulador usando la instrucción LDD. (C0 debe ser un contacto de una instrucción one shot
(PD)). El valor en el acumulador es copiado a V2000 usando la instrucción OUTD. La
9 instrucción TIME usa el valor en V2000 para ajustar la hora en la CPU.
DirectSOFT Constante (K)

10 C0 LDD
0 0 0 7 3 0 0 0 La instrucción TIME usa el valor
colocado en V2000 y V2001 para
K7300
0 0 0 7 3 0 0 0
ajustar la hora en la memorias
11 Carga el valor constante
7300 al acumulador
Acum.
adecuadas (V7766-V7770).

OUTD
12 V2000
Acum.
0 0 0 7 3 0 0 0

Copia el valor en el

13 acumulador a V2000
y V2001
0 0 0

V2001
7 3 0

V2000
0 0

Formato
TIME
V2001 V2000
14 V2000
Ajusta la hora en la CPU
0 0 0 7 3 0 0 0
usando el valor en V2000

A y V2001

Programador D2-HPP No Hora Minutos Segundos

B $
STR
NEXT NEXT NEXT NEXT A
0
ENT
usado

SHFT L D D PREV H D A A A ENT


ANDST 3 3 7 3 0 0 0
C A
0
D
3
A
0
B
1
ENT

GX D C A A A

D OUT

SHFT
SHFT

T SHFT
3
I M
2
E
0 0
C
0
A
ENT

A A ENT
MLR 8 ORST 4 2 0 0 0

5–172 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de fecha y hora

Instrucciones de control de la CPU


La instrucción No Operation (NOP)
1
La instrucción NOP es una dirección de memoria vacía ( no NOP
DS5 Usado
HPP Usado programada) .
2
DirectSOFT
Direct SOFT32 Programador D2-HPP

SHFT N O P ENT
3
NOP TMR INST# CV

4
La instrucción End (END) 5
La instrucción END marca el punto de terminación del barrido del
DS5 Usado END
HPP Usado
programa normal. ES NECESARIO COLOCAR una instrucción END
al fin del cuerpo principal del programa. Si se omite la instrucción END
6
ocurrirá un error y la CPU no entrará en Modo Run. Las etiquetas de
datos, los programas de subrutina s e interrupción se colocan después la instrucción END. La 7
instrucción END no es condicional; por lo tanto, no se coloca ningún contacto de entrada.
DirectSOFT
Direct SOFT32 Porgramador D2-HPP
8
END
SHFT E
4
N
TMR
D
3
ENT
9
La instrucción Stop (STOP) 10
La instrucción STOP cambia el modo operacional de la CPU, del
DS5 Usado modo RUN a Program (STOP). Esta instrucción se usa típicamente STOP 11
HPP Usado para parar la operación del PLC en una condición de error.
En el ejemplo siguiente, cuándo C0 prende, la CPU detiene la 12
operación y cambia el modo a Program.
13
DirectSOFT
DirectSOFT32 Programador D2-HPP

C0 $
STR
SHFT C
2
A
0
ENT
14
STOP
SHFT S
RST
SHFT T
MLR
O
INST#
P
CV
ENT
A
B
Indicadores Descripción
SP16
SP53
On cuando el PLC DL06 pasa al modo TERM_PRG
On cuando la instrucción STOP es ejecutada..
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–173


Capítulo 5: Instrucciones de fecha y hora

La instrucción Reset Watch Dog Timer (RSTWT)


La instrucción RSTWT coloca el temporizador de barrido de la
1 DS5 Usado CPU a 0. El ajuste original del temporizador de watchdog es RSTWT
HPP Usado 200 milisegundos.
2 Watch dog timer es un temporizador que supervisa que el
barrido no exceda el valor prefijado. El barrido de la CPU muy
3 rara vez excede 200 ms, pero es posible que suceda.
Los lazos For/Next, subrutinas, rutinas de interrupción e instrucciones de tablas se pueden
4 programar de tal forma que puede ser que el barrido llegue a ser más largo que 200 ms.
Cuándo se usa una o más instrucciones de una forma que podría exceder el watch dog timer,
5 esta instrucción se puede usar para reponer este temporizador.
Un error (E003 de tiempo muerto de software) ocurrirá y la CPU entrará el modo de programa
si el tiempo de barrido excede el valor prefijado en este temporizador . Es muy importante la
6 colocación de la instrucción RSTWT en el programa.
La instrucción se tiene que ejecutar antes que el tiempo de barrido exceda el ajuste del watch dog
7 timer.
Si el tiempo de barrido es continuamente más largo que el temporizador watchdog, el valor de
8 tiempo muerto se puede aumentar permanentemente del valor normal de 200 ms con la
función auxiliar apropiada en su paquete de programación. Esto elimina la necesidad de la
9 instrucción RSTWT.
En el ejemplo siguiente el temporizador watchdog de la CPU será repuesto a 0 cuando la
10 instrucción de RSTWT se ejecuta. Vea la instrucción For/Next para un ejemplo detallado.

11 DirectSOFT
Direct SOFT 32 Programador D2-HPP

SHFT R S T W T ENT
12 RSTWT
ORN RST MLR ANDN MLR

13
14
A
B
C
D

5–174 DL06 Micro PLC User Manual, 2nd Ed., 3/04


Capítulo 5: Instrucciones de control de programa

Instrucciones de control de programa


La instrucción Goto Label (GOTO) (LBL)
1
Estas instrucciones se saltan todas instrucciones entre el Goto
DS5 Usado
HPP Usado
y la instrucción correspondiente de LBL. El valor del operando
K aaa
GOTO
2
para el Goto y la instrucción correspondiente de LBL es el
mismo. La lógica entre Goto y la instrucción de LBL no se
LBL K aaa
3
ejecuta cuando la instrucción de Goto se habilita. Pueden ser
usadas hasta 256 instrucciones de Goto y 256 instrucciones de
LBL en el programa.
4
Tipo de operando de datos Rango del DL06
aaa
5
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-FFFF
6
En el ejemplo siguiente, cuándo C7 está ON, se saltará toda la lógica del programa entre el
GOTO y la instrucción correspondiente de LBL (designado con el mismo valor constantee de
Kaaa). Las instrucciones a ser saltadas no serán ejecutadas por la CPU.
7
8
DirectSOFT
DirectS OF T32 Programador D2-HPP

C7 K5
$
S TR
S HF T C
2
H
7
E NT
9
GOTO
S HFT
G
6
O
INS T#
T
MLR
O
INS T#
F
5
E NT
10
$ B E NT
S TR 1
X1 C2 GX
OUT
S HF T
C
2
C
2
E NT
11
OUT

12
L B L F
S HFT

$
ANDS T

F
1 ANDS T 5
E NT
13
LBL K5 E NT
S TR 5
GX
OUT
C
2
E NT
14
X5 Y2

OUT
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–175


Capítulo 5: Instrucciones de control de programa

La instrucción For / Next (FOR) (NEXT)


Las instrucciones FOR y NEXT se usan para ejecutar una sección de la lógica ladder entre la
1 DS5 Usado
instrucción FOR y NEXT un número de veces especificado.
HPP Usado
Cuándo la instrucción FOR es activada, el programa se ejecutará el
2 número de veces especificado en esa sección del programa. Si la
A aaa
instrucción FOR no es energizada no se ejecutan las instrucciones
3 en la sección de la lógica ladder entre el FOR y NEXT. FOR

Las instrucciones FOR/ NEXT no se pueden anidar, es decir, no se


4 puede usar una instrucción dentro de otra. La actualización normal
de entradas y salidas y el trabajo de la CPU se suspende al ejecutar
el lazo FOR/NEXT.
5 El barrido del programa puede aumentar significativamente,
dependiendo de la cantidad de tiempo que tome para ejecutarse la NEXT
6 lógica entre las instrucción FOR/NEXT.
Con la excepción de instrucciones inmediatas de entradas y salidas,
7 las entradas y salidas no se actualizarán hasta que la ejecución del
programa se complete para ese barrido.
8 Dependiendo del plazo de tiempo requerido para completar la ejecución del programa, puede
ser necesario usar la instrucción de RSTWT dentro del lazo FOR/NEXT.
9 Tipo de operando de datos Rango del DL06
aaa
10 Memoria V. . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-9999

11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07


5–176
Capítulo 5: Instrucciones de control de programa

En el ejemplo siguiente, cuándo X1 está ON, el programa de aplicación dentro del lazo
FOR/NEXT se ejecutará tres veces. Si X1 está apagado el programa dentro del lazo no se
ejecutará. Las instrucciones inmediatas pueden o no pueden ser necesarias dependiendo de su
1
aplicación. También, la instrucción RSTWT no es necesaria si el lazo FOR/NEXT no extiende
el tiempo de barrido más de lo que esté ajustado el Watch dog timer. 2
Para más información del Watch dog timer, vea la instrucción RSTWT.
DirectSOFT
Direct SOFT32
X1 1 2 3
3
K3

FOR
4
RSTWT 5
X20 Y5 6
OUT

7
NEXT 8
Programador D2-HPP
9
$
STR
B
1
ENT
10
SHFT F O R D ENT
5 INST# ORN 3

SHFT R
ORN
S
RST
T
MLR
W
ANDN
T
MLR
ENT
11
$

GX
STR
SHFT I

F
8
C
2
A
0
ENT
12
ENT
OUT 5

SHFT N
TMR
E
4
X
SET
T
MLR
ENT 13
14
A
B
C
D

DL06 Micro PLC User Manual, 3rd Edition 5–177


Capítulo 5: Instrucciones de control de programa

La instrucción Goto Subroutine (GTS) (SBR)


La instrucción de GOTO Subrutine permite que una sección de
1 DS5 Usado
HPP Usado la lógica ladder sea colocada fuera del cuerpo principal del K aaa
programa y ejecutada sólo cuando sea necesario. Puede haber un GTS
2 máximo de 256 instrucciones de GTS y 256 instrucciones de
SBR usados en un programa. Las instrucciones de GTS se
pueden anidar hasta 8 niveles. Un error E412 ocurrirá si se
3 exceden los límites máximos.
SBR K aaa
Típicamente esto se usará en una aplicación donde un bloque de
4 lógica del programa puede ser lento de ejecutar y no es necesario
ejecutar las instrucciones en cada barrido. El LABEL de la
5 subrutina y toda la lógica asociada se colocan después la
declaración END en el programa. Cuándo la subrutina es llamada desde el programa principal,
la CPU ejecutará la subrutina (SBR) con el mismo número (K) constantee que la instrucción
6 de GTS que llamó la subrutina.
El código en una subrutina es ejecutado solamente cuando sea necesario ya que va después de
7 la instrucción END. El código que no es ejecutado no afecta el tiempo de barrido completo del
programa.
8 Tipo de operando de datos Rango del DL06
aaa
9 Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-FFFF

10 DS5
La instrucción Subroutine Return (RT)
Usado Cuándo se ejecuta una instrucción RT en la subrutina, la CPU RT
volverá al punto en el cuerpo principal del programa de donde se
11 HPP Usado
llamó la subrutina. Esta instrucción se usa como terminación de
la subrutina, que debe ser la última instrucción en la subrutina y
12 es una instrucción incondicional (no hay ningún contacto de
entrada en el renglón).
RTC
13 La instrucción Subroutine Return Conditional (RTC)
DS5 Usado La instrucción RTC es una instrucción opcional usada con un
14 HPP Usado
contacto de entrada para implementar un regreso condicional de
la subrutina. Se necesita aún la instrucción RT para terminación de la subrutina.
A
B
C
D

5–178 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de control de programa

En el ejemplo siguiente, cuándo X1 está ON, se llamará la Subrutina K3. La CPU saltará al
Label K3 de la Subrutina y se ejecutará la lógica ladder en la subrutina.
Si X35 está ON la CPU volverá al programa principal con la instrucción de RTC. Si X35 no 1
está ON, Y0-Y17 será vuelto a OFF y luego la CPU volverá al cuerpo principal del programa.
DirectSOFT
Direct SOFT32 Display X1 K3
GTS
2
C0
LD
K10 3
END
4
SBR K3 5
X20 Y5
OUTI
6
X21 Y10
OUTI 7
X35
RT C 8
X35 Y0 Y17
RSTI
9
RT
10
Programador D2-HPP
Handheld Programmer Keystrokes
$
STR
B
1
ENT 11
SHFT G T S D ENT
6 MLR RST 3
12
E N D
SHFT

SHFT
S
4 TMR

SHFT B
3
ENT

R D ENT
13
RST 1 ORN 3
$
STR
SHFT I
8
C
2
A
0
ENT
14
GX I F ENT
SHFT
OUT 8 5
$
STR
SHFT I
8
C
2
B
1
ENT A
GX SHFT I B A ENT

$
OUT

STR
SHFT I
8

8
D
1

3
F
0

5
ENT
B
SHFT

SP
R
ORN
T

I
MLR
C
2
ENT

D F
C
SHFT ENT
STRN 8 3 5
S
RST
SHFT I
8
A
0
B
1
H
7
ENT D
R T ENT
SHFT
ORN MLR

Manual del PLC DL06, 2a. edición en español, 6/07 5–179


Capítulo 5: Instrucciones de control de programa

En el ejemplo siguiente, cuándo X1 está ON, se llamará la Subrutina K3. La CPU saltará al
Label K3 de la subrutina y se ejecutará la lógica ladder en la subrutina. La CPU volverá al cuerpo
1 principal del programa después que se ejecuta la instrucción RT.
DirectSOFT
Direct SOFT32
2 X1 K3

3 GTS

4
5 END

6 SBR K3

7
X20 Y5
8 OUT

9 X21 Y10
OUT

10
11 RT

12 Programador D2-HPP

$ B ENT
STR 1

13 SHFT G
6
T
MLR
S
RST
D
3
ENT

14
SHFT E N D ENT
4 TMR 3
A SHFT S
RST
SHFT B
1
R
ORN
D
3
ENT

B $

GX
STR
SHFT I

F
8
C
2
A
0
ENT

ENT
OUT 5
C $
STR
SHFT I
8
C
2
B
1
ENT

GX B A
D OUT

SHFT R T
1

ENT
0
ENT

ORN MLR

5–180 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de control de programa

La instrucción Master Line Set (MLS)


La instrucción MLS permite que el programa controle las secciones
DS5 Usado
de lógica ladder formando un nuevo riel de energía controlado por K aaa
1
HPP Usado el riel principal izquierdo de energía. El riel principal izquierdo es MLS
siempre la línea maestra 0. Cuándo se usa una instrucción de MLS
K1, se crea un riel nuevo de energía en el nivel 1. Las instrucciones
2
MLS y MLR pueden ser usadas para anidar rieles de energía de hasta siete niveles de
profundidad. 3
Tipo de operando de datos Rango del DL06
aaa
4
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-FFFF
5
La instrucción Master Line Reset (MLR)
K aaa
DS5 Usado
Las instrucción MLR marca en final del control de la
instrucción correspondiente MLS. La referencia MLR es una MLR
6
HPP Usado
menos que el de la instrucción correspondiente MLS.
Tipo de operando de datos Rango del DL06
7
aaa
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-FFFF
8
Entendiendo relevadores de control maestros (Master Line) 9
Las instrucciones MLS y MLR permiten activar o desactivar rápidamente secciones de un
programa ladder. Esta característica le proporciona flexibilidad del control al programa. 10
El ejemplo siguiente muestra cómo las instrucciones MLS y MLR operan creando un riel de
energía secundario en la lógica de control. 11
DirectSOFT
DirectSOFT32
X0 K1
MLS
Cuando el contacto X0 está ON,
será ejecutada la lógica debajo
12
de la primera instrucción MLS.
X1 Y7
OUT
13
X2
MLS
K2
Cuando los contactos Xo y X2
están ON, será ejecutada la lógica
14
debajo de la segunda instrucción MLS.
X3
OUT
Y10 A
K1
MLR
B
Las instrucciones MLR indica el final
K0
MLR
del área de control maestra.
C
X10
OUT
Y11
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–181


Capítulo 5: Instrucciones de control de programa

Ejemplo de MLS/MLR
En el programa del ejemplo siguiente con MLS/MLR, la lógica funcionará entre el primer
1 MLS K1 (A) y MLR K0 (B) sólo si la entrada X0 está ON. La lógica entre el MLS K2 (C) y
MLR K1 (D) funcionará sólo si la entrada X10 y X0 están ON . El último renglón no es
2 controlado por ninguna de las bobinas MLS.
DirectSOFT
DirectSOFT32 Programador D2-HPP
3 X0 K1
A $ A ENT
MLS STR 0

4 X1 C0
Y
MLS
B
1
ENT

OUT $ B ENT
5 X2 C1 GX
STR

SHFT
1
C A ENT
OUT 2 0

6 OUT
$
STR
C
2
ENT
X3 Y0
GX SHFT C B ENT
7 OUT
$
OUT
D ENT
2 1

X10 K2 STR 3

8 MLS
C
GX
OUT
A
0
ENT

X5 $ B A
9 Y1

OUT Y
STR
C
1 0
ENT

ENT
MLS 2

10 X4 Y2

OUT
$
STR
F
5
ENT

GX B
11 K1
D $
OUT
E
1
ENT

MLR ENT
STR 4
12 X5 C2
GX
OUT
C
2
ENT

OUT T B
13 X6 Y3 $
MLR
F
1
ENT

ENT
STR 5
14 OUT
GX
OUT
SHFT C
2
C
2
ENT
K0
B
$
A MLR

GX
STR
G

D
6
ENT

X7 Y4 ENT
OUT 3
B OUT T
MLR
A
0
ENT

C $
STR
H
7
ENT

GX E C ENT
OUT 4 2
D

5–182 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de interrupción del programa

Instrucciones de acción de interrupción


La instrucción Interrupt (INT)
1
La instrucción INT permite que sea colocada una sección
DS5 Usado de lógica ladder debajo del cuerpo principal del programa
INT O aaa
2
HPP Usado y ejecutada sólo cuando sea necesario. Los modos HSIO
de alta velocidad de entradas y salidas 10, 20, y 40 pueden 3
engendrar una interrupción. Con el modo 40, usted puede escoger una interrupción externa (la
entrada X0) o una interrupción basada en tiempo (entre 3-999 ms). 4
Típicamente, las interrupciones se usan en una aplicación cuando se necesita una respuesta
rápida a una entrada o cuando se debe ejecutar una sección de programa más rápido que el
barrido normal de la CPU. La instrucción etiqueta de interrupción (Interrupt label) y toda la
5
lógica asociada se deben colocar después de la declaración END en el programa. Cuándo ocurre
una interrupción, la CPU completará la ejecución de la instrucción que se está procesando en 6
la lógica ladder y luego ejecuta la rutina de interrupción. Después de la ejecución de la rutina
de interrupción el programa ladder reanuda del punto en que se interrumpió.
Vea la sección de operación del modo 40 (interrupción) para más detalles en la configuración
7
de interrupción. En el DL06, sólo hay disponible una interrupción de software. La interrupción
de software usa el interrupt # 00 (INT 0), que significa que el hardware interrupt #0 y el 8
software interrupt no se pueden usar juntas. Las interrupciones de hardware se marcan en octal
para corresponder con la señal de la entrada de hardware (Por ejemplo, X1 iniciará INT 1). 9
Tipo de operando de datos Rango del DL06
aaa
10
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . O 1-FFFF

La instrucción Interrupt Return (IRT) 11


La instrucción IRT se ejecuta normalmente como la última
DS5 Usado
HPP Usado
instrucción en la rutina de interrupción. Vuelve la CPU al punto 12
en el programa principal de donde se llamó. IRT es una IRT
instrucción incondicional (no se necesita contacto de entrada en el
renglón).
13
La instrucción Interrupt Return Conditional (IRTC) 14
DS5 Usado IRTC es una instrucción opcional usada con un contacto de
HPP Usado
entrada para causar un regreso condicional de la rutina de
interrupción. En todo caso se requiere IRT para terminar la rutina
IRTC
A
de interrupción.
La instrucción Enable Interrupts (ENI)
B
La instrucción ENI se coloca en el programa principal ladder (antes
DS5 Usado
HPP Usado de la instrucción END) para posibilitar la interrupción. La ENI C
interrupción permanece habilitada hasta que el programa ejecute
una instrucción DISI. D

Manual del PLC DL06, 2a. edición en español, 6/07 5–183


Capítulo 5: Instrucciones de interrupción del programa

La instrucción Disable Interrupts (DISI)


Una instrucción DISI en el cuerpo principal del programa de
1 DS5 Usado aplicación (antes la instrucción END) incapacitará la
DISI
HPP Usado interrupción (ya sea externa o por tiempo). La interrupción
2 permanece incapacitada hasta que el programa ejecute una
instrucción ENI.
3 Ejemplo de programa de interrupción externa
En el ejemplo siguiente, se hace una inicialización en el primer barrido usando el contacto de
4 primer barrido SP0. La característica de interrupción es el modo HSIO 40. Luego se
configura X0 como interrupción externa escribiendo al registro de configuración
correspondiente, V7634. Vea la operación del modo 40 en el capítulo 3 para más detalles.
5 Durante la ejecución del programa, se activa la interrupción cuándo X2 está ON. Cuándo X2
está apagado se incapacitará la interrupción. Cuándo ocurre una señal de interrupción (X0) la
6 CPU saltará a la marca de interrupción INT O0.
Se realizará entonces la lógica de aplicación en la rutina de interrupción. La CPU volverá al
7 cuerpo principal del programa después que se ejecuta la instrucción IRT.

8 SP0
DirectSOFT
Direct SOFT32
LD Carga el valor constante
Programador D2-HPP

(K40) en los 16 bits más $ SHFT SP A ENT


K40
STR STRN 0

9 OUT
V7633
bajos del acumulador

Copia el valor en los 16


bits más bajos del
SHFT L
ANDST
D
3
SHFT K
JMP
E
4
A
0
ENT

acumulador a V7633 GX V H G D D
SHFT ENT

10 LD
K4
Carga el valor constante
(K4) en los 16 bits más
bajos del acumulador
OUT

SHFT L
ANDST
D
3
AND

SHFT
7
K
JMP
6
E
3

4
ENT
3

Copia el valor en los 16 GX SHFT V H G D E ENT

11 OUT
V7634 bits más bajos del
acumulador a V7634 $
OUT

STR
C
2
AND

ENT
7 6 3 4

X2
E N I

12 X2
ENI

DISI
SHFT

SP
STRN
4
C
TMR

2
8

ENT
ENT

D I S I

13 SHFT
3 8 RST 8
ENT

14 END
SHFT

SHFT
E

I
4
N

N
TMR
D

T
3
ENT

A ENT
8 TMR MLR 0
INT O0

A X1 Y5
$

X
STR
SHFT I

I
8
B

F
1
ENT

SETI SHFT ENT


SET 8 5

B X3 Y7
SETI
$
STR
SHFT I
8
D
3
ENT

X SHFT I H ENT
SET 8 7

C IRT SHFT I
8
R
ORN
T
MLR
ENT

5–184 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de interrupción del programa

Ejemplo de programa de interrupción por tiempo


En el ejemplo siguiente, se hace una inicialización en el primer barrido, usando el contacto SP0
de primer barrido. La característica de interrupción es el modo HSIO 40. Luego se configura el 1
temporizador de HSIO como una interrupción de 10 ms escribiendo K104 al registro de
configuración para X0 (V7634). 2
Vea la operación del modo 40 en el capítulo 3 para más detalles. Cuándo X4 prende, la
interrupción se habilitará. 3
Cuándo X4 se apaga, la interrupción se incapacitará. Cada 10 ms la CPU saltará a la marca de
interrupción INT O0. Se ejecutará la lógica de aplicación en la rutina de interrupción. 4
Si X3 no está ON Y0-Y7 será colocado OFF y luego la CPU volverá al cuerpo principal del
programa.
DirectSOFT
Direct SOFT32 Programador D2-HPP
5
SP0 Carga el valor constante (K40)
LD
K40
en los 16 bits más bajos del
acumulador
$

SHFT
STR
L
ANDST
B

D
1

3
ENT

SHFT K
JMP
E
4
A
0
ENT
6
OUT
V7633
Copia el valor en los 16
bits más bajos del
acumulador a V7633
GX
OUT

SHFT L
SHFT

D
V
AND
H

SHFT
7
G

K
6
D

B
3
D

A
3
ENT

E ENT
7
ANDST 3 JMP 1 0 4

LD
K104
Carga el valor constante (K104)
en los 16 bits más bajos del
acumulador
GX

$
OUT
SHFT

E
V
AND

ENT
H
7
G
6
D
3
E
4
ENT
8
STR 4

OUT
V7634
Copia el valor en los 16
bits más bajos del
acumulador a V7634
SHFT

SP
E
4
N

E
TMR
I
8

ENT
ENT
9
STRN 4
X4

ENI
SHFT D
3
I
8
S
RST
I
8
ENT
10
X4
DISI
SHFT E
4
N
TMR
D
3
ENT 11
SHFT I N T A ENT

INT O0
END
$
STR
SHFT
8
I
TMR

8
MLR
C
2
ENT
0
12
X SHFT I F ENT

X2 Y5
SP
SET

STRN
SHFT I
8

8
D
5

3
ENT
13
SETI X SHFT I A H ENT

X3 Y0 Y7 SHFT
SET
I
8
R
ORN
8
T
MLR
0

ENT
7
14
RSTI

A
IR T

B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–185


Capítulo 5: Instrucciones de mensajes

Instrucciones de mensajes
1 La instrucción Fault (FAULT)
2 DS5 Usado
La instrucción Fault se usa para mostrar un mensaje de FALLA en un
programador portátil, o el visor opcional LCD o en el menú FAULT
HPP Usado A aaa
PLC>Diagnostics> messages> Fault messages en DirectSOFT. El
3 mensaje tiene un máximo de 23 caracteres y puede ser datos de
memoria V, datos o constantes numéricas o texto ASCII.
4 Para mostrar un valor en una dirección de memoria V, especifique la dirección de memoria V
en la instrucción. Para mostrar los datos en las instrucciones ACON (constante ASCII) o
NCON (constante numérica), especifique el valor de la constante (K) para el área
5 correspondiente de etiqueta de datos (Data Label).

6 Tipo de operando de datos Rango del DL06


aaa
Memoria V. . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
7 Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-FFFF

8 SP50
Indicadores
ON cuando la instrucción FAULT es ejecutada
Descripción

9 Ejemplo de instrucción Fault


En el ejemplo siguiente cuando X1 está ON, se mostrará el
10 mensaje “Baja presion 5” en el Programador portátil o en el
visor LCD. El NCON usa el equivalente hexadecimal ASCII
FAULT :
*SW 146

del texto a ser mostrado.


11
12 DirectSOFT
Direct SOFT32 Programador D2-HPP

13 X1 FAULT
K1
$
STR
B
1
ENT

SHFT F A U L T B ENT

14 END
5 0 ISG ANDST MLR 1

A DLBL
K1 SHFT E

D
4
N

L
TMR
D

B
3
ENT

L B
ACON SHFT ENT
3 ANDST 1 ANDST 1
A SW

B SHFT A
0
C
2
O
INST#
N
TMR
S
RST
W
ANDN
ENT

SHFT N C O N C A D B ENT
NCON TMR 2 INST# TMR 2 0 3 1

C K 2031
SHFT N
TMR
C
2
O
INST#
N
TMR
D
3
E
4
D
3
G
6
ENT

D NCON
K 3436

5–186 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de mensajes

La instrucción Data Label (DLBL)


La instrucción DLBL marca el comienzo de un área
DS5 Usado
HPP Usado
ASCII/numérica de datos. DLBLs se programa DLBL K aaa
1
después la declaración END.
Se puede usar un máximo de 64 instrucciones de 2
DLBL en un programa. Se pueden usar múltiples
NCONs y ACONs en un área de DLBL. 3
Tipo de operando de datos Rango del DL06 4
aaa
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-FFFF 5
La instrucción ASCII Constant (ACON) 6
DS5 Usado
La instrucción ACON se usa con la instrucción
DLBL para almacenar texto ASCII para uso con ACON
HPP Usado
otras instrucciones. Se pueden almacenar 2 A aaa 7
caracteres ASCII en una instrucción ACON.
Si se almacena solamente un carácter en un ACON 8
será insertado un espacio delantero.
9
Tipo de operando de datos Rango del DL06

ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A
aaa
0-9 A-Z
10
La instrucción Numerical Constant (NCON)
11
DS5 Usado
La instrucción NCON se usa con la instrucción
DLBL para almacenar el equivalente hexadecimal NCON
12
HPP Usado
ASCII de datos numéricos para el uso con otras K aaa
instrucciones. 13
Se pueden almacenar 2 dígitos en una instrucción
de NCON. 14
Tipo de operando de datos Rango del DL06
aaa
A
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 1-FFFF
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–187


Capítulo 5: Instrucciones de mensajes

Ejemplo de Data Label


En el ejemplo siguiente, se usa un ACON y 2 instrucciones de NCON dentro de una
1 instrucción DLBL para construir un mensaje de texto.
Vea la instrucción FAULT para información de cómo exhibir los mensajes. El Manual del visor
2 DV-1000 tiene también información de los mensajes a ser exhibidos.

3
DirectSOFT
4 Direct SOFT32

5
END

6
DLBL

7 K1

8 ACON
A SW

9
NCON
10 K 2031

11
12 NCON
K 3436

13
14 Programador D2-HPP

E N D
SHFT ENT
4 TMR 3

A SHFT D
3
L
ANDST
B
1
L
ANDST
B
1
ENT

A C O N S W
B SHFT

N
0
C
2 INST#
O N
TMR
C
RST ANDN
A
ENT

D B
SHFT ENT
TMR 2 INST# TMR 2 0 3 1

C SHFT N
TMR
C
2
O
INST#
N
TMR
D
3
E
4
D
3
G
6
ENT

5–188 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de mensajess

La instrucción Move Block (MOVBLK)


Esta instrucción copia un número especificado de palabras de un
DS5 Usado área de etiqueta de datos (Data Label ) de la memoria del programa
MOVBLK
V aaa
1
HPP Usado (ACON, NCON) a la localización especificada de Memoria. Se
describen a continuación los pasos para usar esta instrucción: 2
• Paso 1:Cargue la cantidad de palabras (octal) que se copiarán al primer nivel del stack del acumulador
• Paso 2: Cargue la etiqueta de datos origen (LDLBL Kaaa) en el acumulador. De aquí es de donde
serán copiados los datos.
3
• Paso 3: Insiera la instrucción MOVBLK que especifica la memoria de destino. Aquí es donde serán
copiados los datos.
4
La instrucción Copy Data From a Data Label Area to Memory 5
Cuando X1 está encendido, el valor octal (O4) se copia al primer nivel del stack del acumulador
usando el instrucción LDA. Este valor especifica la cantidad de palabras que se copiarán. La
instrucción LDLBL cargará la dirección de los datos origen (K1) en el acumulador. Aquí es de 6
donde serán copiados los datos. La instrucción MOVBLK especifica la localización inicial de
destino y ejecuta el copiado de datos del área de laetiqueta de datos a Memoria. 7
Direct SOFT 5
X1 LDA
Area de Data label
a ser copiada
.
.
8
O4

Carga el valor 4 en el acumulador DLBL K1


X X X X V1777
9
especificando la cantidad de N C O N 1 2 3 4 V2000
palabras a ser copiadas
K

N
1

C
2

O
3

N
4
4 5 3 2 V2001
10
LDLBL
K1

Carga el valor 1 en el acumulador


K
N
4
C
5
O
3
N
2
6 1 5 1 V2002
11
especificando el area data label K1 K 6 1 5 1
como la dirección inicial de los
datos a ser copiados
N
K
C
8
O
8 4
N
5
8 8 4 5 V2003 12
MOVBLK
V2000
X X
.
X X V2004
13
.
V2000 es la dirección inicial de
destino para los datos a ser copiados 14
A
$
STR
B
1
ENT B
L D A E
SHFT
ANDST
L D
3
L
0
B L
4
ENT

B
C
SHFT ENT
ANDST 3 ANDST 1 ANDST 1

SHFT M
ORST
O
INST#
V
AND
B
1
L
ANDST
K
JMP
C
2
A
0
A
0
A
0
ENT D

Manual del PLC DL06, 2a. edición en español, 6/07 5–189


Capítulo 5: Instrucciones de mensajes

La instrucción Print Message (PRINT)


La instrucción PRINT imprime un mensaje con texto o
1 DS5 Usado
con texto y variable o datos empotrados al puerto 2 en la
HPP N/A CPU DL06 o el módulo D0-DCM, el cual debe estar
2 configurado adecuadamente con el protocolo Non-
sequence.
3 Tipo de operando de datos Rango del DL06
aaa
4 Constante K 2 para puerto; 1-4 para ranura

Usted puede recordar de las especificaciones del PLC DL06 que los puertos son capaces de
5 procesar varios protocolos. El puerto 1 no puede ser configurado como protocolo "Non-
sequence".Para configurar el puerto 2 en DirectSOFT, escoja el menú " PLC", luego SETUP,
luego "Setup Sec. Comm Port". Aparece un cuadro de diálogo como la figura de abajo :
6 • Port: En el campo de la lista de puertos disponibles en la parte superior, escoja "Port 2"
• Protocol: Haga clic en el cuadro de verificación a la izquierda de "Non- sequence"
7 • Time-out: El período que el puerto
esperará después que envíe un mensaje
8 para obtener una respuesta antes de
detectar un error.
• RTS On Delay Time: tiempo que
9 espera el PLC para mandar datos
después que la señal TRS se ha hecho
ON.
10 • RTS Off Delay Time: tiempo que
espera el PLC DL06 después de
mandar datos para hacer OFF la señal
TRS.
11 • Data Bits: Seleccione 7 o 8 bits y
hágalo igual a los bits de datos
especificados para los aparatos
12 conectados.
• Baud Rate: Las tasas disponibles de
baud incluyen 300, 600, 1200, 2400,
13 4800, 9600, 19200, y 38400 Baud.
Escoja una tasa más alta de baud
inicialmente, y baje el valor si
14 experimenta errores de datos o
problemas de ruido en la red.
• Stop Bits: Escoja 1 o 2 bits de parada que debe ser los mismos que los de la impresora conectada.
A • Parity: Escoja paridad none, even, o odd para verificación de error. Asegúrese de hacer igual la paridad
especificada en la impresora a ser conectada.
B • Echo Suppression: Seleccione el botón de radio adecuado basado en la configuración usada en el;
puerto 2 (RS-232C, RS-422 o RS-485).
• Xon/Xoff Flow control: Escoja esta seleción si Ud. tiene el puerto 2 conectado para el control de flujo
C con hardware (Xon/Xoff ) con las señales RTS y CTS conectada entre los dispositivos.
• RTS Flow control: Escoja esta selección is Ud. tiene la señal RTS del puerto 2 cableada a la impresora.
• Memory address: Escoja una dirección de memoria para usar como buffer para almacenamiento de
D datos ASCII.
Luego haga clic en el botón para enviar la configuración del puerto a la CPU y haga clic en CLOSE.

5–190 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de mensajes

El puerto 2 en el DL06 tiene niveles de voltaje RS232 normales y debe trabajar con la mayoría
de las conexiones seriales de las impresoras. .
Elemento de texto – esto se usa para imprimir conjuntos de caracteres. Los conjuntos de 1
caracteres se definen como los caracteres (fuera de 0) entre comillas. Dos números
hexadecimales precedidos por el signo de dólar significa un código de 8 bits de caracteres ASCII. 2
También, dos caracteres precedidos por el signo de dólar se interpretan según la tabla siguiente:
# Código de caracteres Descripción 3
1 $$ Signo dólar ($)
2
3
$”
$L o $l
Comillas (”)
Line feed (LF)
4
4 $N o $n Carriage return line feed (CRLF)
5 $P o $p Form feed 5
6 $R o $r Carriage return (CR)
7 $T o $t Tab 6
Los ejemplos siguientes muestran varias convenciones de sintaxis y la longitud de las señales
de salida a la impresora. 7
Ejemplo:
” ” Longitud 0 sin el carácter 8
”A” Longitud 1 con el carácter A
” ” Longitud 1 con espacio en blanco 9
” $” ” Longitud 1 con comillas
” $ R $ L ” Longitud 2 con un CR y un LF
10
” $ 0 D $ 0 A ” " Longitud 2 con un CR y un LF
” $ $ ” Longitud 1 con la marca $
11
Al imprimir una línea ordinaria de texto, usted necesitará incluir "comillas" antes y después del
conjunto de texto. El código de error 499 ocurrirá en la CPU cuando la instrucción PRINT
12
contiene texto inválido o está sin comillas.Es importante probar los datos de la instrucción
PRINT durante el desarrollo de la aplicación. 13
El ejemplo siguiente imprime el mensaje al puerto 2. Usamos un contacto PD, que causa que
la instrucción de mensaje sea activa por un barrido solamente. Note el $N al fin del mensaje, 14
que produce un carriage return/line feed en la impresora. Esto prepara la impresora para
imprimir la próxima línea y comenzar desde el margen izquierdo. A
Envía el mensaje al puerto
2 del módulo D0-DCM
B
cuando X2 hace una
transición de OFF para ON C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–191


Capítulo 5: Instrucciones de mensajes

Elemento de memoria V - esto se usa para imprimir el contenido de memorias V en el formato


entero o real. Use el número de memoria V o el número de memoria V con ":" y el tipo de datos.
1 Los tipos de datos se muestran en la tabla abajo. El código del carácter debe ser con letras
mayúsculas.
2 NOTA: Debe colocarse un espacio antes y después de la dirección de memoria V para separarla de la cadena
de texto. Si no se hace esto aparecerá el error 499.
3 # Código de caracteres Descripción
1 ninguno binarioBinario de 16 bits (decimal)
4 2 :B 4 dígitos BCD
3 :D binarioBinario de 32 bits (decimal)
5 4 :DB 8 dígitos BCD

Ejemplos:
6 V2000 Imprime datos binarios en V2000 como número decimal
V2000 : B Imprime datos BCD en V2000
7 V2000 : D Imprime un número binario en V2000 y V2001 para un número decimal
8 V2000 : D B Imprime datos BCD en V2000 y V2001
Ejemplo: El ejemplo siguiente imprime un texto que contiene un texto y una variable.
"Temperatura del reactor" marca los datos, que están en V2000 (como binario). Usted puede
9 usar el calificativo :B después de V2000 si los datos están en el formato BCD, por ejemplo. El
texto final agrega las unidades de grados a la línea de texto y el $N agrega un Carriage
10 return/Line feed (CRLF), un comando de la impresora.

11 X1 PRINT K2 Envíe el mensaje al puerto 2


“Temperatura del reactor = ”⊥V2000⊥“grados C $N” cuando X1 hace una
12 transición de OFF para ON
⊥ representa un espacio
El mensage será visto como:
V2000 contiene el valor 156 binario
13 Temperatura del reactor = 0156 grados C
Elemento Texto de memoria V - Esto se usa para imprimir texto almacenado en memoria V.
14 Use el signo % seguido por el número de caracteres después del número de memoria V para
representar el texto.
Si usted asigna "0" como el número de caracteres, la función de impresión leerá al conteo desde
A el carácter de la primera localización. Luego comenzará en la próxima dirección de memoria V
y leerá ese número de códigos ASCII para el texto desde la memoria.
B Ejemplo:
V2000 % 16 Se imprimen 16 caracteres en V2000 hasta V2007.
C V2000 % 0 Serán impresos los caracteres en V2001 a Vxxxx (determinado por el número
en V2000).
D

5–192 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de mensajes

Elemento de bit
Esto se usa para imprimir el estado del bit designado en la memoria V o un bit de relevador C.
El elemento bit puede ser asignado por un punto (.) y el número de bit precedido por el 1
número de memoria V o el número de relevador C. El tipo de salida se describe como mostrado
en la tabla de abajo. 2
# Formato de datos Descripción
1 ninguno Imprime 1 cuando el estado es ON y
estado es OFF
0 cuando el 3
2 :BOOL Imprime “TRUE” cuando el estado es ON y “FALSE”
cuando el estado es OFF
Imprime “ON” cuando el estado es ON y “OFF”cuando el
4
3 :ONOFF estado es OFF
Ejemplo: 5
V2000.15 Imprime el estado del bit 15 en V2000, en formato 1/0.
C100 Imprime el estado de C100 en el formato 1/0. 6
C100 : BOOL Imprime el estado de C100 en formato TRUE/FALSE
C100 : ON/OFF Imprime el estado de C100 en formato ON/OFF 7
V2000.15 : BOOL Imprime el estado del bit 15 en V2000 en formato TRUE/FALSE
El máximo número de caracteres que puede imprimir es 128. El número de caracteres para cada
8
elemento se lista en la tabla de abajo:
Tipo de elemento Cantidad máxima de caracteres
9
Texto, 1 carácter 1
16 bit binarios 6 10
32 bits binarios 11
4 dígitos BCD
8 dígitos BCD
4
8
11
Número real (punto flotante) 12
Real con exponente 12 12
Texto en una memoria V 2
Bit (formato 0/1)
Bit ( formato TRUE/FALSE)
1
5
13
Bit (formato ON/OFF) 3
14
El nemotécnico del programador D2-HPP es “PRINT” seguido del campo DEF.
Los relevadores especiales SP116 y SP117 indican el estado de los puertos del PLC DL06 busy A
(Ocupado), o communications error (error de comunicación)).
Vea el apéndice D relativo a relevadores especiales para una mejor descripción. B
NOTA: Usted debe usar el relevador especial apropiado con la instrucción PRINT para asegurarse que el
programa ladder no trate de IMPRIMIR a un puerto que está todavía ocupado por una instrucción C
PRINT previa o una instrucción WX o RX. .
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–193


Capítulo 5: Instrucciones de módulos inteligentes

Instrucciones de módulos inteligentes


1 La instrucción Read from Intelligent Module (RD)
Esta instrucción lee un bloque de datos (máximo cantidad de 128 RD
2 DS32 Usado
HPP Usado bytes) de un módulo inteligente de E/S a la memoria de la CPU. V aaa
Cargue los parámetros de la función en el primer y segundo nivel
3 del stack del acumulador y al acumulador por tres instruccións adicionales
Se enumeran abajo los pasos para programar esta instrucción.
4 • Paso 1: Cargue el número de la base en el primer byte y el númerode la ranura (1 a 4) o al segundo
byte del segundo nivel del Stack del acumulador.
5 • Paso 2: Cargue le número de bytes a ser transferidos al primer nivel del Stack del acumulador. Pueden
ser transferidos hasta 128 bytes (o 64 palabras de 16 bits) en cada transacción, ya que hay 2
bytes por cada palabra.
6 • Paso 3: Cargue la dirección de los datos desde donde van a ser leídos. Este parámetro requiere un valor
hexadecimal.
7 • Paso 4: Coloque la instrucción RD especificando la dirección inicial de memoria V (Aaaa) de donde
se leerán los datos.
8 Sugerencia: — Para parámetros que requieren valores hexadecimales, se puede usar la instrucción
LDA para convertir una dirección octal al equivalente hexadecimal y cargar el valor en el acumulador.
9 Tipo de operando de datos Rango del DL06
aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
10 Indicadores Descripción
SP54 On cuando las instrucciones RX, WX RD, WT son ejecutada con parámetros errados.
11 NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP.
12
En el ejemplo siguiente cuando X1 está ENCENDIDO, la instrucción RD leerá seis bytes de
13 datos de un módulo inteligente en la base 1, ranura 2 que comienzan en la dirección 0 en el
módulo inteligente y copiará la información en las localizaciones de memoria V1400 hasta V1402

14 Direct SOFT 5

X1 LD
El valor constante K0102
CPU Módulo inteligente
especifica la base número Data
K0102

}
(01) y el número de la 12

A V1400 3 4 1 2 Dirección 0

{
ranura (02).
V1401 7 8 5 6 34 Dirección 1
LD El valor constante K6 V1402 0 1 9 0 56 Dirección 2
especifica la cantidad de
K6 bytes a ser leídos. V1403 X X X X 78 Dirección 3

B LD El valor constante K0
V1404 X

Handheld Programmer Keystrokes


X X X 90
01
Dirección 4
Dirección 5

K0 especifica la dirección inicial

C RD
en el módulo inteligente.

V1400 es la localización inicial


$
STR

SHFT L
B

D
1
ENT

PREV A B A C ENT
en la CPU de donde serán ANDST 3 0 1 0 2
V1400 almacenados los datos

D a ser leídos. SHFT

SHFT
L
ANDST
L
D

D
3
PREV

PREV
G

A
6
ENT

ENT
ANDST 3 0

R D B E A A
SHFT ENT
ORN 3 1 4 0 0

5–194 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de módulos inteligentes

La instrucción Write to Intelligent Module (WT)


Esta instrucción escribe un bloque de datos (máximo de 128
DS32 Usado bytes) a un módulo inteligente de E/S desde un bloque de WT
1
HPP Usado Memoria en la CPU. Los parámetros de la instrucción son V aaa
cargados en el primer y segundo nivel del stack del acumulador
y el acumulador por tres instrucciones adicionales.
2
Se enumeran abajo los pasos para programar esta instrucción. 3
• Paso 1: Cargue el número de la base en el primer byte y el númerode la ranura (1 a 4) o al segundo
byte del segundo nivel del Stack del acumulador.
• Paso 2: Cargue le número de bytes a ser transferidos al primer nivel del Stack del acumulador. Pueden
4
ser transferidos hasta 128 bytes (o 64 palabras de 16 bits) en cada transacción, ya que hay 2
bytes por cada palabra. 5
• Paso 3: Cargue la dirección de los datos del módulo inteligente donde van a ser recibidos los datos.
Este parámetro requiere un valor hexadecimal. 6
• Paso 4: Coloque la instrucción WT que especifica la dirección inicial de memoria V (Aaaa) en la CPU
desde donde se leerán los datos.
Sugerencia: — Para parámetros que requieren valores hexadecimales, se puede usar la instrucción
7
LDA para convertir una dirección octal al equivalente hexadecimal y cargar el valor en el acumulador.
Tipo de operando de datos Rango del DL06
8
aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria 9
Indicadores Descripción
SP54 On cuando se ejecutan las instrucciones RX, WX RD, WT con parámetros errados. 10
NOTA: Las indicaciones de estado discretas SP son válidas sólo hasta que se ejecute otra instrucción que
use el mismo relevador especial SP. 11
En el ejemplo siguiente, cuando X1 está encendido, el instrucción WT escribe seis bytes de
datos a un módulo inteligente en la base 1, ranura 2 que comienzan en la dirección 0 en el
12
módulo inteligente y copia los datos de las localizaciones de MemoriaV1400 hasta V1402
13
CPU Módulo Inteligente
X1 LD
K0102
El valor constante K0102
especifica el número de la base
V1377
Data
12 Dirección 0 14
{
(01) y de la ranura (02) X X X X
34 Dirección 1

}
V1400 3 4 1 2

LD
K6
El valor constante K6
especifica el número de
bytes a ser escritos.
V1401
V1402
7
0
8
1
5
9
6
0
56
78
90
Dirección 2
Dirección 3
Dirección 4
A
V1403 X X X X

LD
K0
El valor constante K0
especifica la dirección inicial
en el módulo inteligente. $
V1404

B
X X X X
01 Dirección 5
B
ENT
STR 1

WT
V1400
V1400 es la localización inicial
en la CPU desde donde los datos SHFT
especificados serán escritos.
L
ANDST
D
3
PREV A
0
B
1
A
0
C
2
ENT C
SHFT L D PREV G
ENT
ANDST 3 6

SHFT L
ANDST
D
3
PREV
A
0
ENT D
W T B E A A
SHFT ENT
ANDN MLR 1 4 0 0

Manual del PLC DL06, 2a. edición en español, 6/07 5–195


Capítulo 5: Instrucciones de comunicación en una red

Instrucciones de comunicación en una red


1 La instrucción Read from Network (RX)
2 DS32 Usado
La instrucción RX es usada por el aparato maestro en una red
para leer un bloque de datos de un aparato esclavo en la RX
HPP Usado
misma red. Los parámetros de la función son cargados al
3 primer y segundo nivel del Stack del acumulador y al
A aaa

acumulador con tres instrucciones adicionales. Abajo están


4 listados los pasos necesarios para programar la instrucción
RX.
• Paso 1: Cargue la dirección del esclavo (0- 90 BCD) en el primer byte y el puerto del PLC
5 (KF2) o ECOM maestro (0- 7) al segundo byte del segundo nivel del Stack del
acumulador.
6 • Paso 2: Cargue el número de bytes a ser transferidos al primer nivel del Stack del
acumulador. Pueden ser transferidos hasta 128 bytes (o 64 palabras de 16 bits) en
cada transacción, ya que hay 2 bytes por cada palabra.
7 • Paso 3: Cargue la dirección de los datos a ser leída en el aparato esclavo al acumulador. Este
parámetro requiere un valor hexadecimal.
8 • Paso 4: Coloque la instrucción RX especificando la dirección inicial de memoria V (Aaaa)
en el aparato esclavo de donde se leerán los datos.
9 Sugerencia: — Para parámetros que requieren valores hexadecimales, se puede usar la
instrucción LDA para convertir una dirección octal al equivalente hexadecimal y cargar el valor
10 en el acumulador.
Tipo de operando de datos Rango del DL06
11 ....................................A aaa
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria
12 Puntero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
Vea el mapa de memoria
0–777
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777
13 Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–1777
Bits de etapas . . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777
14 Bits de temporizadores . . . . . . . . . . . . . . . . . . . T
Bits de contadores . . . . . . . . . . . . . . . . . . . . . CT
0–377
0–177
Relevadores especiales . . . . . . . . . . . . . . . . . SP 0–777
A Memoria de programa . . . . . . . . . . . . . . . . . . . $ 0–7680 (2K de memoria de programa )

B
C
D

5–196 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de comunicación en una red

En el ejemplo siguiente, cuándo X1 está ON y el relevador SP116 del puerto “busy” (ocupado)
(vea relevadores especiales) no está ON, la instrucción RX tendrá acceso al puerto 2, que opera
como maestro. Serán leídos diez bytes consecutivos o 5 palabras de datos (V2000 - V2004) de 1
un aparato esclavo en el nodo de dirección 5 y copiado a las memorias V2300-V2304 en la CPU
con el puerto maestro. 2
DirectSOFT
Direct SOFT32

X1 SP116 LD
3
KF205

El valor constante KF205


especifica el número de puerto (2)
PLC Maestro PLC Esclavo 4
y la dirección del esclavo (5)

LD 5
K10
V2277 X X X X X X X X V1777
El valor constante K10
especifiva el número de
V2300 3
8
4
5
5
3
7
4
3
8
4
5
5
3
7
4
V2000 6
bytes a ser leídos V2301 V2001

LDA
O 2300
V2302
V2303
1
9
9
5
3
7
6
1
1
9
9
5
3
7
6
1
V2002
V2003
7
V2304 1 4 2 3 1 4 2 3 V2004
La dirección Octal 2300 es
convertida a 4C0 hexadecimal V2305 X
y cargada al acumulador.
X X X X X X X V2005 8
V2300 es la localización
inicial del PLC maestro donde
serán colocados los datos especificados
que serán leídos por la RX
9
RX
V2000
10
V2000 es la localización inicial
del PLC esclavo desde donde
11
serán leídos los datos especificados

12
Programador D2-HPP

$
STR
B
1
ENT
13
W
ANDN
SHFT SP
STRN
B
1
B
1
G
6
ENT
14
SHFT L D SHFT K SHFT F SHFT C A F ENT
ANDST 3 JMP 5 2 0 5

SHFT L
ANDST
D
3
SHFT K
JMP
B
1
A
0
ENT
A
SHFT L
ANDST
D
3
A
0
C
2
D
3
A
0
A
0
ENT
B
SHFT R X C A A A ENT
ORN SET 2 0 0 0
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–197


Capítulo 5: Instrucciones de comunicación en una red

La instrucción Write a Network (WX)


La instrucción WX se usa para escribir un bloque de datos
1 DS5 Usado
desde el aparato maestro a un aparato esclavo en la misma
HPP Usado WX
red. Los parámetros de la instrucción WX son cargados al
2 acumulador y al primer y segundo nivel del Stack. Abajo
están listados los pasos necesarios para ejecutar un
A aaa

programa para escribir datos en la red.


3 Paso 1: Cargue la dirección de esclavo (0-90 BCD) en el byte bajo y "F2" o ECOM
maestro (0-7) en el byte alto del acumulador (las próximas dos instrucciones
4 empujan esta palabra hacia abajo al segundo nivel del Stack).
Paso 2: Cargue el número de bytes a ser transferido al acumulador (la próxima
5 instrucción empuja esta palabra al primer nivel del Stack). Pueden ser
transferidos hasta 128 bytes (o 64 palabras de 16 bits) en cada transacción.
6 Paso 3: Cargue la dirección inicial de la CPU maestra al acumulador. Esta es la dirección
de memoria de donde se escribirán los datos. Este parámetro requiere un valor
7 hexadecimal.
Paso 4: Coloque la instrucción WX especificando la dirección de memoria V (Aaaa)
donde los datos serán escritos al esclavo.
8 Sugerencia: — Para parámetros que requieren valores hexadecimales, se puede usar la
instrucción LDA para convertir una dirección octal al equivalente hexadecimal y cargar el valor
9 al acumulador.

10 Tipo de operando de datos Rango del DL06


11 ....................................A
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
aaa
Vea el mapa de memoria
Puntero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P Vea el mapa de memoria
12 Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–777
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–777

13 Relevadores de control . . . . . . . . . . . . . . . . . . . C
Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . S
0–1777
0–1777
Bits de estado de temporizadores . . . . . . . . . . T 0–377
14 Bits de estado de contadores . . . . . . . . . . . . . CT 0–177
Relevadores especiales . . . . . . . . . . . . . . . . . . SP 0–777

A Memoria de programa . . . . . . . . . . . . . . . . . . . $ 0–7680 (2K de memoria de programa)

B
C
D

5–198 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de comunicación en una red

En el ejemplo siguiente cuando X1 está ON y el relevador SP116 “busy” (ocupado) (vea los
relevadores especiales) no está ON, la instrucción WX tendrá acceso al puerto 2 que opera como
maestro. Se leen diez bytes o 5 palabras consecutivas de datos de la CPU maestra y son copiados 1
a las memorias V2000-V2004 en el aparato esclavo en la dirección del nodo 5.
DirectSOFT
Direct SOFT32 2
X1 SP116 LD
KF205

El valor constante KF205


CPU CPU 3
especifica el número del puerto (2) Maestra esclava
y la dirección del esclavo (5)
4
LD
K10

El valor constante K10


V2277
V2300
X
3
X
4
X
5
X
7
X
3
X
4
X
5
X V1777
7 V2000
5
especifica el número de
bytes a ser escritos

LDA
V2301
V2302
8
1
5
9
3
3
4
6
8
1
5
9
3
3
4
6
V2001
V2002
6
V2303 9 5 7 1 9 5 7 1 V2003
O 2300

La dirección Octal 2300 es


V2305
V2304 1
X
4
X
2
X
3
X
1
X
4
X
2
X
3 V2004
X V2005
7
convertida a 4C0 hexadecimal
y cargada al acumulador. V2300
es la dirección inicial de la CPU
desde donde serán leídos los
datos especificados.
8
9
WX
V2000 10
V2000 es lka dirección inicial de
la CPU esclava donde serán escritos l
os datos especificados 11
Programador D2-HPPHandheld 12
$ B ENT
STR 1
W
ANDN
SHFT SP
STRN
B
1
C
1
E
6
ENT
13
SHFT L
ANDST
D
3
SHFT K
JMP
SHFT F
5
SHFT
C
2
A
0
F
5
ENT
14
SHFT L D SHFT K B A ENT
ANDST 3 JMP 1 0

SHFT L
ANDST
D
3
A
0
C
2
D
3
A
0
A
0
ENT
A
SHFT W
ANDN
X
SET
C
2
A
0
A
0
A
0
ENT
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–199


Capítulo 5: Instrucciones de LCD

La instrucción LCD
La instrucción LCD causa que un mensaje definido de texto de LCD
1 DS5
HPP
Usado
N/A
usuario sea mostrado en el panel del visor LCD. El visor es 16
caracteres de ancho y 2 filas de alto de modo que puede ser
Line Number:
"text message"
Kn

mostrado un "mensaje de texto" de 32 caracteres. Cada fila se


2 define separadamente; el número máximo de caracteres que cada
instrucción aceptará es 16.
3 El mensaje de texto se puede entrar directamente en el campo de mensaje del diálogo de la
instrucción o se puede localizar dondequiera en la memoria V. Si el texto se localiza en la
4 memoria V, se usa la instrucción LCD para señalar el inicio de la localización de la memoria
donde está el texto deseado. También se debe colocar la longitud del texto.
5 De la carpeta del proyecto de DirectSOFT32, utilice el navegador de instrucciones para localizar
la instrucción LCD o use F7. Cuando usted selecciona la instrucción LCD y hace clic en OK,
aparecerá el diálogo del LCD, según lo mostrado en los ejemplos. La instrucción LCD se
6 inserta en el programa ladder a través de esta caja de diálogo de configuración.
Los textos del visor pueden tener variables incluidas. Se puede incluir la fecha y la hora y valores
7 de memoria V en el texto mostrado. Vea los ejemplos de cada caso.
Colocación directa de texto
8 Los dos diálogos muestran a la derecha las
selecciones necesarias para crear las dos
9 instrucciones ladder de la figura abajo. Deben
colocarse comillas en el texto definido. En el
primer diálogo, el texto "Nivel pozo bajo" usa
10 quince espacios de caracteres y aparecerá en la
línea 1 cuando la instrucción se activa. Note
11 que el número de la línea es K1. Haciendo clic
en el botón superior a la izquierda hace que la
12 instrucción sea colocada en el programa.

13 LCD
Line Number: K1
"Nivel pozo bajo"

14 LCD
Line Number: K2
A "Falla bomba 27"

B Identificando el segundo número de la línea


como K2, el texto "Falla bomba 27" aparecerá
C en la segunda línea del visor cuando se activa la
segunda instrucción.

D N i v e l p o z o b a j o
F a l l a b o m b a 2 7

5–200 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de LCD

Mostrando fecha y/o hora


Se puede incluir la fecha y/o la hora en el
texto desplegado usando las variables listadas
1
en la tabla abajo. Estas variables se pueden
incluir en el campo "Message" del diálogo 2
LCD. En el ejemplo, la variable de tiempo
(formato de 12 horas) es incluida colocando
_time:12. Este formato de tiempo usa un
3
máximo de siete espacios de caracteres. El
segundo diálogo crea una instrucción que 4
imprime la fecha en la segunda línea del visor,
cuando está activado. 5
Variables y formatos de fecha y hora
_date:us
_date:e
Formato de E.E.U.U
Formato deEuropa
MM/DD/AA
DD/MM/AA
6
_date:a Formato de Asia YY/MM/DD
_time:12 Formato de12 horas HH:MMAM/PM 7
_time:24 Formato de 24 horas HH:MM:SS

LCD
8
Line Number: K1
"Alarma 1 " _time:12 9
LCD
Line Number:
_date:us
K2 10
A l a r m a 1 1 1 : 2 1 P M 11
0 5 - 0 8 - 0 2
Colocando datos de memorias V 12
Cualquier dato en memoria puede ser
mostrado en cualquiera de seis formatos 13
disponibles de datos. Hay un ejemplo a la
derecha. 14
Hay una lista de formatos de datos y sufijos
en la próxima página. Note que formatos
diferentes de datos necesitan de una cantidad
A
diferente de caracteres en el visor.
LCD
B
Line Number:
"Piezas = " V2500:B
K2
C
P i e z a s = 0 4 1 2
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–201


Capítulo 5: Instrucciones de LCD

Sufijos de formatos de datos para datos incluídos de memoria V


Varios formatos de datos están disponibles para desplegar datos de memoria V en el LCD. Las
1 opciones se muestran en la tabla a continuación. Se usan dos puntos para separar la localización
incluída de memoria V del sufijo de formato de datos y calificativo. Vea el ejemplo anterior.
2 Formato de datos Sufijo Ejemplo Caracteres mostrados
V2000 = 0000 0000 0001 0010 1 2 3 4
3 ningún sufijo
V2000 1 8
(Formato de 16-bits) [:S] V2000:S 1 8
4 [:C0] V2000:C0
[:0] V2000:0
0 0 1
1
8
8
1 2 3 4
5 [:B]
V2000 = 0000 0000 0001 0010
V2000:B 0 0 1 2
:B
[:BS] V2000:BS 1 2
(4 dígitos BCD)
6 [:BC0] V2000:BC0 0 0 1 2
[:B0] V2000:B0 1 2

7 V2000 = 0000 0000 0000 0000


V2001 = 0000 0000 0000 0001 1 2 3 4
Palabra doble
5 6 7 8 9 10 11
:D [:D] V2000:D 6 5 5 3 6
8 (32 bits decimales) [:DS] V2000:DS 6 5 5 3 6
[:DC0] V2000:DC0 0 0 0 0 0 0 6 5 5 3 6
9 [:D0] V2000:D0
V2000 = 0000 0000 0000 0000
6 5
Palabra doble
5 3 6

1 2 3 4 5 6 7 8
10 :DB [:DB]
V2001 = 0000 0000 0000 0011
V2000:DB 0 0 0 3 0 0 0 0
(8 dígitos BCD) [:DBS] V2000:DBS 3 0 0 0 0
11 [:DBC0] V2000:DBC0 0 0 0 3 0 0 0 0
[:DB0] V2000:DB0 3 0 0 0 0

12 V2001/V2000 = 222.11111
(real number) 1 2 3 4
Palabra doble
5 6 7 8 9 10 11 12 13
:R
13 (Número real- Palabra [:R] V2000:R f 2 2 2 . 1 1 1 1 1
doble) [:RS] V2000:RS f 2 2 2 . 1 1 1 1 1
[:RC0] V2000:RC0 f 0 0 0 2 2 2 . 1 1 1 1 1
14 [:R0] V2000:R0 f 2 2 2 .
Palabra doble
1 1 1 1 1
V2001/V2000 = 222.1
(real number)
A :E
(Número real- Palabra [:E] V2000:E
1 2 3 4
f 2 . 2 2
5 6 7 8 9 10 11 12 13
1 0 0 E + 0 2
doble con exponente) [:ES] V2000:ES f 2 . 2 2 1 0 0 E + 0 2
B [:EC0] V2000:EC0 f 2 . 2 2 1 0 0 E + 0 2
[:E0] V2000:E0 f 2 . 2 2 1 0 0 E + 0 2

C f = indicación más/ menos (más = sin símbolo, menos = - )

Los calificativos “S”,” C0”, y “0” alteran la presentación de ceros y espacios a la izquierda. “S”
D saca los espacios y justifica el resultado a la izquierda. “C0” reemplaza los espacios delanteros
con ceros. “0” es una modificación de “C”0. “0” elimina cualquier cero delantero en la versión
de formato “C0” y los convierte a espacios.

5–202 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de LCD

Colocación de texto desde la memoria V


Alternativamente, un texto que ya está en la memoria V se puede mostrar en el visor LCD
siguiendo el ejemplo en esta página. El diálogo LCD se usa dos veces, una vez por cada línea en 1
el visor.
El diálogo necesita la dirección del primer carácter y el número de caracteres a ser exhibido. Por 2
ejemplo, los dos diálogos mostrados en la próxima página crearían las dos instrucciones LCD
de abajo. Cuándo activadas, estas instrucciones harían que sean exhibidos los caracteres ASCII
en V10000 -V10017. Los caracteres ASCII y sus direcciones correspondiente de memoria se
3
muestran en la tabla de abajo.
4
5
6
7
8
9
10
V10000
V10001
a
q
T
n
11
LCD V10002 e u
Line Number: K1 V10003 h 12
Starting V Memory Address: V10000 V10004 r o
Number of Characters: K16 V10005
V10006
o
C
n 13
V10007
LCD
Line Number: K2
V10010 l A 14
Starting V Memory Address: V10010
V10011 a t
Number of Characters: K16
V10012
V10013
t
m e
A
V10014 e p
V10015 a r B
V10016 u t
T a n q u e h o r n o C
A l t a t e m p e r a t u r a
V10017 a r
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–203


Capítulo 5: Instrucciones de MODBUS RTU

Instrucciones MODBUS RTU


1 La instrucción MODBUS Read from Network (MRX)
2 DS5
HPP
Usado
N/A
La instrucción MRX es usada por el maestro (master) de la red DL06 para leer un bloque de
datos de un aparato conectado como esclavo y para escribir los datos en direcciones de memoria
V dentro del maestro. La instrucción permite al usuario especificar si el puerto corresponde a la
3 CPU o al módulo D0-DCM, el código de la Función de MODBUS, la dirección de la estación
del esclavo, las direcciones de memoria de inicio del maestro y de esclavo, el número de
4 elementos para transferir, formato de datos de
MODBUS y la memoria intermedia (buffer) de
Respuesta de Excepción.
5 •CPU/DCM : especifica si el maestro lee datos desde el
puerto 2 o desde el módulo D0-DCM.
6 •Slot Number (Número de la ranura): debe ser la
ranura del PLC donde está instalado el D0-DCM).
7 •Port Number (Número del puerto): debe ser el
Puerto DL06 2 (K2).
8 •Slave Address (Dirección de esclavo): especifica una
dirección del esclavo (0-247).
9 •Function Code (Código de Función): Los siguientes
códigos de función MODBUS pueden ser manejados
10 por la instrucción MRX:
01 – Lea un grupo de bobinas
11 02 – Lea un grupo de entradas
03 – Lea registros
12 04 – Lea registros de entradas
07 – Lea el estado de Excepción
13 • Start Slave Memory Address (Dirección inicial de memoria de esclavo) : especifica la dirección de
memoria de esclavo de inicio de los datos a ser leídos. Vea la tabla en la página siguiente.
14 • Start Master Memory Address (Dirección de memoria inicial del maestro) : especifica la dirección
de memoria de inicio en el maestro, donde los datos serán colocados. Vea la página siguiente.
A •Number of Elements (Número de Elementos) : especifica cuántas bobinas, entradas, registros o
registro de entradas se leerán. Vea la tabla en la página siguiente.
B • MODBUS Data Format (Formatos de Datos de MODBUS): especifica el formato de datos
MODBUS 584/984 o 484 a ser usado.

C • Exception Response Buffer (Memoria Intermedia de Respuesta por Excepción): especifica la


dirección de memoria del PLC maestro donde se colocará la Respuesta por Excepción. Vea la tabla en la
página siguiente.
D

5–204 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de MODBUS RTU

Rangos de direcciones de esclavo MRX


Código de función
01 – Lea bobina
Formato de datos MODBUS Rango de direcciones de esclavo
Modo 484 1–999
1
01 – Lea bobina Modo 584/984 1–65535
02 – Lea estado de entradas Modo 484 1001–1999 2
02 – Lea estado de entradas Modo 584/984 10001–19999 (5 dígitos) o 100001–165535

03 – Lea Holding register Modo 484


(6 dígitos)
4001–4999
3
03 – Lea Holding register Modo 584/984 40001–49999 (5 dígitos) o 4000001–465535

04 – Lea Input register Modo 484


(6 dígitos)
3001–3999
4
04 – Lea Input register Modo 584/984 30001–39999 (5 dígitos) o 3000001–365535

07 – Lea estado Modo 484 y 584/984


(6 dígitos)
n/a
5
Rango de direcciones de memoria del maestro MRX
6
Tipo de operando de datos Rango del DL06
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 0–1777 7
Salidas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y 0–1777
Relevadores de control . . . . . . . . . . . . . . . . . . . C
Bits de etapas . . . . . . . . . . . . . . . . . . . . . . . . . . S
0–3777
0–1777
8
Bits de temporizadores . . . . . . . . . . . . . . . . . . . T 0–377
Bits de contadores . . . . . . . . . . . . . . . . . . . . . CT 0–377 9
Relevadores especiales . . . . . . . . . . . . . . . . . . SP 0–777
Memoria V. . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Entradas globales . . . . . . . . . . . . . . . . . . . . . . GX
all
0–3777
10
Salidas globales . . . . . . . . . . . . . . . . . . . . . . . GY 0–3777
11
Número de elementos
Tipo del operando de datos Rango en el DL06
12
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Todas
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K Bits: 1–2000 Registros: 1–125 13
Buffer de Exception Response 14
Tipo de operando de datos Rango del DL06
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Todas A
Ejemplo de MRX
B
See page 5-208
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–205


Capítulo 5: Instrucciones de MODBUS RTU

La instrucción MODBUS Write a Network (MWX)


La instrucción MWX usa para escribir un bloque de datos de la memoria del maestro de la red
1 del PLC DL06 a las direcciones de memoria de MODBUS dentro de un aparato esclavo en la
DS5 Usado red. La instrucción permite al usuario especificar si el puerto corresponde a la CPU o al módulo
2 HPP N/A D0-DCM, el código de la función de MODBUS, la dirección de la estación esclavo, las
direcciones de memoria inicial del maestro y esclavo, el número de elementos a transferir, el
formato de datos de MODBUS y la Memoria Intermediaria (buffer) de Respuesta por
3 Excepción.
•CPU/DCM : especifica si el maestro lee datos
4 desde el puerto 2 o desde el módulo D0-DCM.
•Slot Number (Número de la ranura): debe ser la
5 ranura del PLC donde está instalado el módulo
D0-DCM).
6 • Port number (número del puerto): Debe ser el
Puerto 2 (K2) del PLC DL06 o del D0-DCM
7 • Slave Address (Dirección de esclavo): especifica
una dirección de la estación esclavo (0-247).
8 • Function Code (Código de función): Los
siguientes códigos de función MODBUS
pueden ser manejados por la instrucción MRX:
9 05 – Fuerce una bobina
06 – Prefije un registro único
10 15 – Fuerce bobinas múltiplas
11 16 – Prefije registros múltiplos
• Start Slave Memory Address (Dirección de memoria inicial del esclavo) : Especifica la
dirección de memoria de esclavo de inicio de los datos a ser escritos. Vea la tabla en la página
12 siguiente.
• Start Master Memory Address (Dirección de memoria inicial del maestro) : especifica la
13 dirección de memoria de inicio en el maestro, de donde los datos serán escritos. Vea la tabla
en la página siguiente.
14 • Number of elements (Número de elementos) : Especifica cuántas bobinas, entradas, registros
o registro de entradas se escribirán. Vea la tabla en la página siguiente.
A • MODBUS Data Format (Formatos de datos de MODBUS): especifica el formato de datos
MODBUS 584/984 o 484 a ser usado.
B • Exception Response Buffer (Memoria Intermediaria de Respuesta por Excepción): especifica
la dirección maestro de memoria donde se colocará la Respuesta por Excepción. Vea la tabla
C en la página siguiente.

5–206 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de MODBUS RTU

Rangos de direcciones de esclavo MWX


Rangos de direcciones de memoria del maestro MWX 1
Tipo de operando de datos Rango del DL06
Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X
Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Y
0–1777
0–1777
2
Relevadores de control . . . . . . . . . . . . . . . . . . . C 0–3777
Bits de etapas . . . . . . . . . . . . . . . . . . . . . . . . . . S 0–1777 3
Bits de temporizadores . . . . . . . . . . . . . . . . . . . T 0–377
Bits de contadores . . . . . . . . . . . . . . . . . . . . . CT
Relevadores especiales. . . . . . . . . . . . . . . . . . SP
0–377
0–777
4
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Todas
Entradas globales . . . . . . . . . . . . . . . . . . . . . . GX 0–3777 5
Salidas globales . . . . . . . . . . . . . . . . . . . . . . . GY 0–3777

Rangos de direcciones de memoria del maestro MWX


6
Cantidad de elementos 7
Tipo de operando de datos Rango del DL06
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
all
Bits: 1–2000 Registros: 1–125
8
Número de elementos MWX 9
Número de elementos 10
Tipo del operando de datos Rango en el DL06
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Constante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Todas
Bits: 1–2000 Registros: 1–125
11
Buffer de exception response MWX 12
Cantidad de elementos
Tipo de operando de datos Rango del DL06 13
Memoria V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Todas
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–207


Capítulo 5: Instrucciones de MODBUS RTU

Ejemplo de MRX y de MWX


El puerto 2 del DL06 tiene dos contactos de relevadores especiales asociados con éste. Uno
1 indica “Puerto ocupado" (SP116), y el otro indica "Error de comunicación de puerto" (SP117).
El bit de “puerto ocupado" está ON mientras el PLC se comunica con un esclavo. Cuándo el
2 bit está apagado el programa puede iniciar el próximo pedido a la red.
El bit de "Error de comunicación de puerto" se activa cuando el PLC ha detectado un error. El
3 uso de este bit es opcional. Cuando se usa, debe estar adelante de cualquier instrucción de red
ya que el bit de error es vuelto a 0 cuando se ejecuta una instrucción MRX o MWX.
4 Típicamente las comunicaciones de red durarán más de 1 barrido. El programa debe esperar
terminar la comunicación para comenzar la próxima transacción. Es por eso que se coloca un
5 enclavamiento entre la lectura y la escritura con el relevador C150, en el ejemplo de la página
5-209.
El relevador interno C150 es usado para enclavar la lectura y la escritura. Vea por favor el
6 ejemplo mostrado abajo para entender como funciona el enclavamiento.
En algunas aplicaciones hay ruido electromagnético que puede bajar la cantidad de
7 transacciones y aparecen errores de comunicación. es perfectasmente aceptable tener un 5% de
errores en algunas aplicaciones. Los renglones 1 a 4 supervisan la cantidad de transacciones y
8 errores por minuto. El renglón 2 guarda el conteo de cada minuto, lo que permite calcular el
tiempo promedio que demora cada transacción.
9
10
11
12
13
14
A
B
C
D Continúa en la próxima página....

5–208 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones de MODBUS RTU

Cada vez que SP117 se cierra, se genera un pulso para ser contado

Error de comunicación CNT


4
SP117
CT17
K9999
1
C151

_FirstScan
SP0
2
Este renglón ejecuta una lectura MODBUS desde la dirección 48449 del esclavo con la
dirección 6 en 8 registros consecutivos. Escribirá el contenido en V10000 hasta V10007
3
del maestro DL06. Solamente puede estar activa una instrucción MWX o MRX (o WX o
RX) en un barrido dado del PLC. Esta es la razón por la cual se usa el enclavamiento
C150. Cuando se inicia la comunicación, el contacto C150 está cerrado en el renglón 2.
La instrucción MRX comienza a ser ejecutada y SP116 se hace ON. El contacto
normalmente cerrado SP116 en este renglón se abrirá mientras dure el uso del puerto 2
4
por la instrucción MRX. Y continúa cerrado hasta que SP116 se vuelva OFF (es decir,
el puerto 2 no está ocupado). En ese momento, el bit C150 se hace ON con la bobina
SETC150. Esto permite que el próximo renglón se haga activo.
5
5
Puerto ocupado
SP116
Bit de enclavamiento

C150
MRX
CPU/DCM Slot :
Port Number :
CPU
K2
6
Slave Address : K6
Function Code : 03 - Read Holding Registers
Start Slave Memory Address :
Start Master Memory Address :
Number of Elements :
K48449
V10000
K8
7
Modbus Data type : 584/984 Mode
Exception Response Buffer : V5400

C150
Bit de enclavamiento 8
SET

Este renglón ejecuta una escritura MODBUS a los registros 42331 y 42332 del esclavo
con la dirección 6. Escribirá el contenido de V2000 y V2001 respectivamente. Este
9
"function code" escribe varios registros. Use el código 06 para escribir a un registro en
una transacción. Solamente puede estar activa una instrucción MWX o MRX (o WX o
RX) en un barrido dado del PLC. Esta es la razón por la cual se usa el enclavamiento
C150. Cuando C150 hace ON en el renglón 2, el contacto C150 se cierra en el renglón
3. Esto hace que el renglón 3 esté activo. La instrucción MWX comenzará a
10
ejecutarse. Nuevamente SP116 se hace ON y se mantiene así hasta que SP116 no
esté más ocupado, lo que hace que SP116 sea OFF. En ese momento el bit C150 se
hace OFF con la bobina RST C150

Bit de enclavamiento MWX


11
Puerto ocupado CPU/DCM Slot : CPU
SP116 C150
6
Port Number :
Slave Address :
Function Code :
K2
K6
16 - Preset Multiple Registers
Start Slave Memory Address : K42331
12
Start Master Memory Address : V2000
Number of Elements :
Modbus Data type :
Exception Response Buffer :
584/984 Mode
K2

V5500
13
Bit de enclavamiento
C150
RST
14
7 END
A
B
En este ejemplo tratamos con una tasa de 9600 kbps. Hubo 1350 transacciones por minito
leídas en V11000; Cuando se aumentó a 38400 kbps, fueron 3535 transacciones por minuto. C
Por lo tanto, para una velocidad transmissión de 9600 kbps, cada transacción ocurre cada 44.4
milisegundos. Para 38400 kbps, cada, 19.98 ms. D

Manual del PLC DL06, 2a. edición en español, 6/07 5–209


Capítulo 5: Instrucciones ASCII

Instrucciones ASCII
1 El PLC DL06 utiliza varias instrucciones y métodos que permiten leer y escribir texto ASCII a
través del puerto 2 de comunicación o el módulo D0-DCM o aún desde el módulo
2 coprocesador F0-CP128. El puerto 2 del DL06 puede ser usado para leer o escribir formatos
ASCII pero no pueden ser usados ambos métodos al mismo tiempo en el mismo PLC, es decir,
es necesario hacer una lógica para que una operación sea ejecutada en un período y luego la otra
3 ejecutada en el próximo. Vea el apéndice G.
Vea una lista de transformación del código ASCII a decimal y a hexadecimal en el apéndice G.
4 El PLC DL06 también puede descifrar caracteres ASCII embutidos en uno de los protocolos
aceptados (K-sequence, DirectNet, Modbus) en el puerto del PLC.
5 Leyendo Texto ASCII
Hay varios métodos que el PLC DL06 puede usar para leer ASCII.
6 1) Instrucción de lectura ASCII IN (AIN) – Esta instrucción se usa para recibir texto ASCII
puro con parámetros tales como texto ASCII de longitud fija o variable, caracteres de
7 terminación, opción de intercambio de bytes e instrucciones de control. Puede usar lectores
de código de barras, balanzas, etc. para escribir texto ASCII al puerto 2 basados en los
parámetros de la instrucción AIN.
8 2) Escriba texto ASCII embutido directamente a la memoria V desde una interfase hombre
máquina o un aparato maestro similar usando un protocolo de los aceptados con el puerto
9 1 o 2 o el módulo D0-DCM. La instrucción AIN no se usa en este caso.
3) Si un PLC DL06 es maestro en una red, la instrucción RX (Network Read) puede ser usada
10 para leer datos ASCII embutidos, desde un esclavo, usando protocolos aceptados con el
puerto 2. La instrucción RX coloca los datos directamente en la memoria V.
11 Escribiendo Texto ASCII
Las siguientes instrucciones pueden ser usadas para escribir texto ASCII:
12 1) Print from V–memory (PRINTV) – Use esta instrucción para escribir texto ASCII puro,
almacenado en la memoria del PLC, por el puerto 2 a un panel o a una impresora serial. La
13 instrucción acepta la dirección inicial de memoria V, la longitud de la cadena, opción de
cambio de bytes, etc. Cuando el bit de permiso está activado, la cadena de texto es escrita en
el puerto 2.
14 2) Print a V–memory (VPRINT) – Use esta instrucción para crear cadenas ASCII en el PLC
(Por ejemplo mensajes de alarma). Cuando el bit de permiso de la instrucción está activado,
A el mensaje es escrito en una localización de memoria pre-definida. Luego la instrucción
PRINTV puede ser usada para escribir esta cadena ya definida saliendo por el puerto 2.
B Pueden ser usadas fechas de tipo americano, europeo o asiátic.
Adicionalmente, si un PLC DL06 es maestro en una red, la instrucción WR (Network write)
C puede ser usada para escribir datos ASCII embutidos a una interfase hombre máquina o a un
esclavo directamente desde la memoria V usando uno de los protocolos usados por el PLC con
el puerto 2.
D

5–210 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones ASCII

Administrando texto ASCII


Las siguientes instrucciones pueden ser útiles para programar las cadenas de texto ASCII en la
memoria del PLC DL06: 1
• ASCII Find (AFIND) –Encuentra en que localización de memoria está contenida una porción
especifica de la cadena ASCII. Se permiten búsquedas para adelante y para atrás. 2
• ASCII Extract (AEX) – Extrae una porción especifica de la cadena ASCII de una serie de
memorias V y lo coloca en otra serie de memorias.( Típicamente algún valor). 3
• Compare V–memory (CMPV) – Esta instrucción es usada para comparar 2 bloques de
memoria y es usada típicamente para detectar un cambio en una cadena ASCII. El tipo de 4
formato debe ser igual en ambos datos (por ejemplo, BCD, ASCII, etc.)
• Swap Bytes (SWAPB) – Típicamente usada para intercambiar bytes de una memoria en datos
ASCII que han sido escritos directamente a la memoria desde una interface hombre maquina
5
o equipo maestro similar con un protocolo de comunicación. Las instrucciones AIN y AEX
tienen la función de intercambio de bytes integrada. 6
• ASCII to HEX (ATH) –Convierte una tabla de valores ASCII a una tabla de valores
hexadecimales. 7
• HEX to ASCII (HTA) – Convierte una tabla de valores hexadecimales a una tabla de valores
ASCII. 8
Para poder usar las funciones de lectura y escritura ASCII, debe configurarse el puerto 2 con el
protocolo Non-Sequence. Vea más detalles en el apéndice K de este manual. 9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–211


Capítulo 5: Instrucciones ASCII

La instrucción ASCII Input (AIN)


La instrucción AIN permite recibir cadenas ASCII a través del puerto 2 y coloca la cadena en una
1 DS5 Usado
serie de memorias (Una tabla). Los datos ASCII pueden ser recibidos como un número fijo de bytes
HPP N/A o como una cadena variable con un o más caracteres de terminación especificados. Otras
2 características incluyen, preferencia de intercambio de bytes, tiempo de llegada excedido,(Timeout)
y bits de alarma libremente definidos para Ocupado (Busy), Completo ( Complete) y error de
tiempo ( Timeout error).
3 Configuración AIN de longitud fija
• Length Type: Seleccione Fixed Length
4 de acuerdo a la longitud de la cadena
ASCII que será enviada al puerto del
PLC.
5 •CPU/DCM : especifica si el maestro
lee datos desde el puerto 2 o desde el
6 módulo D0-DCM.
• Port Number: Siempre puerto No. 2
7 (K2)
• Data Destination: Especifique donde
8 en la memoria será colocada la cadena
ASCII.
• Fixed Length: Especifique la longitud,
9 en bytes, de la cadena ASCII que será
recibida por el puerto.
10 • Inter–character Timeout: si el periodo de los caracteres ASCII entrantes excede el tiempo ajustado,
será activado. el error de timeout. No será almacenada ninguna información en la localización de
memoria de destino. El bit será desactivado cuando el renglón donde está la instrucción está
11 desactivado. Un valor de 0 ms elimina esta función.
• First Character Timeout: Si el período transcurrido entre cuando AIN está activado hasta el
12 tiempo que el primer carácter es recibido es mayor que el valor prefijado, será activado el bit de First
Carácter Timeout. Este bit será desactivado cuando la instrucción AIN sea desactivada. Un valor
de 0 ms elimina esta función.
13 • Byte Swap: Intercambia el byte más alto con el más bajo en cada memoria V de la cadena ASCII
de longitud fija. Vea la instrucción SWAPB para más detalles.
14 • Busy Bit: Este está ON cuando la instrucción AIN está recibiendo datos ASCII.
• Complete Bit: Se coloca ON cuando los datos ASCII han sido recibidos con la longitud
A especificada y OFF cuando los bits que hacen la instrucción AIN activa están desactivados.
• Inter–character Timeout Error bit: Se coloca ON cuando el Character Timeout ha sido
B sobrepasado. Vea la explicación de Character Timeout arriba.
• First Character Timeout Error bit: Se coloca ON cuando el Character Timeout ha sido
sobrepasado. Vea la explicación de Character Timeout arriba.
C
D

5–212 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones ASCII

Antes de cada lectura, debe hacerse un reset de la instrucción AIN. Puede hacerse esta acción
desactivando y activando el renglón donde está AIN o también con la instrucción ACBR (vea la
página 5-228), 1
Parámetro
Destino de los datos
Longitud fija
Todas las memorias V
K1–128
2
Bits: Busy, Complete, Timeout Error, Overflow C0–3777
3
Ejemplos de longitud fija de AIN
Ejemplo de longitud fija cuando el PLC está leyendo el puerto continuamente y el tiempo de 4
operación no es crítico.
AIN
5
AIN completado CPU/DCM Slot : CPU
C1
1
Port Number :
Data Destination :
Fixed Length :
K2
V4000
K32
6
Interchar. Timeout : 20ms
First Char. Timeout :
Byte Swap :
None
All
7
Busy : C330
Complete : C331
Interchar. Timeout Error :
First Char. Timeout Error :
C332
n/a
8
9
AIN completado
C1
Datos leídos
C100
10
2 OUT

Ejemplo de longitud fija cuando el tiempo de transmisión carácter a carácter es crítico. 11


Timeout entre AIN
12
caracteres CPU/DCM Slot : DCM Slot 1

3
AIN completado
C1 C2
Port Number :
Data Destination :
K2
V2000
13
Fixed Length : K32
Interchar. Timeout : 20ms
First Char. Timeout :
Byte Swap :
500ms
All
14
Busy : C0
Complete :
Interchar. Timeout Error :
First Char. Timeout Error :
C1
C2
C3
A
B
AIN completado Datos leídos
C
C1 C100
4 OUT
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–213


Capítulo 5: Instrucciones ASCII

Configuración AIN de longitud variable:


• Length Type: Seleccione Variable
1 Length de acuerdo a la longitud de
la cadena ASCII que será enviada
2 al puerto del PLC.
• CPU/DCM : especifica si el
3 maestro lee datos desde el puerto 2
o desde el módulo D0-DCM.
4 • Port Number: Siempre use el
puerto No. 2 (K2)
5 • Data Destination: Especifique
donde será colocada la cadena
ASCII en la memoria.
6 • Maximum Variable Length:
Especifique, en bytes, la máxima
7 longitud de la cadena ASCII que
será recibida por el puerto.
8 • Inter–character Timeout: si el
período de los caracteres ASCII entrantes excede el tiempo ajustado, será activado el error de
Timeout. No será almacenada ninguna información en la localización de memoria de destino.
9 El bit será desactivado cuando el renglón donde está la instrucción está desactivado. Un valor
de 0 ms elimina esta función.
10 • First Character Timeout: Si el período transcurrido entre cuando AIN está activado hasta el
tiempo que el primer carácter es recibido es mayor que el valor prefijado, el bit de First
11 Carácter Timeout será activado. Este bit será desactivado cuando la instrucción AIN sea
desactivada. Un valor de 0 ms elimina esta función.
12 • Byte Swap: Intercambia el byte más alto con el más bajo en cada memoria de la cadena ASCII
de longitud variable. Vea la instrucción SWAPB para las detalles.
13 • Termination Code Length: consiste de uno o dos caracteres como valor hexadecimal. Vea la
tabla ASCII en el apéndice G.
• Overflow Error Bit: ES colocado ON cuando los datos ASCII recibidos exceden la longitud
14 variable máxima especificada.
• Busy Bit: Este bit está ON cuando la instrucción AIN está recibiendo datos ASCII.
A • Complete Bit: Se coloca ON cuando los datos ASCII han sido recibidos hasta que se termina
de recibir los caracteres de terminación y OFF cuando los bits que hacen real la instrucción
B AIN están desactivados.
• Inter–character Timeout Error Bit: Se coloca ON cuando el Character Timeout ha sido
C sobrepasado. Vea la explicación de Character Timeout arriba.
• First Character Timeout Error Bit: Se coloca ON cuando el Character Timeout ha sido
D sobrepasado. Vea la explicación de Character Timeout arriba.

5–214 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones ASCII

Parámetro
Destino de los datos
Longitud variable
Todas las memorias V
K1–128
1
Bits: Busy, Complete, Timeout Error, Overflow C0–3777
2
Ejemplo de longitud variable con AIN
Ejemplo de AIN con longitud variable usado para leer códigos de barras en cajas 3
En este ejemplo se tiene un lector de código de barras que lee el código de una caja de cartón
sobre una correa transportadora detectado por un sensor photoelectrico conectado a la entrada 4
X5. Los datos son colocados en formato ASCII en el conjunto de 40 registros consecutivos que
comienzan en V2000. 5
Caja detectada
X5
Lea el código
C6
6
9 SET

7
AIN

10
Lea el código
C6
CPU/DCM Slot :
Port Number :
Data Destination :
CPU
K2
V2000
8
Maximum Variable Length : K40
Interchar. Timeout :
First Char. Timeout :
Byte Swap :
100ms
2000ms
None
9
Termination Code(s) : 0D
Overflow Error : C20
Busy :
Complete :
Interchar. Timeout Error :
C21
C22
C23
10
First Char. Timeout Error : C24

11
11
AIN completad
C22
Lea el código
C6
RST
12
Error de timeout entre
caracteres
C23
13
Errror de timeout del
primer carácter
C24
14
Error de Overflow de AIN
C20
A
B
12
AIN completad
C22
Datos leídos
C100
OUT
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–215


Capítulo 5: Instrucciones ASCII

La instrucción ASCII Find (AFIND)


La instrucción AFIND localiza una cadena ASCII específica o una porción de ella en un rango
1 DS5
HPP
Usado
N/A
de registros y coloca un número en una memoria especificada, número que corresponde al
número del byte donde se encontró la cadena deseada. Este número se llama Found Index.
2 Otras características incluyen número Search Starting Index (Índice de inicio de búsqueda)
para saltar los bytes que no son necesarios antes de iniciar la operación de búsqueda, búsqueda
3 en la dirección Forward o Reverse, es decir, para adelante o para atrás y por último la selección
de cual es el lado de donde se comienza a contar el valor Found Index. (From Beginning o
From End)
4 Aquí está la definición de cada uno de los parámetros:
• Base Address (Dirección base): Define el comienzo de una tabla de memorias donde está
5 almacenada la cadena ASCII.
• Total Number of Bytes (Cantidad de bytes): Define el número total de bytes que serán vistos
6 para encontrar el texto ASCII deseado.El número máximo es 128 bytes.
• Search Starting Index (Indice de búsqueda): Define hasta que byte se va a saltar (con respecto
7 a la dirección base) antes de iniciar la búsqueda.
• Direction - Forward: es la dirección de inicio para buscar la cadena desde memorias de
8 localización baja para memorias de localización alta. Reverse es la dirección de inicio para
buscar la cadena desde memorias de localización alta para memorias de localización baja.
9 • Found Index Value( # de índice encontrado): Define si el byte inicial o final de la cadena
ASCII será cargado en la memoria Found
Index.
10 • Found Index: Define la dirección de memoria
donde será almacenado el Found Index
11 number. Si el texto deseado no es encontrado
el contenido de esta memoria será FFFF.
12 • Search for String: La cadena a ser buscada,
con hasta 128 caracteres.
13
14 Parámetro Rango del DL06
Dirección base Toda la memoria V
A Número total de bytes Toda la memoria V o K1–128
Search Starting Index Toda la memoria V o K0–127

B Found Index Toda la memoria V

C
D NOTA: No se necesitan comillas en el elemento Search for String Las comillas son caracteres válidos
que AFIND puede buscar.

5–216 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones ASCII

Ejemplo de búsqueda con AFIND


En el ejemplo siguiente, se usa la instrucción AFIND para buscar la porción "tes" en la palabra
"Martes" en el texto ASCII "Ayer fue Martes", que ha sido colocado en una tabla de memorias. 1
Note que el valor Search Starting Index (K)3 combinado con un Forward Direction Search es
usado para prevenir que se encuentre esta secuencia de texto antes del tercer caracter. El Found
Index number será colocado en V4000.
2
3
Quizás necesite hacer un “byte swap” en
la cadena ASCII buscada, dependiendo
de como fueron colocados los datos
4
ASCII.
5
Note que no se colocan
6
comillas alrededor del
texto de búsqueda
(Search String).
7
Use comillas solamente
si son realmente parte
del texto de búsqueda
8
(Search for String)
9
10
Caracteres ASCII
Hexadec. equivalente
11
Base address
(Dirección base)
Reverse Direction Search
0 A
1 y
41h
79h
Low
High V3000 12
2 e 65h Low
(Dirección de búsqueda reversa) V3001
3
4
r 72h
20h
High
Low
V3002
13
Search start Index Number 5 f 66h High
(Indice de búsqueda) 6 u
7 e
75h
65h
Low
High V3003 14
Forward Direction Search 8 20h Low V3004
(dirección de búsqueda para adelante) 9
M
10 a
40h
61h
High
Low
V3005
A
11 r 72h High
Beginning Index Number
(Número de índice inicial)
12 t
13 e
74h
65h
Low
High
V3006 B
End Index Number 14 s 73h Low
V3007
(Número de índice final) 15 . 2Eh High C
Found Index Number = 0012 V4000
D
(# de índice encontrado)

Manual del PLC DL06, 2a. edición en español, 6/07 5–217


Capítulo 5: Instrucciones ASCII

Ejemplo de instrucción AFIND combinado con instrucción AEX


Se puede usar el bit Complete de una instrucción AIN para activar una instrucción AFIND para
1 encontrar un conjunto de texto ASCII. Cuando éste sea encontrado, la instrucción AEX puede
usarse para extraer el texto localizado. Vea el ejemplo a continuación.
2 AIN Complete AFIND
C1
3 15
Base Address:
Total Number of Bytes:
V2001
K32
Search Starting Index: K0
4 Direction: Forward
Found Index Value: From Beginning
Found Index: V2200
5 Code 39
Atraso para completar
la instrucción AFIND

6 C7
SET

7 Atraso para completar Texto de búsqueda


no encontrado Datos no encontrados
la instrucción AFIND
C7 con AFIND
8 16
V2200 Kffff C10
SET

9 Atraso para completa


la instrucción AFIND
C7

10 RST

Atraso para completar Datos no encontrados


11 la instrucción AFIND
C7
con AFIND
C10
TMR T0
Tiempo para hacer
17 instrucción AFIND
12 Tiempo para hacer
K2

instrucción AFIND AEX


13 18
T0
Source Base Address: V2001
Extract at Index: K0
14 Number of Bytes:
Shift ASCII Option:
K4
None
Byte Swap: All

A Convert ASCII: To BCD (HEX)


Destination Base Address: V3000

B Atraso para completar


la instrucción AFIND
C7

C RST

5–218 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones ASCII

La instrucción ASCII Extract (AEX)


La instrucción ASCII Extract (AEX) extrae un número especificado de bytes de datos ASCII de
DS5 Usado
una tabla de memoria y la coloca en otra tabla. 1
HPP N/A
Otras características incluyen
Extract at Index que es iniciar la extracción a un número prefijado de bytes para saltar bytes no
2
necesarios antes de comenzar la operación de extracción.
Shift ASCII option, que permite desplazar los datos extraídos para conveniencia 3
Byte Swap que es intercambio de bytes en una palabra
Convertir datos a un número BCD.
4
Aquí está la definición de cada uno de los parámetros:
• Source Base Address (Dirección de la tabla fuente): Define el comienzo de la tabla de
5
memorias donde la cadena ASCII está almacenada.
• Extract at Index: Define a que byte va a saltar (siendo el inicio el Source base Address) antes
6
de extraer los datos.
• Number of Bytes: define el número de bytes a ser extraído.
7
• Shift ASCII Option: : Desplaza todos los datos extraídos un byte a la izquierda o a la derecha
para remover caracteres no deseados, si fuera necesario. 8
• Byte Swap: Intercambia el byte más alto con el más bajo en cada palabra de memoria de los
datos extraídos. Vea la instruccion SWAPB para más detalles. 9
• Convert BCD(Hex) ASCII a BCD (Hex): Esta selección permite convertir datos numéricos
ASCII a números Hexadecimal. 10
• Destination Base Address: Define la
dirección de memoria donde serán 11
almacenados los datos extraídos.
Vea un ejemplo en la página anterior. 12
Parámetro Rango del DL06
13
Dirección fuente Dirección fuente
Extraiga al "Index" Extraiga al "Index" 14
Rango
Número de bytes Memoria V que
constante:
Cuando "convert BCD(Hex) K1–128
ASCII" no esté marcado.
contiene el valor BCD:
1–128
A
Number of Bytes Rango
Cuando "convert BCD(Hex) constante:
Memoria V que
contiene el valor BCD: B
ASCII" está marcado K1–4 1–4

Dirección de destino Toda la memoria V C


D

Manual del PLC DL06, 2a. edición en español, 6/07 5–219


Capítulo 5: Instrucciones ASCII

La instrucción ASCII Compare (CMPV)


La instrucción CMPV compara dos tablas de
1 DS5
HPP
Usado
N/A
memoria. Esta instrucción compara cualquier
tipo de datos (ASCII a ASCII< BCD a BCD,
2 etc.) de una tabla de memorias a otra tabla de
memorias por una longitud de bytes definida.
Es resultado de la comparación es dado por el
3 relevador especial SP61.
Aquí está la definición de cada uno de los Si SP61 es 1, el resultado de la comparación
4 parámetros: es igual.
• “Compare from” Starting Address: Esta Si SP61 es 0, el resultado de la comparación
5 dirección define el comienzo de la tabla de no es igual.
memorias con un texto ASCII a la cual será comparada la segunda tabla de memorias.
6 • “Compare to” Starting Address: Esta dirección define el comienzo de la segunda tabla de
memorias donde está la cadena ASCII.
7 • Number of Bytes: Número define la longitud de cada tabla de memoria a ser comparada.

8
Parámetro Rango del DL06
9 Compare desde la dirección inicial
Compare a la dirección inicial
Toda la memoria V
Toda la memoria V
Número de bytes K0–127
10
Ejemplo de CMPV
11 La instrucción CMPV se ejecuta cuando la instrucción AIN ha sido completada. Si el resultado
de la comparación es igual, SP61 se hará ON y C11 será activado.
12
13 AIN Complete

C1
CMPV
14 "Compare from" Starting Address: V2001
"Compare to" Starting Address: V10001
A Number of Bytes: K32

B Los textos son iguales


SP61 C11
C OUT

5–220 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones ASCII

La instrucción ASCII Print a V–memory (VPRINT)


La instrucción VPRINT escribirá una cadena
DS5 Usado
ASCII definida en uno de los campos de la 1
HPP N/A instrucción en una tabla de memorias.
Esta instrucción puede intercambiar bytes, 2
puede suprimir ceros a la izquierda, convertir
espacios a ceros, usar fecha en formato
EE.UU., europeo o asiático y horas en
3
formato de 12 horas o de 24 horas.
Aquí está la definición de cada uno de los
4
parámetros:
• Byte Swap: Este parámetro intercambia el
5
byte más alto con el más bajo en cada
palabra de la memoria donde la cadena 6
ASCII es escrita, si es seleccionado ALL; para
no hacer este intercambio seleccione None. 7
• Print a Starting V–memory Address: Este
parámetro define el comienzo de la tabla de
memorias donde será colocada la cadena
8
ASCII por la instrucción VPRINT. La primera memoria de la tabla contendrá la longitud en
bytes de la cadena ASCII. La segunda memoria y las que siguen contendrán los datos ASCII 9
de la cadena impresa en la tabla.
• Message: Aquí en "mensaje" se escribe el texto a ser almacenado en la tabla de memorias, entre
comillas (""); Acepta contenidos numéricos de memorias o fechas y hora.
10
NOTA: Starting V-memory Address (Dirección de memoria inicial) es la primera memoria V de la serie de 11
memorias especificadas que contendrá la longitud de la secuencia de texto ASCII en bytes. La
memoria V +1 y las memorias subsecuentes contendrán la secuencia de texto ASCII que se imprime
a la memoria V.
12
Parámetro Rango del DL06 13
Imprima a la dirección inicial de memoria V Todo el rango de memoria V

Colocación de fecha y hora con VPRINT– Pueden ser usados los códigos mostrados en la tabla 14
de abajo en la secuencia de texto con VPRINT ASCII para “imprimir a la memoria” la fecha y
hora corriente. A
# Character code Date / Time Stamp Options
1 _date:us Norma americana (Mes/día/año con 2 dígitos) B
2 _date:e Norma europea (día/mes/año con 2 dígitos)
3
4
_date:a
_time:12
Norma asiática (año con 2 dígitos/mes. Día)
Norma de 12 horas (0-12:minutos AM/PM)
C
5 _time:24 Norma de 24 horas (0-24:minutos)
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–221


Capítulo 5: Instrucciones ASCII

Modificadores de números contenidos en memoria – Los siguientes modificadores de


números pueden ser usados en un mensaje VPRINT para almacenar el número en formato
1 entero o real. Puede usar el número contenido en una memoria V sin modificador o con el
modificador de tipo de datos después de ":". Los tipos de datos son mostrados en la tabla abajo:
2 El código debe ser escrito con mayúsculas.

NOTA: Debe colocar un espacio antes y después de la dirección de memoria V para separarla de la cadena
3 de texto. Si no hace ésto aparece el error 499.

# Character code Descripción


4 1 none Binario de 16 bits (Número decimal)
2 :B BCD de 4 dígitos
5 3
4
:D
:DB
Binario de 32 bits (Número decimal)
BCD de 8 dígitos
5 :R Número de punto flotante (Número real)
6 6 :E Número de punto flotante (Número real con exponente)
Ejemplos:
7 V2000 imprime datos binarios en V2000 como decimal
V2000 : B imprime datos BCD en V2000
8 V2000 : D imprime datos binarios en V2000 y V2001 como decimal
9 V2000 : D B imprime datos en V2000 y V2001
V2000 : R imprime datos de punto flotante en V2000 y V2001como número real
10 V2000 : E imprime datos de punto flotante en V2000/V2001como número real con exponente
Los siguientes modificadores pueden ser agregados a los anteriores para suprimir o convertir
11 ceros a la izquierda o espacios. El código debe ser escrito con mayúsculas.
# Código de caracteres Descripción
12 1
2
S
C0
Elimina espacios a la izquierda
Convierte espacios a la izquierda a ceros
3 0 Elimina ceros a la izquierda
13 Ejemplo con V2000 = 0018 (Formato binario)
Memoria con Número de caracteres
14 modificador 1 2 3 4
V2000 0 0 1 8
A V2000:B
V2000:B0
0
1
0
2
1 2

Ejemplo con V2000 = sp sp 0018 (Formato binario) donde "sp" significa espacio
B Memoria con Número de caracteres
modificador 1 2 3 4
C V2000 sp sp 1 8
V2000:B sp sp 1 2
D V2000:BS
V2000:BC0
1
0
2
0 1 2

5–222 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones ASCII

Modificadores de texto contenido en memoria – El siguiente modificador de longitud de


texto puede ser usado en un mensaje VPRINT para almacenar el texto a partir de la primera o
consecutivas direcciones de memoria. Use el signo "%" seguido del número de caracteres en la 1
cadena que Ud. desea imprimir. Si usa "0" como número de caracteres, la instrucción leerá la
cantidad de caracteres desde la primera dirección. Luego comenzará en la próxima dirección y 2
leerá la cantidad leída de caracteres ASCII indicada allí desde la memoria indicada.
Ejemplo: 3
V2000 % 16 Se transfieren 16 caracteres en V2000 hasta V2007
V2000 % 0 Se transfieren XX caracteres a partir de V2001 (XX es determinado por el 4
número almacenado en V2000).
Modificadores de bits contenidos en memoria– Los siguientes modificadores de estados de 5
bits en una memoria o en un relevador de control pueden ser usados en un mensaje VPRINT
para almacenar un cierto formato. Puede usarse la dirección del relevador o la memoria seguida 6
# Formato de datos Descripción
1
2
Sin modificador
: BOOL
Imprime un "1" para el estado ON; "0" para OFF
Imprime "TRUE" para el estado ON; "FALSE" para OFF
7
3 : ONOFF Imprime "ON" para el estado ON; "OFF" para OFF
8
de "." Y el número de bit con el modificador de tipo de datos después de ":". Los tipos de datos
son mostrados en la tabla abajo: El código debe ser escrito con mayúsculas. 9
Ejemplos:
V2000 . 15 imprime el estado del bit 15 en V2000 en el formato 1 o 0. 10
C100 imprime el estado de C100 en el formato 1 o 0.
C100 : BOOL imprime el estado de C100 en el formato TRUE o FALSE 11
C100 : ON/OFF imprime el estado de C100 en el formato ON u OFF
V2000.15 : imprime el estado del bit 15 en V2000 en el formato TRUE o FALSE.
12
El máximo número de caracteres que se puede operar con VPRINT es 128. En la lista a
continuación es mostrado el número requerido por cada elemento, sin importar si se usa o no 13
los modificadores :S, :C0 o :0.

Tipo de elemento Cantidad máxima de caracteres


14
Texto, 1 carácter
Binario de 16 bit
1
6
A
Binario de 32 bit 11
BCD de 4 dígitos
BCD de 8 dígitos
4
8
B
Punto flotante (Número real) 3
Punto flotante (real con exponente) 13 C
Texto en memoria V 2
Bit (formato 1/0)
Bit (formato TRUE/FALSE)
1
5
D
Bit (formato ON/OFF) 3

Manual del PLC DL06, 2a. edición en español, 6/07 5–223


Capítulo 5: Instrucciones ASCII

Modificadores de caracteres especiales – Los siguientes modificadores pueden ser usados en


un mensaje VPRINT para almacenar caracteres especiales. Caracteres en una cadena ASCII son
1 definidos como los caracteres contenidos entre comillas (") en el campo de mensaje en VPRINT.
Dos números hexadecimales que sean precedidos por el signo $ significa un código de caracteres
2 ASCII de 8 bits. También, dos caracteres precedidos por el signo $ es interpretado de acuerdo a
la siguiente tabla:

3 # Código de carácter Descripción


1 $$ Signo dólar ($)
4 2
3
$”
$L o $l
Comillas (")
Line feed (LF) usado por ejemplo con impresoras

5 4
5
$N o $n
$P o $p
Carriage return line feed (CRLF)
Form feed
6 $R o $r Carriage return (CR)
6 7 $T o $t Tab
Los siguientes ejemplos muestran varias convenciones de sintaxis y la longitud de la salida a la
7 impresora.

”” Longitud 0 sin ningún carácter


8 ”A” Longitud 1 con carácter A
” ” Longitud 1 con espacio en blanco
9 ” $” ”
”$R$L”
Longitud 1 con comillas
Longitud 2 con un CR y un LF
”$0D$0A” Longitud 2 con un CR y un LF
10 ”$$” Longitud 1 con un carácter $
Al imprimir una línea de texto, Ud. deberá incluir comillas antes y después de la cadena de
11 texto. Aparecerá el error 499 en la CPU si la instrucción contiene texto inválido o no contiene
comillas. Es importante probar los datos de la instrucción VPRINT durante el desarrollo del
12 programa.

13
14
A
B
C
D

5–224 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones ASCII

Ejemplo de VPRINT combinado con la instrucción PRINT V


Se usa aquí la instrucción VPRINT para crear una cadena de caracteres en la memoria Vque
se inicia en V4000. Luego se usa la instrucción PRINTV para generar una salida de caracteres 1
ASCII por el puerto 2 del PLC.
2
Permiso para crear

28
la secuencia de texto
C12 VPRINT
Byte Swap: All
3
"Print to" Address V4000

"STX" V3000:B"$0D" 4
Atraso para VPRINT
C13
SET
5
29
Atraso para VPRINT
C13 TMR T1 6
Tiempo de demora
de VPRINT
7
K10

Tiempo de demora
8
de VPRINT
T1 PRINTV
30 Port Number:
Start Address:
K2
V4001
9
Number of Bytes: V4000
Append:
Byte Swap:
Busy:
None
None
C15
10
Complete: C16

Atraso para VPRINT


11
C13
RST
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–225


Capítulo 5: Instrucciones ASCII

La instrucción ASCII Print from V–memory (PRINTV)


La instrucción PRINTV enviará un texto ASCII de longitud determinada definida en una tabla
1 DS5
HPP
Usado
N/A
de memorias saliendo por el puerto 2 de la CPU o del módulo D0-DCM.
Esta instrucción puede agregar caracteres definidos por el usuario después de un texto de datos
2 para aparatos que requieren caracteres específicos de terminación, puede intercambiar bytes y
usar indicaciones definidas por el usuario
para los estados Busy y Complete.
3 Aquí está la definición de cada uno de los
parámetros:
4 • CPU/DCM : especifica si el maestro lee
datos desde el puerto 2 o desde el módulo
5 D0-DCM.
• Port Number: Para el PLC DL06 debe ser
6 siempre puerto 2 (K2)
• Start Address (Dirección inicial) : define el
7 comienzo de una tabla que contiene la
cadena ASCII a ser transferida.
8 • Number of Bytes (cantidad de bytes):
define la longitud de la cadena a ser
transferida.
9 • Append Characters: Define los caracteres
ASCII a ser agregados al final de la cadena
10 para aparatos que necesiten caracteres de
terminación. Debe ser escrito en
11 hexadecimal.
• Byte Swap: Este parámetro intercambia el
12 byte más alto con el más bajo en cada
palabra de la memoria donde la cadena ASCII mientras imprime. Vea la instrucción SWAPB
para más detalles.
13 • Busy Bit: Este bit, a ser definido por el usuario, cambia a ON mientras la instrucción está
imprimiendo datos ASCII. Muestra que la CPU está ocupada.
14 • Complete Bit: Este bit, a ser definido por el usuario, cambia a ON cuando la instrucción
terminó de imprimir y es OFF cuando los bits de permiso de ejecución de la instrucción
A PRINTV están desactivados (Es decir, el renglón es falso).
Vea el ejemplo de la página anterior para ver el uso de esta instrucción.
B Parámetro Rango en el DL06
CPU/DCM Ranura 1 a 4
C Port number (número de puerto) Puerto 2 (K2)
Start Address (Dirección inicial) Todas las memorias V

D Number of bytes (Cantidad de Bytes)


Bits: Busy, Complete
Toda la memoria o k1–128
C0–3777

5–226 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones ASCII

La instrucción ASCII Swap Bytes (SWAPB)


DS5 Usado
La instrucción SWAPB intercambia posiciones de bytes (del byte más alto al más bajo y
viceversa) en cada memoria de la tabla que contiene una cadena ASCII (o un conjunto de
1
HPP N/A
datos no necesariamente ASCII)
Aquí está la definición de cada uno de los parámetros: 2
• Starting Address: Este campo define la dirección del
comienzo de la tabla de memorias que usará la 3
instrucción para intercambiar bytes.
• Number of Bytes: Este campo define el número de 4
bytes a ser intercambiados a partir de la dirección
Starting Address. 5
• Byte Swap: Define si será intercambiados todos los
bytes o todos menos el primero. 6
Parámetro Rango del DL06
Starting Address
Number of Bytes
Cualquier memoria V
Todas las memorias V o K1–128
7
SP53
Indicadores Descripción
On si la CPU no puede ejecutar la instruccción.
8
SP71 On cuando un valor usado por la instrucción es inválido.
9
Preferencias de Byte Swap
No Byte Swapping (sin intrercambio de bits) Byte 10
Alto Bajo
(AIN, AEX, PRINTV, VPRINT)

A B C D E xx
V2477
B
0005h
A
11
V2500
V2501
V2502
D
xx
C
E
12
Byte Swap All (Intrecambie todo) Byte 13
Alto Bajo
A B C D E xx
V2477
V2500 A
0005h
B
14
V2501
B A D C xx E V2502
C
E
D
xx
A
Byte Swap All but Null ( Intercambie todo
excepto el carácter NULL) Byte
B
High Low
A B C D E xx
V2477 0005h
C
V2500 B A
V2501 D C D
B A D C E xx V2502 xx E

Manual del PLC DL06, 2a. edición en español, 6/07 5–227


Capítulo 5: Instrucciones ASCII

Ejemplo de SWAPB
1 El bit Complete de AIN se usa para activar la instrucción SWAPB. Use la instrucción STRPD
para que la instrucción SWAPB sea ejecutada en un barrido solamente.

2
3 AIN complete
C1 SWAPB

4 21
Starting Address: V2001
Number of Bytes: K32
5 Byte Swap: All

La instrucción ASCII Clear Buffer (ACRB)


6 DS5 Usado Esta instrucción limpia el buffer (memoria internediaria de almacenaje temporario) de
HPP N/A recibimiento del puerto 2 del PLC DL06 de los caracteres recibidos.
7 Ejemplo de ACRB

8
9
10
11 El bit AIN Complete o los bits de diagnóstico de AIN se utilizan para limpiar el buffer o la
memoria de almacenaje intermediaria de caracteres ASCII.

12 Ain Complete
ACRB
C1
K2
13 33
Intercharacter timeout
C2
14
Firstcharacter timeout
A C3

B AIN overflow error


C4

C
D

5–228 Manual del PLC DL06, 2a. edición en español, 6/07


Chapter 5: Standard RLL Instruccións

1
2
3
4
5
6
7
Esta página ha sido dejada en blanco intencionalmente. 8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–229


Capítulo 5: Instrucciones Intelligent Box (IBox)

Instrucciones (IBox) o Cuadros Inteligentes


1 Las instrucciones designadas comúnmente Iboxes, enumeradas en esta sección son nuevas
instrucciones disponibles al usar DirectSOFT5 para programar su PLC DL06 (el PLC DL06
2 requiere la versión v2.10 de firmware o mas nuevo para usar las nuevas funciones de
DirectSOFT5). Para más información sobre DirectSOFT5 y para bajar una versión gratuita,
visite por favor nuestro sitio de Internet en: www.automationdirect.com.
3 IBoxes de ayuda de señales analógicas
Instrucción Ibox # Página
4 Analog Input / Output Combo Module PunteroSetup (ANLGCMB) IB-462 5-232
Analog Input Module PunteroSetup (ANLGIN) IB-460 5-234
5 Analog Output Module PunteroSetup (ANLGOUT)
Analog Scale 12 Bit BCD to BCD (ANSCL)
IB-461
IB-423
5-236
5-238

6 Analog Scale 12 Bit Binary to Binary (ANSCLB)


Filter Over Time - BCD (FILTER)
IB-403
IB-422
5-239
5-240
Filter Over Time - Binary (FILTERB) IB-402 5-242
7 Hi/Low Alarm - BCD (HILOAL)
Hi/Low Alarm - Binary (HILOALB)
IB-421
IB-401
5-244
5-246

8 IBoxes de ayuda de señales discretas


Instrucción Ibox # Página
9 Off Delay Timer (OFFDTMR) IB-302 5-248
On Delay Timer (ONDTMR) IB-301 5-250

10 One Shot (ONESHOT)


Push On / Push Off Circuit (PONOFF)
IB-303
IB-300
5-252
5-253

11 IBoxes de memorias
Instrucción Ibox # Página
12 Move Single Word (MOVEW)
Move Double Word (MOVED)
IB-200
IB-201
5-254
5-255

13 IBoxes de aritmética
Instrucción Ibox # Página
14 BCD to Real with Implied Decimal Point (BCDTOR)
Double BCD to Real with Implied Decimal Point (BCDTORD)
IB-560
IB-562
5-256
5-257
Math - BCD (MATHBCD) IB-521 5-258
A Math - Binary (MATHBIN) IB-501 5-260
Math - Real (MATHR) IB-541 5-262
B Real to BCD with Implied Decimal Point and Rounding (RTOBCD)
Real to Double BCD with Implied Decimal Point and Rounding (RTOBCDD)
IB-561
IB-563
5-263
5-264
Square BCD (SQUARE) IB-523 5-265
C Square Binary (SQUAREB) IB-503 5-266
Square Real(SQUARER) IB-543 5-267
D Sum BCD Numbers (SUMBCD)
Sum Binary Numbers (SUMBIN)
IB-522
IB-502
5-268
5-269
Sum Real Numbers (SUMR) IB-542 5-270

5–230 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

IBoxes de Comunicación 1
Instrucción Ibox # Página
ECOM100 Configuration (ECOM100)
ECOM100 Disable DHCP (ECDHCPD)
IB-710
IB-736
5-272
5-274
2
ECOM100 Enable DHCP (ECDHCPE) IB-735 5-276
ECOM100 Query DHCP Setting (ECDHCPQ) IB-734 5-278 3
ECOM100 Send E-mail (ECEMAIL) IB-711 5-280
ECOM100 Restore Default E-mail Setup (ECEMRDS)
ECOM100 E-mail Setup (ECEMSUP)
IB-713
IB-712
5-281
5-286
4
ECOM100 IP Setup (ECIPSUP) IB-717 5-290
ECOM100 Read Descripción (ECRDDES) IB-726 5-292 5
ECOM100 Read Gateway Address (ECRDGWA) IB-730 5-294
ECOM100 Read IP Address (ECRDIP)
ECOM100 Read Module ID (ECRDMID)
IB-722
IB-720
5-296
5-298
6
ECOM100 Read Module Name (ECRDNAM) IB-724 5-300
ECOM100 Read Subnet Mask (ECRDSNM) IB-732 5-302 7
ECOM100 Write Descripción (ECWRDES) IB-727 5-304
ECOM100 Write Gateway Address (ECWRGWA)
ECOM100 Write IP Address (ECWRIP)
IB-731
IB-723
5-302
5-304
8
ECOM100 Write Module ID (ECWRMID) IB-721 5-310
ECOM100 Write Name (ECWRNAM) IB-725 5-312 9
ECOM100 Write Subnet Mask (ECWRSNM) IB-733 5-314
ECOM100 RX Network Read (ECRX)
ECOM100 WX Network Write(ECWX)
IB-740
IB-741
5-316
5-319
10
NETCFG Network Configuration (NETCFG) IB-700 5-322
Network RX Read (NETRX) IB-701 5-324 11
Network WX Write (NETWX) IB-702 5-327

IBoxes de CTRIO
12
Instrucción Ibox # Página
CTRIO Configuration (CTRIO) IB-1000 5-330 13
CTRIO Add Entry to End of Preset Table (CTRADPT) IB-1005 5-332
CTRIO Clear Preset Table (CTRCLRT)
CTRIO Edit Preset Table Entry (CTREDPT)
IB-1007
IB-1003
5-335
5-338
14
CTRIO Edit Preset Table Entry and Reload (CTREDRL) IB-1002 5-342
CTRIO Initialize Preset Table (CTRINPT) IB-1004 5-346 A
CTRIO Initialize Preset Table (CTRINTR) IB-1010 5-350
CTRIO Load Profile (CTRLDPR)
CTRIO Read Error (CTRRDER)
IB-1001
IB-1014
5-354
5-357
B
CTRIO Run to Limit Mode (CTRRTLM) IB-1011 5-359
CTRIO Run to Position Mode (CTRRTPM) IB-1012 5-362 C
CTRIO Velocity Mode (CTRVELO) IB-1013 5-365
CTRIO Write File to ROM (CTRWFTR) IB-1006 5-368 D

Manual del PLC DL06, 2a. edición en español, 6/07 5–231


Capítulo 5: Instrucciones Intelligent Box (IBox)

Configurador del módulo de entradas y salidas análogas (ANLGCMB) (IB-462)


Esta instrucción genera la lógica para configurar el método del puntero para un módulo análogo
1 DS5
HPP
Usado
N/A combinación de entradas y salidas en el primer barrido del PLC después de una transición de
modo program a RUN.
2 La instrucción ANLGCMB determina el
formato de datos y las direcciones del
3 puntero basadas en el tipo de CPU, el
número de la base y de la ranura del
módulo.
4 La dirección de datos de entrada es la
localización inicial de memoria V en
5 donde serán almacenados los valores de los
datos de entrada análoga y crea una
6 localización para cada canal de entrada.
La dirección de datos de salidas es la
7 localización inicial de memoria V de usuario en donde los valores de los datos de salidas análoga
serán puestos por código ladder o un dispositivo externo, creando una localización para cada
canal de salida.
8 Puesto que la lógica de IBox se ejecuta solamente en el primer barrido, la instrucción no puede
tener ninguna lógica de entrada.
9 Parámetros ANLGCMB
• Base # (K0-Local): Debe ser 0 para PLC DL06.
10 • Slot # (Ranura): Especifica qué ranura de opción del PLC es ocupada por el módulo análogo (1-4)
• Number of Input Channels: Especifica el número de canales de entradas análogas a ser explorados.
11 • Input Data Format (0-BCD 1-BIN): Especifica el formato de datos de entradas análogas (BCD o
binario) - el formato binario puede ser usado para exhibir datos en paneles de interface de operador.
12 • Input Data Address: Especifica la localización de memoria V inicial que será utilizada para
almacenar los datos de entradas análogas.
13 • Number of Output Channels: Especifica el número de canales de salidas análogas que serán usados.
• Output Data Format (0-BCD 1-BIN): Especifica el formato de los datos de salidas análogas (BCD
o binario).
14 • Output Data Address: Especifica la localización de memoria V inicial que será usada como origen
de los datos de salidas análogas.
A Parámetro Rango del DL06
Base # (K0-Local) . . . . . . . . . . . . . . . . . . . . . . . K K0 (Solamente base local)
B Slot # . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K1-4
Number of Input Channels . . . . . . . . . . . . . . . . K K1-8
C Input Data Format (0-BCD 1-BIN) . . . . . . . . . . . K
Input Data Address . . . . . . . . . . . . . . . . . . . . . . V
BCD: K0; Binario: K1
Vea el mapa de memoria V del DL06 - Data Words
Number of Output Channels . . . . . . . . . . . . . . . K K1-8
D Output Data Format (0-BCD 1-BIN) . . . . . . . . . K BCD: K0; Binario: K1
Output Data Address . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

5–232 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ANLGCMB
En el ejemplo siguiente, se usa la instrucción ANLGCMB para configurar el método del
puntero para un módulo de combinación de E/S análogas que esté instalado en la ranura de 1
opción 2. Se activan cuatro canales de entradas y los datos de salidas análogas serán escritos a
V2000 - V2003 en formato BCD. Se activan dos canales de salidas y los valores análogos serán
leídos en V2100 - V2101 en formato BCD.
2
3
4
5
No se usan contactos de permiso o lógica
de entrada con esta instrucción 6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–233


Capítulo 5: Instrucciones Intelligent Box (IBox)

Configurador del módulo de entrada análoga (ANLGIN) (IB-460)


La configuración del módulo de entradas análogas genera la lógica para configurar el método del
1 DS5 Usado
puntero para un módulo de entradas análogas en el primer barrido del PLC después de una
HPP N/A transición de modo program a RUN.
2 Este IBox determina el formato de datos
y las direcciones del puntero basadas en
3 el tipo de CPU, el número de la base y
de la ranura.
4 La dirección de los datos de entrada es la
localización de memoria V de usuario
inicial en donde serán almacenados los
5 valores de datos de entradas análogas,
creando una localización para cada canal
6 de entrada.
Puesto que esta lógica se ejecuta solamente en el primer barrido, este IBox no puede tener
7 ninguna lógica de entrada.

8 Parámetros ANLGIN
• Base # (K0-Local): Debe ser 0 para PLC DL06.
9 • Slot #: Especifica qué ranura de opción del PLC es ocupada por el módulo análogo (1-4)
• Number of Input Channels: Especifica el número de canales de entradas análogas a ser explorados.
10 • Input Data Format (0-BCD 1-BIN): Especifica el formato de datos de entradas análogas (BCD o
binario) - el formato binario puede ser usado para exhibir datos en paneles de interface de operador.
• Input Data Address: Especifica la localización de memoria V inicial que será utilizada para almacenar
11 los datos de entradas análogas.

12 Parámetro
Base # (K0-Local) . . . . . . . . . . . . . . . . . . . . . . . K
Rango del DL06
K0 (Solamente base local)

13 Slot # . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Number of Input Channels . . . . . . . . . . . . . . . . K
K1-4
K1-8
Input Data Format (0-BCD 1-BIN) . . . . . . . . . . . K BCD: K0; Binario: K1
14 Input Data Address . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

A
B
C
D

5–234 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ANLGIN
En el ejemplo siguiente, se usa la instrucción ANLGIN para configurar el método del puntero
para un módulo de entradas análogas que esté instalado en la ranura de opción 1. Se activan 1
ocho canales de entradas y los datos análogos serán escritos a V2000 - V2007 en formato BCD.
2
3
4
No se usan contactos de permiso o lógica
de entrada con esta instrucción 5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–235


Capítulo 5: Instrucciones Intelligent Box (IBox)

Configurador del módulo de salidas análogas (ANLGOUT) (IB-461)


La instrucción configurador del módulo de salidas análogas genera la lógica para configurar el
1 DS5 Usado método del puntero para un módulo de salidas análogas en el primer barrido del PLC después
HPP N/A de una transición de modo program a RUN.
2 Este IBox determina el formato de datos
y las direcciones del indicador basadas
3 en el tipo de CPU, el número de la base
y de la ranura.
4 La dirección de los datos de salidas es la
localización inicial de memoria V de
usuario en donde los valores de los datos
5 de salidas análogas serán puestos por
código ladder o un dispositivo externo,
6 siendo una localización para cada canal
de salida.
7 Puesto que esta lógica se ejecuta solamente en el primer barrido, este IBox no puede tener
ninguna lógica de entrada.

8 Parámetros ANLGOUT
9 • Base # (K0-Local): Debe ser 0 para PLC DL06.
• Slot #: Especifica qué ranura de opción del PLC es ocupada por el módulo análogo (1-4)

10 • Number of Output Channels: Especifica el número de canales de salidas análogas que serán usados.
• Output Data For: Especifica el formato de los datos de salidas análogas (BCD o binario).

11 • Output Data Address: Especifica la localización de memoria V inicial que será usada como origen de
los datos de salidas análogas.

12 Parámetro Rango del DL06


Base # (K0-Local) . . . . . . . . . . . . . . . . . . . . . . . K K0 (local base only)
13 Slot # . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K1-4
Number of Output Channels . . . . . . . . . . . . . . . K K1-8
14 Output Data Format (0-BCD 1-BIN). . . . . . . . . . K
Output Data Address . . . . . . . . . . . . . . . . . . . . . V
BCD: K0; Binary: K1
Vea el mapa de memoria V del DL06 - Data Words

A
B
C
D

5–236 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ANLGOUT
En el ejemplo siguiente, se utiliza la instrucción ANLGOUT para configurar el método del
puntero para un módulo de salidas análogas que esté instalado en la ranura de opción 3. Son 1
activados dos canales de salidas y los datos análogos serán leídos en V2100 - V2101 en formato
BCD. 2
3
4
No se usan contactos de permiso o lógica
de entrada con esta instrucción 5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–237


Capítulo 5: Instrucciones Intelligent Box (IBox)

Escala de un valor análogo de 12 bits BCD a BCD (ANSCL) (IB-423)


Esta instrucción escala un valor análogo BCD de 12 bits (BCD 0-4095) en unidades de
1 DS5 Usado ingeniería BCD. Usted especifica el valor de la unidad de ingeniería más alto (cuando el valor
HPP N/A sin escala es 4095), y el valor de ingeniería más bajo (cuando el valor sin escala es 0), y la
2 dirección de memoria V de salida que usted
desea poner el valor de unidad que dirige
escalado. Las unidades de ingeniería se generan
3 como BCD y pueden estar en el el rango
completo de 0 a 9999 (Vea la instrucción
4 ANSCLB - si sus unidades sin escala están en
formato binario).
5 Observe que esta instrucción IBox trabaja
solamente con valores unipolares sin escala
positivos. No trabaja con valores bipolares ni
6 con valores crudos de magnitud más signo.

7 Parámetros ANSCL
• Raw (0-4095 BCD): Especifica la localización de la memoria V donde está el valor unipolar sin escala
8 de rango 0-4095.
• High Engineering: Especifica el alto valor de ingeniería cuando la entrada es 4095.
9 • Low Engineering: Especifica el alto bajo de ingeniería cuando la entrada es 0.
• Engineering (BCD): Especifica la memoria V en donde será colocado el valor a escala BCD.
10 Parámetro Rango del DL06
Raw (0-4095 BCD) . . . . . . . . . . . . . . . . . . . . . V,P Vea el mapa de memoria V del DL06 - Data Words
11 High Engineering . . . . . . . . . . . . . . . . . . . . . . . . K K0-9999
Low Engineering . . . . . . . . . . . . . . . . . . . . . . . . K K0-9999

12 Engineering (BCD) . . . . . . . . . . . . . . . . . . . . . V,P


Ejemplo de ANSCL
Vea el mapa de memoria V del DL06 - Data Words

En el ejemplo siguiente, se utiliza la instrucción ANSCL para colocar a escala un valor crudo
13 (BCD 0-4095) que esté en V2000. El rango de la escala de ingeniería se define como 0-100
(valor bajo de ingeniería - alto valor de ingeniería). El valor a escala será colocado en V2100 en
14 formato BCD.

A
B
C
D

5–238 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Escala de un valor análogo de 12 bits binario a binario (ANSCLB) (IB-403)


Esta instrucción escala un valor análogo binario de 12 bits (0-4095 decimal) en unidades de
DS5 Usado
ingeniería binarias. Usted especifica el valor de la unidad de ingeniería más alto (cuando el valor 1
HPP N/A sin escala es 4095), y el valor de ingeniería más bajo (cuando el valor sin escala es 0), y la
dirección de memoria V de salida que usted desea poner el valor de unidad que dirige escalado
Las unidades de ingeniería se generan como
2
binarias y pueden estar en el el rango completo
de 0 a 9999 (Vea la instrucciónANSCL - si sus 3
unidades sin escala están en formato BCD).
Observe que esta instrucción IBox trabaja 4
solamente con valores unipolares sin escala
positivos. No trabaja con valores bipolares ni
con valores crudos de magnitud más signo.
5
6
Parámetros ANSCLB
• Raw (12 bit binary): Especifica la localización de la memoria V donde está el valor unipolar sin
escala de rango (12 bit binario = 0-4095 decimal)
7
• High Engineering: Especifica el alto valor de ingeniería cuando la entrada es 4095.
• Low Engineering: Especifica el alto bajo de ingeniería cuando la entrada es 0.
8
• Engineering (binary): Especifica la memoria V en donde será colocado el valor a escala binario o
decimal. 9
Parámetro
Raw (12 bit binary) . . . . . . . . . . . . . . . . . . . . V,P
Rango del DL06
Vea el mapa de memoria V del DL06 - Data Words
10
High Engineering . . . . . . . . . . . . . . . . . . . . . . . . K K0-65535
Low Engineering . . . . . . . . . . . . . . . . . . . . . . . . K K0-65535 11
Engineering (binary) . . . . . . . . . . . . . . . . . . . . V,P Vea el mapa de memoria V del DL06 - Data Words
12
Ejemplo de ANSCLB
En el ejemplo siguiente, la instrucción ANSCLB es usada para colocar a escala un valor crudo
(0-4095 binario) que esté en V2000. El rango del escalamiento de ingeniería se define como
13
0-1000 (valor bajo de ingeniería - alto valor de ingeniería). El valor escalado será colocado en
V2100 en formato binario. 14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–239


Capítulo 5: Instrucciones Intelligent Box (IBox)

Filtro - BCD (FILTER) (IB-422)


La instrucción FILTER realizará un filtro de primer orden en los datos en bruto sobre un
1 DS5 Usado
intervalo definido de tiempo.La ecuación es:
HPP N/A
Nuevo valor = Valor antiguo+ [(Valor en bruto- Valor antiguo) / FDC]
2 donde,
Nuevo valor: Nuevo valor filtrado
3 Valor antiguo: Valor filtrado antiguo
FDC: Constantee divisor del filtro
4 Valor en bruto: Datos en bruto
La Constantee divisor del filtro FDC es un
5 número entero en el rango K1 a K100, tal que
crea un amortiguamiento sobre el valor en
6 bruto y si es igual a K1 entonces entonces no sería hecho ningun filtrado.
La frecuencia en la cual se realiza el cálculo se especifica por tiempo en centésimos de un
7 segundo (0,01 segundo) como el parámetro del constantee tiempo del filtro. Observe que hay
una instrucción de temporizador embutida en el IBox y no debe ser usado en cualquier otro
lugar en su programa. El control del renglón determina si el cálculo será ejecutado. Si es falso,
8 el valor del filtro no es actualizado. En el primer barrido deonde pasa de modo program al modo
RUN, el valor del filtro se inicializa a 0 para dar al cálculo un punto de partida consistente.
9
Parámetros de la instrucción FILTER
10 • Filter Frequency Timer: Especifica el número del temporizador (T) que es usado por la instrucción
Filter
11 • Filter Frequency Time (0.01sec): Especifica la frecuencia en la cual se realiza el cálculo
• Raw Data (BCD): Especifica la localización de memoria V del valor sin filtro en bruto BCD
12 • Filter Divisor (1-100): Esta contante es usada para controlar el efecto de filtrado. Un valor más grande
aumentará el efecto que alisamiento del filtro.Un valor de 1 resulta sin filtrado.
13 • Filtered Value (BCD): Especifica la localización de memoria C en donde será colocado el valor
filtrado en BCD

14
Parámetro Rango del DL06
A Filter Frequency Timer . . . . . . . . . . . . . . . . . . . T
Filter Frequency Time (0.01 sec) . . . . . . . . . . . K
T0-377
K0-9999
Raw Data (BCD) . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
B Filter Divisor (1-100) . . . . . . . . . . . . . . . . . . . . . K K1-100
Filtered Value (BCD) . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
C
D

5–240 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de FILTER
En el ejemplo siguiente, es usada la instrucción FILTER para filtrar un valor en BCD que esté
en V2000. El temporizador (T0) se coloca a 0.5 s, la frecuencia en la cual el cálculo del filtro 1
será realizada. La constantee del filtro se coloca en 2. Un valor más grande aumentará el efecto
de alisamiento del filtro. Un valor de 1 resulta sin filtrado. El valor filtrado será colocado en
V2100.
2
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–241


Capítulo 5: Instrucciones Intelligent Box (IBox)

Filtro Binario (FILTERB) (IB-402)


1 DS5 Usado
La instruccion filtro binario (decimal) realizará un filtro de primer orden en los datos en
bruto sobre un intervalo definido de tiempo. La ecuación es
HPP N/A Nuevo valor = Valor antiguo+ [(Valor en bruto- Valor antiguo) / FDC]
2 donde,
Nuevo valor: Nuevo valor filtrado
3 Valor antiguo: Valor filtrado antiguo
4 FDC: Constantee divisor del filtro
Valor en bruto Datos en bruto
5 La Constantee divisor del filtro FDC es un
número entero en el rango K1 a K100, tal que
crea un amortiguamiento sobre el valor en bruto
6 y si es igual a K1 entonces no sería hecho ningun
filtrado.
7 La frecuencia en la cual se realiza el cálculo se especifica por tiempo en centésimos de un
segundo (0,01 segundo) como el parámetro del constante tiempo del filtro. Observe que hay
8 una instrucción de temporizador embutida en el IBox y no debe ser usado en cualquier otro
lugar en su programa. El control del renglón determina si el cálculo será ejecutado. Si es falso,
el valor del filtro no es actualizado. En el primer barrido deonde pasa de modo program al modo
9 RUN, el valor del filtro se inicializa a 0 para dar al cálculo un punto de partida consistente.

10 Parámetros de la instrucción FILTERB


• Filter Frequency Timer: Especifica el número del temporizador (T) que es usado por la instrucción
11 FilterB
• Filter Frequency Time (0.01sec): Especifica la frecuencia en la cual se realiza el cálculo
12 • Raw Data (Binario): Especifica la localización de memoria V del valor sin filtro en bruto binario
(decimal)
13 • Filter Divisor (1-100): Esta contante es usada para controlar el efecto de filtrado. Un valor más grande
aumentará el efecto que alisamiento del filtro.Un valor de 1 resulta sin filtrado.

14 • Filtered Value (Binario): Especifica la localización de memoria C en donde será colocado el valor
filtrado en binario

A
Parámetro Rango del DL06
B Filter Frequency Timer . . . . . . . . . . . . . . . . . . . T
Filter Frequency Time (0.01 sec) . . . . . . . . . . . K
T0-377
K0-9999
Raw Data (Binary) . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
C Filter Divisor (1-100) . . . . . . . . . . . . . . . . . . . . . K K1-100
Filtered Value (Binary) . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
D

5–242 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de FILTERB
En el ejemplo siguiente, es usada la instrucción FILTERB para filtrar un valor en binario que
está en V2000. El temporizador (T1) se coloca a 0,5 s, la frecuencia en la cual el cálculo del 1
filtro será realizada. La constantee del filtro se coloca en 3.0. Un valor más grande aumentará
el efecto de alisamiento del filtro. Un valor de 1 resulta sin filtrado. El valor filtrado será
colocado en V2100.
2
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–243


Capítulo 5: Instrucciones Intelligent Box (IBox)

Alarma Hi/Low - BCD (HILOAL) (IB-421)


1 DS5 Usado
Esta instrucción supervisa el valor BCD de una posición de memoria V y configura cuatro
estados posibles de alarmas, Alta-Alta, Alta, Baja, y Baja-Baja siempre que la instrucción IBox
HPP N/A
sea verdadera. Usted define los niveles de alarmas como valores constantees BCD (K0-k9999)
2 o como valor de memoria V en BCD.
Usted debe asegurarse de que los niveles de
3 alarma sean válidos, esto es, HH > = H > L > =
LL. Note que cuando la condición de alarma
4 Alto-Alta o Baja-Baja es verdadera, la alarma alta
y baja también estará activada, respectivamente.
5 Esto significa que usted puede usar el mismo
nivel y la misma alarma para las alarmas Alta-
6 Alta y Alta en caso de que usted necesite
solamente una "alarma Alta".También observe
que las condiciones de límite son inclusivas. Es
7 decir, si el límite bajo es K50, y el límite Baja-Baja es K10, y si el valor de supervisión iguala 10,
después la alarma Baja y la alarma Baja-Baja quiere ambas estén ENCENDIDAS. Si no hay
8 flujo de energía al IBox, entonces todos los bits de alarmas serán desactivados sin importar el
valor del parámetro de supervisión.
9
Parámetros de HILOAL
10 • Monitoring Value (BCD): Especifica la memoria V del valor BCD que se supervisará.
• High-High Limit: Constantee o memoria V que especifica el nivel de alarma Alta-Alta.
11 • High-High Alarm: Bit de alarma Alta Alta activada cuando se alcanza el nivel High-High limit
• High Limit: Memoria V o constantee que especifica el nivel de alarma Alta
12 • High Alarm: Bit de alarma Alta activada cuando se alcanza el nivel High limit
• Low Limit: Memoria V o constantee que especifica el nivel de alarma Baja
13 • Low Alarm: Bit de alarma Baja activada cuando se alcanza el nivel Low limit
• Low-Low Limit: Memoria V o constantee que especifica el nivel de alarma Low Low limit
14 • Low-Low Alarm: Bit de alarma Baja activada cuando se alcanza el nivel

A Parámetro
Monitoring Value (BCD) . . . . . . . . . . . . . . . . . . V
Rango del DL06
Vea el mapa de memoria V del DL06 - Data Words
High-High Limit . . . . . . . . . . . . . . . . . . . . . . . V, K K0-9999; or Vea el mapa de memoria V del DL06 - Data Words
B High-High Alarm . . . . . . . . . . . X, Y, C, GX,GY, B Vea el mapa de memoria DL06
High Limit . . . . . . . . . . . . . . . . . . . . . . . . . . . V, K K0-9999; or Vea el mapa de memoria V del DL06 - Data Words
C High Alarm. . . . . . . . . . . . . . . . X, Y, C, GX,GY, B
Low Limit . . . . . . . . . . . . . . . . . . . . . . . . . . . V, K
Vea el mapa de memoria DL06
K0-9999; or Vea el mapa de memoria V del DL06 - Data Words
Low Alarm . . . . . . . . . . . . . . . . X, Y, C, GX,GY,B Vea el mapa de memoria DL06
D Low-Low Limit . . . . . . . . . . . . . . . . . . . . . . . V, K K0-9999; or Vea el mapa de memoria V del DL06 - Data Words
Low-Low Alarm . . . . . . . . . . . . X, Y, C, GX,GY, B Vea el mapa de memoria DL06

5–244 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de HILOAL
En el ejemplo siguiente, la instrucción de HILOAL es usada para supervisar un valor BCD que
está en V2000. Si el valor en V2000 exceede el valor de K900, se activará C101. Si el valor 1
continúa aumentando hasta el nivel High-high, se activrá el bit C100. Ambos bits estarían
encendido en este caso. Los niveles y alarmaa alta y alta-alta se pueden definir al mismo valor si
se desea usar una alarma "Alta".
2
Si el valor en V2000 es igual o cae debajo del nivel K200, se desactivará C102. Si el valor
continúa disminuyendo debajo del límite Bajo-Bajo K100, se desactivará C103 .Ambos bits
3
estarían encendido en este caso. Las alarmas baja y baja-baja se pueden definir al mismo valor si
se desa usar una alarma "Baja". 4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–245


Capítulo 5: Instrucciones Intelligent Box (IBox)

Alarm Hi/Low- Binaria (HILOALB) (IB-401)


1 DS5 Usado
Esta instrucción supervisa el valor binario de una posición de memoria V y configura cuatro
estados posibles de alarmas, Alta-Alta, Alta, Baja, y Baja-Baja siempre que la instrucción IBox
HPP N/A
sea verdadera. Usted define los niveles de alarmas como valores constantees binarios (K0-
2 K65535) o como valor de memoria V en
binario.
3 Usted debe asegurarse de que los niveles de
alarma sean válidos, esto es, HH > = H > L > =
4 LL. Note que cuando la condición de alarma
Alto-Alta o Baja-Baja es verdadera, la alarma
5 alta y baja también estará activada,
respectivamente. Esto significa que usted puede
6 usar el mismo nivel y la misma alarma para las
alarmas Alta-Alta y Alta en caso de que usted
necesite solamente una "alarma Alta".También
7 observe que las condiciones de límite son
inclusivas. Es decir, si el límite bajo es K50, y el límite Baja-Baja es K10, y si el valor de
8 supervisión iguala 10, después la alarma Baja y la alarma Baja-Baja quiere ambas estén
ENCENDIDAS. Si no hay flujo de energía al IBox, entonces todos los bits de alarmas serán
9 desactivados sin importar el valor del parámetro de supervisión.
Parámetros de HILOALB
10 • Monitoring Value (Binario): Especifica la memoria V del valor binario que se supervisará.
• High-High Limit: Constantee o memoria V que especifica el nivel de alarma Alta-Alta.
11 • High-High Alarm: Bit de alarma Alta Alta activada cuando se alcanza el nivel High-High limit
• High Limit: Memoria V o constantee que especifica el nivel de alarma Alta
12 • High Alarm: Bit de alarma Alta activada cuando se alcanza el nivel High limit
• Low Limit: Memoria V o constantee que especifica el nivel de alarma Baja
13 • Low Alarm: Bit de alarma Baja activada cuando se alcanza el nivel Low limit
• Low-Low Limit: Memoria V o constantee que especifica el nivel de alarma Low Low limit
14 • Low-Low Alarm: Bit de alarma Baja activada cuando se alcanza el nivel

Parámetro Rango del DL06


A Monitoring Value (Binary) . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
High-High Limit . . . . . . . . . . . . . . . . . . . . . . . V, K K0-65535; o Vea el mapa de memoria V del DL06 - Data Words
B High-High Alarm . . . . . . . . . . . X, Y, C, GX,GY, B Vea el mapa de memoria DL06
High Limit . . . . . . . . . . . . . . . . . . . . . . . . . . . V, K K0-65535; o Vea el mapa de memoria V del DL06 - Data Words
C High Alarm. . . . . . . . . . . . . . . . X, Y, C, GX,GY, B
Low Limit . . . . . . . . . . . . . . . . . . . . . . . . . . . V, K
Vea el mapa de memoria DL06
K0-65535; o Vea el mapa de memoria V del DL06 - Data Words
Low Alarm . . . . . . . . . . . . . . . . X, Y, C, GX,GY,B Vea el mapa de memoria DL06
D Low-Low Limit . . . . . . . . . . . . . . . . . . . . . . . V, K K0-65535; o Vea el mapa de memoria V del DL06 - Data Words
Low-Low Alarm . . . . . . . . . . . . X, Y, C, GX,GY, B Vea el mapa de memoria DL06

5–246 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de HILOALB
En el ejemplo siguiente, la instrucción HILOALB es usada para supervisar un valor binario que
esté en V2000. Si el valor en V2000 es igual o mayor que el límite alto del valor binario en 1
V2011, el bit C101 se activa. Si el valor continúa aumentando hasta ser igual o ser mas grande
que el valor límite Alto-Alto en V2010, se activará el bit C100. Ambos bits estarían encendidos
en este caso. Los límites y las alarmas Alta y Alta-Alta se pueden configurar al mismo valor o
2
memoria V si se desea usar un límite o alarma "Alta".
Si el valor en V2000 satisface o baja debajo del límite bajo del valor binario en V2012, se
3
activará el bit C102. Si el valor continúa disminuyendo debajo del límite Bajo-Bajo en V2013,
se activará el bit C103. Ambos bits estarían encendidos en este caso. Los límites y las alarmas 4
Baja y Baja-Baja se pueden definir con la misma memoriaV o el mismo valor si se desea usar un
límite o alarma Baja. 5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–247


Capítulo 5: Instrucciones Intelligent Box (IBox)

Temporizador Off Delay (OFFDTMR) (IB-302)


El temporizador Off delay retrasa "el apagado" del parámetro de salida (Output) especificado en
1 DS5 Usado la instrucción (en centésimo de segundo) basado en el flujo de energía en el IBox. Una vez que
HPP N/A el IBox reciba energía, el bit de salida se encenderá inmediatamente. Cuando el flujo de energía
2 al IBox hace falso, la salida segurá
ENCENDIDA por la cantidad de tiempo
especificada (en centésimo de segundo). Una
3 vez que el tiempo ha expirado, la salida se
apagará. Si el flujo de energía al IBox se hace
4 verdadero ANTES DE QUE el tiempo de
retardo se haya cumplido, el temporizador se
5 rearma y la salida seguirá encendida - así que
usted no debe continuamente tener NINGÚN
flujo de energía al IBox POR LO MENOS el
6 tiempo de retardo especificado antes de que la
salida se apague.
7 Este IBox utiliza un temporizador (TMRF), que no debe ser usado en cualquier otro lugar en
el programa ladder.
8
Parámetros de OFFDTMR
9 • Timer Number: Especifica el número del temporizador (TMRF) que es usado por la instrucción
OFFDTMR

10 • Off Delay Time (0,01sec): Especifica cuánto tiempo la salida seguirá encendida si el flujo de energía
al Ibox se torna falso
• Output: Especifica la salida que será apagada con un retardo de tiempo.
11
Parámetro Rango del DL06
12 Timer Number . . . . . . . . . . . . . . . . . . . . . . . . . T
Off Delay Time . . . . . . . . . . . . . . . . . . . . . . . . K,V
T0-377
K0-9999; Vea el mapa de memoria V del DL06 - Data Words
Output . . . . . . . . . . . . . . . . . . . . X, Y, C, GX,GY, B Vea el mapa de memoria DL06
13
14
A
B
C
D

5–248 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de OFFDTMR
En el ejemplo siguiente, se usa la instrucción OFFDTMR para retrasar la salida C20. El
temporizador 2 (t2) define el retardo en 5 segundos. 1
Cuando se cierra el contacto C100, C20 se activa y permanecerá encendido mientras C100 está
encendido. Cuando se abre el contacto C100, C20 permanecerá activado por el tiempo 2
especificado (5s), y luego se apaga.
3
4
5
6
7
8
9
Ejemplo de diagrama de tiempos
10
C100
11
5 sec 5 sec
12
C20

13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–249


Capítulo 5: Instrucciones Intelligent Box (IBox)

Temporizador On Delay (ONDTMR) (IB-301)


El temporizador On delay retrasa el tiempo en que el parámetro de salida se activa por la
1 DS5 Usado cantidad de tiempo especificada (en centésimo de segundo) basada en el flujo de energía en el
HPP N/A IBox. Una vez que el IBox pierde la energía, la salida se desactiva inmediatamente.Si el flujo de
2 energía se apaga ANTES DE QUE transcurra el
tiempo de retardo, entonces el contador de
tiempo SE REARMA y la salida se apaga, así
3 que usted debe tener flujo de energía continuo
al IBox por lo menos el tiem[po de retardo
4 especificado antes de que la salida se active.
Este IBox utiliza un temporizador (TMRF),
5 que no puede ser usado en cualquier otro lugar
en el programa.
6
Parámetros de ONDTMR
7 • Timer Number: Especifica el número del temporizador (TMRF) que es usado por la instrucción
ONDTMR
• On Delay Time (0,01sec): Especifica cuánto tiempo la salida se encenderá si el flujo de energía al
8 Ibox es verdadero.
• Output: Especifica la salida que será encendida con un retardo de tiempo.
9
Parámetro Rango del DL06
10 Timer Number . . . . . . . . . . . . . . . . . . . . . . . . . T
On Delay Time . . . . . . . . . . . . . . . . . . . . . . . . K,V
T0-377
K0-9999; Vea el mapa de memoria V del DL06 - Data Words

11 Output . . . . . . . . . . . . . . . . . . . . X, Y, C, GX,GY, B Vea el mapa de memoria DL06

12
13
14
A
B
C
D

5–250 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ONDTMR
En el ejemplo siguiente, la instrucción ONDTMR es usada para retardar el "encendido" de la
salida C21. El temporizador 1 (T1) define como de 2 segundos el período de "atraso". 1
Cuando se cierrael contacto C101, se cierra el contacto C21 con un atraso de 2 segundos.
Cuando se abre el contacto C101, el contacto C21 se abre inmediatamente. 2
3
4
5
6
7
Ejemplo de diagrama de tiempos
8
C101 9
2 sec 2 sec

C21
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–251


Capítulo 5: Instrucciones Intelligent Box (IBox)

One Shot (ONESHOT) (IB-303)


La instrución One Shot encenderá el bit de salida definido en el parámetro durante un barrido
1 DS5 Usado en la transición desde apagado a encendido del flujo de energía en el IBox. Este IBox es
HPP N/A simplemente un nombre diferente para la
2 bobina PD (diferencial positivo).

3 Parámetros de ONESHOT
• Discrete Output: Especifica la salida que
4 estará encendida por un barrido

5
Parámetro Rango del DL06
6 Discrete Output . . . . . . . . . . . . . . . . . . . . . X, Y, C Vea el mapa de memoria DL06

Ejemplo de ONESHOT
7 En el ejemplo siguiente, la instrucción ONESHOT es usada para activar C100 por un barrido
del PLC cuando el contacto C0 haga la transición desde abierto para cerrado. La lógica de
8 entrada debe producir una transición desde abierto para cerrado para ejecutar la instrucción
One shot.

9
10
11
12
13 Ejemplo de diagrama de tiempos

C0
14
Tiempo de barrido
A C100
B
C
D

5–252 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Circuito Push On / Push Off (PONOFF) (IB-300)


Esta instrucción conmuta un estado de la salida siempre que el flujo de la energía de la entrada
DS5
HPP
Usado
N/A
haga una transición de apagado a encendido. Requiere un parámetro adicional de bit para 1
trabajar con la información del estado. Este bit adicional no debe ser usado en cualquier otro
lugar en el programa. Esto también se conoce como "circuito de flip-flop". 2
Parámetros de PONOFF 3
• Discrete Input: Especifica la entrada que
conmutará la salida especificada
• Discrete Output: Especifica la salida que será
4
"conmutada."
• Internal State: Especifica un bit de trabajo que
5
será usado por la instrucción
6
Parámetro Rango del DL06 7
Discrete Input . . . . X,Y,C,S,T,CT,GX,GY,SP,B,PB Vea el mapa de memoria DL06
Discrete Output . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Internal State . . . . . . . . . . . . . . . . . . . . . . . X, Y, C
Vea el mapa de memoria DL06
Vea el mapa de memoria DL06
8
Ejemplo de PONOFF
9
En el ejemplo siguiente, la instrucción PONOFF es usada para controlar los estados de la salida
C20 con una sola entrada C10. Cuando el contacto C10 se cierra una vez, el bit C20 se activa. 10
Cuando el contacto C10 se cierra otra vez, el bit C20 se apaga. El bit C100 es un usado
internamente por la instrucción. 11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–253


Capítulo 5: Instrucciones Intelligent Box (IBox)

Mover una palabra (MOVEW) (IB-200)


Esta instrucción copia el contenido de una palabra a otra posición de memoria directamente o
1 DS5
HPP
Usado
N/A
indirectamente con un puntero, ya sea como constantee HEXADECIMAL, desde una posición
de memoria, o indirectamente a través de un puntero.
2
Parámetros de MOVEW
3 • From WORD: Especifica la palabra cuyo
contenido será copiado a otra localización
4 • To WORD: Especifica la localización adonde
será copiado el contenido de "From WORD"

5
6 Parámetro Rango del DL06
From WORD . . . . . . . . . . . . . . . . . . . . . . . . V,P,K K0-FFFF; Vea el mapa de memoria V del DL06 - Data Words
7 To WORD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . V,P Vea el mapa de memoria V del DL06 - Data Words

8 Ejemplo de MOVEW
En el ejemplo siguiente, la instrucción MOVEW es usada para copiar los 16 bits de datos desde
9 V2000 a V3000 cuando C100 se cierra.

10
11
12
13
14
A
B
C
D

5–254 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Mover una palabra doble (MOVED) (IB-201)


Esta instrucción copia el contenido de una palabra doble a a dos posiciones de memoria
DS5
HPP
Usado
N/A
consecutivas directamente o indirectamente con un puntero, ya sea como constantee de palabra 1
doble HEXADECIMAL, desde una posición de memoria doble , o indirectamente a través de
un puntero. 2
Parámetros de MOVED 3
• From WORD: Especifica la palabra doble
cuyo contenido será copiado a otra
localización
4
• To WORD: Especifica la localización adonde
será copiado el contenido de "From WORD" 5
6
Parámetro Rango del DL06
From DWORD . . . . . . . . . . . . . . . . . . . . . . V,P,K
To DWORD . . . . . . . . . . . . . . . . . . . . . . . . . . . V,P
K0-FFFFFFFF; Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria V del DL06 - Data Words
7
8
Ejemplo de MOVED
En el ejemplo siguiente, la instrucción MOVED instrucción es usada para copiar los 32 bits de 9
datos desde V2000 y V2001 a V3000 y V3001 cuando C100 se cierra.
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–255


Capítulo 5: Instrucciones Intelligent Box (IBox)

BCD a Real (BCDTOR) (IB-560)


Esta instrucción convierte un valor dado en una palabra BCD de 4 dígitos a un número Real,
1 DS5 Usado
con una coma definida por la cantidad de decimales(K0-K4).
HPP N/A
Por ejemplo, BCDTOR K1234 con un
2 número implicado de coma igual a K1,
resultaría R123.4
3
Parámetros de BCDTOR
4 • Value (WORD BCD): Especifica la palabra o
la constantee que será convertida a un número
5 real
• Number of Decimal Points: Especifica la cantidad de decimales en el resultado real

6 • Result (DWORD REAL): Especifica la localización en donde será colocado el número real

Parámetro Rango del DL06


7 Value (WORD BCD) . . . . . . . . . . . . . . . . . . V,P,K K0-9999; Vea el mapa de memoria V del DL06 - Data Words
Number of Decimal Points . . . . . . . . . . . . . . . K K0-4
8 Result (DWORD REAL) . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

Ejemplo de BCDTOR
9 En el ejemplo siguiente, la instrucción BCDTOR es usada para convertir los datos de 16 bits
en V2000 desde un formato de datos de 4 dígitos BCD a un formato de datos real de 32bits (de
10 coma flotante) y almacenado en V3000 y V3001.
K2 en la cantidad de decimales indica que tendrá dos dígitos a la derecha de la coma.
11
12
13
14
A
B
C
D

5–256 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

BCD doble a Real (BCDTORD) (IB-562)


Esta instrucción convierte un valor dado en una palabra doble BCD de 8 dígitos a un número
DS5 Usado Real, con una coma definida por la cantidad de decimales(K0-K8). 1
HPP N/A Por ejemplo, BCDTOR K12345678 con un
número implicado de coma igual a K5, resultaría 2
R123.45678
3
Parámetros de BCDTOR
• Value (WORD BCD): Especifica la palabra 4
doble o la constantee que será convertida a un número real
• Number of Decimal Points: Especifica la cantidad de decimales en el resultado real 5
• Result (DWORD REAL): Especifica la localización en donde será colocado el número real
6
Parámetro Rango del DL06
Value (DWORD BCD) . . . . . . . . . . . . . . . . . V,P,K K0-99999999; Vea el mapa de memoria V del DL06 - Data Words
Number of Decimal Points . . . . . . . . . . . . . . . K K0-8
7
Result (DWORD REAL) . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
8
Ejemplo de BCDTORD
En el ejemplo siguiente, la instrucción BCDTORD es usada para convertir los datos de 32 bits
en V2000 desde un formato de datos de 8 dígitos BCD a un formato de datos real de 32bits (de
9
coma flotante) y almacenado en V3000 y V3001.
K2 en la cantidad de decimales indica que tendrá dos dígitos a la derecha de la coma.
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–257


Capítulo 5: Instrucciones Intelligent Box (IBox)

Math - BCD (MATHBCD) (IB-521)


La instrucción Math-BCD le permite crear expresiones matemáticas complejas tal como usted
1 DS5 Usado
haría en los programa Visual Basic, EXCEL o C++ para
HPP N/A
hacer cálculos complejos, con paréntesis de hasta 4
2 niveles de profundidad.
Además de + - * /, usted puede hacer el modulo (% o
3 resto), AND de bits(&),OR (|), XOR (^), y algunas
funciones conBCD - convertir a BCD (BCD), a
convertir a binario (BIN), complemento del BCD
4 (BCDCPL), convertir desde código Gray (GRAY),
invertir bits (INV) y BCD/HEX a exhibición de siete
5 segmentos (SEG).
Ejemplo: ((V2000 + V2001) / (V2003 - K100)) * GRAY(V3000 & K001F)
6 Cada referencia de memoria V DEBE se usada como valor de formato BCD de una palabra. Los
resultados intermedios pueden ir hasta valores de 32 bits, pero el resultado debe corresponder a
7 una palabra BCD de 16 bits, para que el cálculo sea válido. Un ejemplo típico de ésto es hacer
escala usando multiplicación y luego división, (V2000 * K1000)/K4095. El resultado de la
multiplicación excederá probablemente 9999 pero estará dentro de 32 bits. La operación de
8 dividir dividirá 4095 en el acumulador de 32 bits, generando un resultado que quepa siempre
en 16 bits.
9 Usted puede referirse a valores binarios de memoria V usando la función de conversión BCD
en una posición de memoriaV pero NO una expresión. Ésto es, BCD(V2000) es correcto y
10 convertirá V2000 de binario a BCD, pero la operación BCD(V2000 + V3000) sumará V2000
como BCD a V3000 como BCD, y luego interpretará el resultado como binario y lo convierte
a BCD - NO SERÁ CORRECTO.
11 También, el resultado final es un número BCD de 16 bits y de modo que usted podría hacer la
instrucción BIN en la operación completa para almacenar el resultado como binario.
12
Parámetros de MATHBCD
13 • WORD Result: Especifica la localización en donde el resultado en BCD de la expresión matemática
será colocado (el resultado debe caber en una localización de memoria V de 16 bits)
14 • Expression: Especifica la expresión matemática que se ejecutará y el resultado se almacena en la
memoria especificada WORD Result. Cada localización de memoria V usada en la expresión debe
estar en formato BCD.
A Parámetro Rango del DL06
WORD Result . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
B Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Text

C
D

5–258 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de MATHBCD
En el ejemplo siguiente, se usa la instrucción MATHBCD para calcular la expresión que
multiplica el valor BCD en V1200 por 1000, después se divide por 4095 y carga el valor que 1
resulta en V2000.
2
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–259


Capítulo 5: Instrucciones Intelligent Box (IBox)

Math - Binaria (MATHBIN) (IB-501)


La instrucción Math-Binaria le permite crear
1 DS5 Usado
expresiones matemáticas complejas como usted haría
HPP N/A
en los programa Visual Basic, EXCEL o C++ para
2 hacer cálculos complejos, con paréntesis de hasta 4
niveles de profundidad. Además de + - * /, usted puede
hacer el modulo (% o resto), AND de bits(&),OR (|),
3 XOR (^), y algunas funciones conBCD - convertir a
BCD (BCD), convertir a binario (BIN), decodificar
4 bits(DECO), codificar bits (ENCO), invertir bits
(INV) y HEX a exhibición de siete segmentos (SEG)
5 y sumar bits (SUM).
Ejemplo: ((V2000 + V2001) / (V2003 - K100)) * SUM(V3000 & K001F)
6 Cada referencia de memoria V DEBE se usada como valor de formato binario de una palabra.
Los resultados intermedios pueden ir hasta valores de 32 bits, pero el resultado debe
corresponder a una palabra binaria de 16 bits, para que el cálculo sea válido. Un ejemplo típico
7 de ésto es hacer escala usando multiplicación y luego división, (V2000 * K1000)/K4095. El
resultado de la multiplicación excederá probablemente 65535 pero estará dentro de 32 bits. La
8 operación de dividir dividirá 4095 en el acumulador de 32 bits, generando un resultado que
quepa siempre en 16 bits.
9 Usted puede referirse a valores BCD de memoria V usando la función de conversión BIN en
una posición de memoriaV pero NO una expresión. Ésto es, BIN(V2000) es correcto y
convertirá V2000 de BCD a binario, pero la operación BIN(V2000 + V3000) sumará V2000
10 como binario a V3000 como binario y luego interpretará el resultado como BCD y lo convierte
a binario - NO SERÁ CORRECTO.
11 También, el resultado final es un número binario de 16 bits y de modo que usted podría aplicar
la instrucción BCD en la operación completa para almacenar el resultado como BCD.
12
Parámetros de MATHBCD
13 • WORD Result: Especifica la localización en donde el resultado en binario de la expresión matemática
será colocado (el resultado debe caber en una localización de memoria V de 16 bits)
14 • Expression: Especifica la expresión matemática que se ejecutará y el resultado se almacena en la
memoria especificada WORD Result. Cada localización de memoria V usada en la expresión debe
estar en formato binario.
A
Parámetro Rango del DL06
B WORD Result . . . . . . . . . . . . . . . . . . . . . . . . . . V
Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vea el mapa de memoria V del DL06 - Data Words
Text

C
D

5–260 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de MATHBIN
En el ejemplo siguiente, se usa la instrucción MATHBIN para calcular la expresión que
multiplica el valor binario en V1200 por 1000, después se divide por 4095 y carga el valor que 1
resulta en V2000.
2
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–261


Capítulo 5: Instrucciones Intelligent Box (IBox)

Math - Real (MATHR) (IB-541)


Esta instrucción le permite crear expresiones matemáticas complejas como usted haría en los
1 DS5 Usado programa Visual Basic, EXCEL o C++ para hacer cálculos complejos, con paréntesis de hasta 4
HPP N/A niveles de profundidad. Además de + - * /, usted puede hacer una instrucción And (&) Or (|)
2 Xor (^) y muchas funciones Reales - Arco Coseno
(ACOSR), ArcoSeno (ASINR), Arco Tangente
(ATANR), Coseno (COSR), Convertir Radianes a
3 Grados (DEGR), Invertir Bits (INV), Convertir
grrados a Radianes (RADR), HEX a Seven Segment
4 Display (SEG), Seno (SINR), Raíz cuadrada
(SQRTR), Tangente (TANR).
5 Example: ((V2000 + V2002) / (V2004 - R2.5)) *
SINR(RADR(V3000 / R10.0))
6 Cada referencia de memoria V DEBE caber en un
valor ajustado a formato REAL de palabra doble.
7 Parámetros de MATHR
8 • DWORD Result: Especifica la localización en donde será colocado el resultado Real de la expresión
matemática (el resultado debe caber en una localización ajustada a formato real de palabra doble)
• Expression: Especifica la expresión matemática que se ejecutará y el resultado se almacena en la
9 localización especificada DWORD Result. Cada localización de memoria V en la expresión debe
estar en formato Real.
10 Parámetro Rango del DL06
DWORD Result . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
11 Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Text

Ejemplo de MATHR
12 En el ejemplo siguiente, se usa la instrucción MATHR para calcular la expresión que multiplica
el valor REAL (de coma flotante) en V1200 por 10,5 y después se divide por 2,7 y se coloca el
13 valor resultante de 32 bits en V2000 y V2001.

14
A
B
C
D

5–262 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Real a BCD con redondeo (RTOBCD) (IB-561)


Esta instruccción convierte el valor absoluto de un número Real dado a un número en BCD de
DS5 Usado 4 dígitos, con la cantidad de decimales definidas en la instrucción (K0-K4) y además realiza el 1
HPP N/A redondeo.
Por ejemplo, RTOBCD R56.74 con una 2
cantidad de decimales igual a K1, resultaría
BCD 567. Si el número implicado de comas
fuera 0, entonces la función resultaría BCD 57
3
(note que redondeó para arriba).
Si el número Real es negativo, el resultado será
4
igual al valor positivo absoluto.
5
Parámetros de RTOBCD
• Value (DWORD Real): Especifica la localización o el número Real que será convertido y redondeado
6
a un número BCD con decimales implicados.
• Number of Decimal Points: Especifica el número de decimales implicados en el resultado Result 7
WORD
• Result (WORD BCD): Especifica la localización en donde será almacenado el valor BCD que ha sido
redondeado y transformado
8
Parámetro Rango del DL06 9
Value (DWORD Real) . . . . . . . . . . . . . . . . . V,P,R R ; Vea el mapa de memoria V del DL06 - Data Words
Number of Decimal Points . . . . . . . . . . . . . . . K
Result (WORD BCD) . . . . . . . . . . . . . . . . . . . . . V
K0-4
Vea el mapa de memoria V del DL06 - Data Words
10
11
Ejemplo de RTOBCD
En el ejemplo siguiente, se usa la instrucción RTOBCD para convertir el formato de datos Real 12
de 32 bits (de coma flotante) en V3000 y V3001 al formato de datos de 4 dígitos en BCD y
almacenados en V2000. 13
K2 en el parámetro Number of Decimal Points (cantidad de decimales implicados) en los datos
tendrá dos decimales implicados. 14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–263


Capítulo 5: Instrucciones Intelligent Box (IBox)

Real a BCD doble con redondeo (RTOBCDD) (IB-563)


Esta instruccción convierte el valor absoluto de un número Real dado a un número en BCD de
1 8 dígitos, con la cantidad de decimales definidas en la instrucción (K0-K8) y además realiza el
DS5 Usado
redondeo.
2 HPP N/A Por ejemplo, RTOBCDD R38156.74 con una cantidad de decimales igual a K1, resultaría
BCD 381567. Si el número implicado de
3 comas fuera 0, entonces la función resultaría
BCD 38157 (nota que redondeó para arriba).
4 Si el número Real es negativo, el resultado será
igual al valor positivo absoluto.

5 Parámetros de RTOBCDD
6 • Value (DWORD Real): Especifica la localización o el número Real que será convertido y redondeado
a un número BCD con decimales implicados.
• Number of Decimal Points: Especifica el número de decimales implicados en el resultado Result
7 WORD
• Result (WORD BCD): Especifica la localización en donde será almacenado el valor BCD que ha sido
8 redondeado y transformado

9 Parámetro Rango del DL06


Value (DWORD Real) . . . . . . . . . . . . . . . . . V,P,R R ; Vea el mapa de memoria V del DL06 - Data Words
10 Number of Decimal Points . . . . . . . . . . . . . . . K K0-8
Result (DWORD BCD) . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

11 Ejemplo de RTOBCDD
En el ejemplo siguiente, se usa la instrucción RTOBCDD para convertir el formato de datos
12 Real de 32 bits (de coma flotante) en V3000 y V3001 al formato de datos de 8 dígitos en BCD
y almacenados en V2000 y V2001.
13 K2 en el Number of Decimal Points (cantidad de decimales implicados) en los datos tendrá dos
decimales implicados.
14
A
B
C
D

5–264 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

BCD al cuadrado (SQUARE) (IB-523)


Esta instrucción eleva al cuadrado el número de 4 dígitos dado en formato BCD y lo escribe
DS5 Usado
como un resultado de 8 dígitos en formato BCD (palabra doble). 1
HPP N/A

Parámetros de SQUARE 2
• Value (WORD BCD): Especifica la palabra o
la constantee en BCD que será elevada al 3
cuadrado
• Result (DWORD BCD): Especifica la
localización en donde será almacenado el valor
4
al cuadrado de DWORD BCD

Parámetro Rango del DL06


5
Value (WORD BCD) . . . . . . . . . . . . . . . . . . V,P,K K0-9999 ; Vea el mapa de memoria V del DL06 - Data Words
Result (DWORD BCD) . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
6
Ejemplo de SQUARE
En el ejemplo siguiente, se usa la instrucción SQUARE para elevar al cuadrado el valor BCD
7
de 4 dígitos en V2000 y para almacenar el resultado de 8 dígitos en V3000 y V3001
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–265


Capítulo 5: Instrucciones Intelligent Box (IBox)

Binario al cuadrado (SQUAREB) (IB-503)


Esta instrucción eleva al cuadrado el número de 4 dígitos dado en formato binario y lo escribe
1 DS5 Usado
como un resultado de 8 dígitos en formato binario.
HPP N/A

2 Parámetros de SQUAREB
• Value (WORD binary): Especifica la palabra o la
3 constantee en FORMATO BINARIO que será
elevada al cuadrado
4 • Result (DWORD binary): Especifica la
localización en donde será almacenado el valor al
cuadrado de la palabra doble en formato
5 binario.

Parámetro Rango del DL06


6 Value (WORD Binary) . . . . . . . . . . . . . . . . V,P,K K0-65535; Vea el mapa de memoria V del DL06 - Data Words
Result (DWORD Binary) . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
7
Ejemplo de SQUAREB
8 En el ejemplo siguiente, se usa la instrucción SQUAREB para elevar al cuadrado el valor de
formato binario de 4 dígitos en V2000 y para almacenar el resultado de 8 dígitos en V3000 y
9 V3001

10
11
12
13
14
A
B
C
D

5–266 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Real al cuadrado (SQUARER) (IB-543)


Esta instrucción eleva al cuadrado un número dado en formato Real y lo escribe como un
DS5 Usado resultado de 8 dígitos en formato Real. 1
HPP N/A

Parámetros de SQUARER 2
• Value (REAL DWORD): Especifica la palabra o
la constantee en formato Real que será elevada al 3
cuadrado
• Result (REAL DWORD): Especifica la
localización en donde será almacenado el valor al
4
cuadrado.
5
Parámetro Rango del DL06
Value (REAL DWORD) . . . . . . . . . . . . . . . . V,P,R R ; Vea el mapa de memoria V del DL06 - Data Words 6
Result (REAL DWORD) . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

Ejemplo de SQUARER
7
En el ejemplo siguiente, se usa la instrucción SQUARER para elevar al cuadrado el valor de
coma flotante o valor REAL en V2000 y V2001 y para almacenar el resultado REAL en V3000
8
y V3001.
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–267


Capítulo 5: Instrucciones Intelligent Box (IBox)

Suma de números BCD (SUMBCD) (IB-522)


Esta instruccción suma una lista de números de 4 dígitos consecutivos en formato BCD en un
1 DS5 Usado resultado de 8 dígitos BCD en una palabra
HPP N/A doble.
2 Usted debe especificar las direcciones iniciales
y finales del grupo de memoriaV (incluyendo
3 estas direcciones). Cuando está activada, esta
instrucción sumará todos los números en el
grupo (de modo que usted puede desear usar
4 un contacto diferencial positivo como
condición de la instrucción).
5 SUMBCD podría ser usado como la primera
parte para calcular un promedio.
6
Parámetros de SUMBCD
7 • Start Address: Especifica la dirección inicial de un conjunto de valores consecutivos de localización de
memoria V que se sumarán (BCD)
8 • End Addr (inclusive): Especifica la dirección final de un conjunto de valores consecutivos de
localización de memoria V que se sumarán (BCD)
• Result (DWORD BCD): Especifica la localización de memoria V en donde será colocado el resultado
9 de la suma del conjunto de valores consecutivos BCD

10 Parámetro
Start Address . . . . . . . . . . . . . . . . . . . . . . . . . . V
Rango del DL06
Vea el mapa de memoria V del DL06 - Data Words
End Address (inclusive) . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
11 Result (DWORD BCD) . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

12
Ejemplo de SUMBCD
13 En el ejemplo siguiente, se usa la instrucción de SUMBCD para sumar todos los valores BCD
en las palabras V2000 hasta V2007 y para almacenar el resultado, que es un valor de 8 dígitos
BCD, en V3000 y V3001.
14
A
B
C
D

5–268 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Suma de números Binarios (SUMBIN) (IB-502)


Esta instruccción suma una lista de números de 4 dígitos consecutivos en formato binario en un
DS5 Usado resultado de 8 dígitos binario, en una palabra doble. 1
HPP N/A
Usted debe especificar las direcciones iniciales
y finales del grupo de memoriaV (incluyendo 2
estas direcciones). Cuando está activada, esta
instrucción sumará todos los números en el
grupo (de modo que usted puede desear usar
3
un contacto diferencial positivo como
condición de la instrucción). 4
SUMBIN podría ser usado como la primera
parte para calcular un promedio. 5
Parámetros de SUMBIN 6
• Start Address: Especifica la dirección inicial de un conjunto de valores consecutivos de localización de
memoria V que se sumarán (Binarios) 7
• End Addr (inclusive): Especifica la dirección final de un conjunto de valores consecutivos de
localización de memoria V que se sumarán (Binarios)
• Result (DWORD Binary): Especifica la localización de memoria V en donde será colocado el
8
resultado de la suma del conjunto de valores consecutivos Binarios
9
Parámetro Rango del DL06
Start Address . . . . . . . . . . . . . . . . . . . . . . . . . . V
End Address (inclusive) . . . . . . . . . . . . . . . . . . V
Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria V del DL06 - Data Words
10
Result (DWORD Binary) . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
11
Ejemplo de SUMBIN 12
En el ejemplo siguiente, se usa la instrucción SUMBIN para sumar todos los valores binarios
en las palabras V2000 hasta V2007 y para almacenar el resultado, que es un valor de 8 dígitos
binarios, en V3000 y V3001.
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–269


Capítulo 5: Instrucciones Intelligent Box (IBox)

Suma de números Reales (SUMR) (IB-542)


Esta instruccción suma una lista de números consecutivos en formato REAL en un resultado
1 DS5 Usado
en una palabra doble de formato real o coma flotante.
HPP N/A
Usted debe especificar las direcciones iniciales y finales del grupo de memoriaV (incluyendo
2 estas direcciones).
Recuerde que los números reales ocupan 2
3 palabras de memoria V cada uno, de modo que
el número de valores reales sumados es igual a
4 la mitad del número de las memorias.
Observe que la dirección final puede ser
5 CUALQUIER palabra de la dirección final de
2 palabras, por ejemplo, si usted está sumabdo
los 4 números reales almacenados en V2000 hasta V2007 (V2000, V2002, V2004, y V2006),
6 usted puede especificar V2006 o V2007 como la dirección final y usted obtendrá el mismo
resultado.
7 Cuando está activada, esta instrucción sumará todos los números en el grupo (de modo que
usted puede desear usar un contacto diferencial positivo como condición de la instrucción).
8 SUMR cpodría ser usado como la primera parte para calcular un promedio.

9 Parámetros de SUMR
• Start Address(DWORD): Especifica la dirección inicial de un conjunto de valores consecutivos de
10 localización de memoria V que se sumarán (Real)
• End Addr (inclusive DWORD): Especifica la dirección final de un conjunto de valores consecutivos
de localización de memoria V que se sumarán (Real)
11 • Result (DWORD): Especifica la localización de memoria V en donde será colocado el resultado de la
suma del conjunto de valores consecutivos en formato de coma flotante.
12
Parámetro Rango del DL06
13 Start Address (inclusive DWORD) . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
End Address (inclusive DWORD) . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
14 Result (DWORD) . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

A
B
C
D

5–270 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de SUMR
En el ejemplo siguiente, se usa la instrucción SUMR para sumar todos los valores reales en las
palabras V2000 hasta V2007 y para almacenar el resultado, que es un valor de de coma flotante, 1
en V3000 y V3001.
2
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–271


Capítulo 5: Instrucciones Intelligent Box (IBox)

Configuración de ECOM100 (ECOM100) (IB-710)


La instrucción configuración ECOM100 define toda la información común para un módulo
1 DS5 Usado específico ECOM100 que sea utilizado por otro IBox ECOM100; por ejemplo, ECRX - leer la
HPP N/A red con ECOM100, ECEMAIL - ECOM100 envíar e-mail, ECIPSUP - configuración del IP
2 ECOM100, etc.
Usted DEBE tener el IBox de configuración
3 ECOM100 en la parte superior de su
programa ladder o de etapas con cualquier
otra configuración IBox. El parámetro
4 Message buffer (almacenador intermediario
de mensajes) especifica la dirección inicial
5 de un almacenador intermediario (Message
buffer) de 65 Palabras. Ésto es, 101
direcciones octales (por ejemplo. V1400
6 hasta V1500).
Si usted tiene más de un ECOM100 en su PLC, usted debe tener una configuración IBox
7 ECOM100 diferente para CADA módulo ECOM100 en su sistema que use una instrucción
IBox ECOM .
8 Los parámetros de espacio de trabajo (Workspace) y de estado (Status) y el almacenador
intermediario de mensaje (Message buffer) son registros internos, privados, usados por la
9 instrucción configuración de ECOM100 y DEBEN SER ÚNICOS en esta instrucción y NO
SE DEBEN utilizar en cualquier otro lugar en su programa.
10 Para que funcione LA MAYORÍA DE IBoxes ECOM100, usted debe accionar el DIP switch 7
ON en la placa de circuito ECOM100. Usted puede mantener el DIP switch 7 apagado si usted
está usando SOLAMENTE IBoxes ECOM100 ECRX o ECWX.
11
Parámetros de ECOM100
12 • ECOM100#: Este es un número lógico de identificación asociado a este módulo específico
ECOM100 en la ranura especificada. El resto de IBoxes que necesitan referirse a este módulo
13 ECOM100 debe referirse a este número lógico
• Slot: Especifica la ranura opcional que ocupa el módulo
14 • Status: Especifica una localización de lmemoria V que será usada por la instrucción
• Workspace: Especifica una localización de memoria V que será usada por la instrucción
A • Msg Buffer: Especifica la dirección inicial de un almacenador intermediario de 65 palabras que será
usado por el módulo para configuración

B Parámetro
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Rango del DL06
K0-255
Slot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K1-4
C Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
D Msg Buffer (65 words usado) . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

5–272 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECOM100
Esta instrucción coordina toda la interacción con otras instrucciones IBox relacionadas con
ECOM100 (ECxxxx). Usted debe tener una instrucción de configuración IBox para cada 1
módulo ECOM100 que esté instalado en su sistema. Estas instrucciones IBox de configuración
de ECOM100 deben estar en la parte superior de su programa y se deben ejecutar en cada
barrido.
2
Este IBox define que o módulo ECOM100# K0 está en la ranura 3. Cualquier instruccción
IBox relacionada a ECOM100 que necesite referirse a este módulo específico (tal como
3
ECEMAIL, ECRX…)debe tener la referencia K0 para el parámetro ECOM100 #.
El registro de estado (Status register) está diseñado para divulgar cualquier información de error
4
o que ha sido completada la operación a otros IBoxes relacionados con ECOM100. Este registro
de memoria V no debe ser usado en ningún otro lugar en el programa entero. 5
El registro del espacio de trabajo (Workspace register) es usado para mantener la información del
estado sobre el ECOM100, junto con compartir adecuadamente y enclavarse con otros IBoxes 6
realcionados con ECOM100 en el programa. Este registro de memoria V no debe ser usado en
ningón otro lugar en el programa entero. 7
El almacenador intermediario de mensajes (Message Buffer) 65 palabras (130 bytes) es un grupo
común de memoria que es usado por otros IBoxes relacionados con ECOM100 (tal como
ECEMAIL). De esta manera, usted puede tener una cierta cantidad de IBoxes ECEMAIL, pero
8
necesita solamente 1 almacenador intermediario común para generar y enviar cada email. Estos
registro de memoria V no deben ser usados en ningón otro lugar en el programa entero. 9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–273


Capítulo 5: Instrucciones Intelligent Box (IBox)

Desabilitar DHCP en ECOM100 (ECDHCPD) (IB-736)


Esta instrucción configura el ECOM100 para utilizar las definiciones internas de TCP/IP en
1 DS5 Usado
una transición de On para Off al control de este IBox. Para configurar las definiciones de
HPP N/A TCP/IP del ECOM100 manualmente, puede
2 usar la utilidad NetEdit3, o usted puede hacerla
por el programa del PLC usando la instruccion
Ibox de configuración de IP ECOM100
3 (ECIPSUP), o los IBoxes individuales: ECWRIP
(Escribir dirección IP de ECOM), ECWRGWA
4 (Escribibir la dirección de gateway) y
ECWRSNM (Escribir Subnet Mask).
5 El parámetro del espacio de trabajo es un registro
interno, privado usado por este IBox y DEBE
SER ÚNICO en esta una instrucción y NO DEBE ser usado en cualquier otro lugar en su
6 programa.
Los bits de los parámetros Success o Error se activan una vez que el comando sea completado.
7 Si hay un error, el parámetro Error Code (código de error) divulgará un código de error
ECOM100 (menos de 100), o un error de lógica del PLC (mayor de 1000).
8 La configuración se almacena en la memoria Flash-ROM en el ECOM100 y la ejecución de este
IBox inhabilitará el módulo ECOM100 por lo menos un medio segundo hasta que escribe la
9 memoria Flash-ROM. Por lo tanto, SE RECOMIENDA que usted ejecute solamente este IBox
UNA VEZ, en el primer barrido. Puesto que requiere una transición de Off para On , use un
SP0 NORMALMENTE CERRADO (NO se ejecuta en el primer barrido) para conducir el
10 flujo de energía al IBox.
Para este ECOM100 IBox funcione, usted debe mover el DIP switch 7 en el circuito del
11 módulo ECOM100.

12 Parámetros de ECDHCPD
• ECOM100#: Éste es un número lógico asociado a este módulo específico en la ranura especificada.
13 El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben referirse a este
número lógico

14 • Workspace: Especifica una localización de memoria V que será usada por la instrucción
• Success: Especifica un bit que se activa cuando la requisición se termine con éxito

A • Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
• Error Code: Especifica la localización en donde será escrito el código de error
B Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
C Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
D Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Vea el mapa de memoria DL06
Vea el mapa de memoria V del DL06 - Data Words

5–274 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECDHCPD
Renglón 1: La instrucción ECDHCPD es responsable por la coordinación y enclavamiento de
todos los Iboxes relacionados con ECOM100 para un módulo específico ECOM100. Marque 1
el ECOM100 con un rótulo en la ranura 1 como ECOM100 de número K0. El resto de los
IBoxes ECxxxx se refieren a este módulo como K0. Si usted necesita mover el módulo en la base
a una ranura diferente, solamente necesita cambiar la información en este IBox. V400 es usado
2
como registro global de estado del resultado para otros IBoxes ECxxxx usando este módulo
específico ECOM100. V401 es usado para coordinación y enclavamiento de la lógica en todo 3
los otros IBoxes ECxxxxusando este módulo específico ECOM100. V402-V502 es un campo
común almacenador intermediario(buffer) de 130 bytes disponible para uso por otros IBoxes 4
ECxxxx usando este módulo específico ECOM100
5
6
7
Renglón 2: En el segundo barrido, deshabilita DHCP en el ECOM100. DHCP es el mismo
8
protocolo usado por PCs para usar un servidor de DHCP para asignar automáticamente la
direción de IP (IP ADDRESS), la dirección de entrada y el subnet mask de los módulos 9
ECOM100. Típicamente DHCP es deshabilitado asignando un IP ADDRESS HARD
CODED con NetEdit3 o usando uno de lOS IBoxes de configuración de PI ECOM100, pero
este IBox permite que usted deshabilite DHCP en el ECOM100 usando su programa ladder.
10
El ECDHCPD es accionado en una transición de OFF para ON, no por una flujo de enrgía
constantee (similar a una entrada de un contador). El comando de deshabilitar DHCP será 11
enviado al ECOM100 siempre que el flujo de energía en el IBox vaya de OFF a ON. Si se
completa esta acción con éxito, se activa el bit C100. Si hay una falla, se activa el bit C101. Si
falla, usted puede observar V2000 para conocer el código de error específico.
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–275


Capítulo 5: Instrucciones Intelligent Box (IBox)

Habilitar DHCP en ECOM100 (ECDHCPE) (IB-735)


Esta instrucción le dirá el ECOM100 que obtenga su configuración de TCP/IP desde un
1 DS5 Usado
servidor de DHCP en una transición de OFG para ON en el flujo de energía del IBox.
N/A El IBox será colocado en estado éxitoso una vez que el
2 HPP
ECOM100 haya recibido las configuraciones de TCP/IP
desde el servidor de DHCP. Puesto que es posible que el
3 servidor de DHCP no sea asequible, se suministra un
parámetro de atraso de tiempo (Timeout) de modo que
el IBox pueda terminar, pero con un error (código de
4 error = el decimal 1004).
Vea también el IBox 717 - configuración de IP del
5 ECOM100 (ECIPSUP) - para configurar directamente
TODOS LOS parámetros de TCP/IP en una sola
6 instrucción - IP ADDRESS, subnet mask, y dirección de entrada.
The parámetro Workspace es un registro interno, privado usado por este IBox y DEBE SER
7 ÚNICO en esta una instrucción y NO DEBE ser usado en cualquier otro lugar en el programa.
Uno de los parámetros de éxito(success) o de error (Error) se activará una vez que el comando
se haya completado. Si hay un error, el parámetro del código de error divulgará un código de
8 error ECOM100 (menos de 100), o un error de lógica del PLC (mayor de 1000).
La configuración "Habilitar DHCP" se almacena en memoria Flash-ROM en el ECOM100 y la
9 ejecución de este IBox deshabilitará el módulo ECOM100 por lo menos 0,5 segundo hasta que
escribe la Flash-ROM. Por lo tanto, SE RECOMIENDA que se ejecute solamente este IBox UNA
10 VEZ, en el primer barrido. Puesto que requiere una transición de OFF para ON para ejecutarse,
use un SP0 NORMALMENTE CERRADO para controlar el flujo de energía al IBox.
11 Para que este IBox funcione, se debe colocar el DIP switch 7 a ON en el circuito del módulo
ECOM100.
12 Parámetros de ECDHCPE
• ECOM100#: Éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
13 referirse a este número lógico
• Timeout(sec): Especifica un período de atraso de modo que la instrucción se complete
14 • Workspace: Especifica una localización de memoria V que es usada por la instrucción
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
A • Error: Especifica un bit que se activa cuando la petición no se ha completado con éxito
• Error Code: Especifica la localización en donde será escrito el código de error
B Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
C Timeout (sec) . . . . . . . . . . . . . . . . . . . . . . . . . . K K5-127
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
D Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria DL06
Vea el mapa de memoria DL06
Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

5–276 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECDHCPE
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rórulot en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinatar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
Renglón 2: En el segundo barrido, se habilita DHCP en el ECOM100. DHCP es el mismo
protocolo usado en PCs para usar un servidor de DHCP para asignar automáticamente el IP
8
ADDRESS , la dirección de la entrada, y el subnet mask del módulo ECOM100. Esto se hace
típicamente usando NetEdit3, pero este IBox permite que usted habilite DHCP en el 9
ECOM100 usando el programa ladder. La instrucción ECDHCPE es accionada por una
transición de OFF para ON, y entonces no es controlado por flujo de energía (Por ejemplo, tal
como una entrada de contador). Los comandos para habilitar DHCP serán enviados al
10
ECOM100 siempre que el flujo de energía en el IBox vaya de APAGADO a ENCENDIDO.
La instrucción ECDHCPE no hace más que activar el bit para activar DHCP en el ECOM100, 11
y luego interroga el ECOM100 una vez cada segundo para ver si el ECOM100 ha encontrado
un servidor de DHCP y tiene un IP ADDRESS válido. Por lo tanto, es necesario un parámetro
de timeout en caso de que el ECOM100 no pueda encontrar un servidor de DHCP. Si ocurre
12
un timeout, es decir, no encuentra el servidor después de un tiempo, el bit del error se activará
y el código de error será el decimal 1005. El bit de éxito(Success) se activará solamente si el 13
ECOM100 encuentra un servidor de DHCP y le asigna un IP ADDRESS válido. Si se
encuentra el servidor, el bit C100 se activa. Si hay una falla, se activa el bit C101. Si hay un
error, usted puede inspeccionar V2000 para ver el código de error específico.
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–277


Capítulo 5: Instrucciones Intelligent Box (IBox)

Configuración de ECOM100 Query DHCP (ECDHCPQ) (IB-734)


Esta instrucción determinará si DHCP está habilitado en el módulo ECOM100 en una
1 DS5 Usado transición desde OFF para ON a este IBox. El bit del parámetro DHCP Enabled estará
HPP N/A ENCENDIDO si DHCP está habilitado o APAGADO si está deshabilitado.
2 El parámetro del espacio de trabajo (Workspace)
es un registro interno, privado usado por este
3 IBox y DEBE SER ÚNICO en esta instrucción y
NO DEBE ser usado en ningún otro lugar en el
programa.
4 El parámetro del bit de éxito(Success) o de error
(Error) se activará cuando el comando se haya
5 completado.
Para este IBox ECOM100 funcione, usted debe
6 mover el DIP switch 7 a la posición en el circuito
de ECOM100.
7
Parámetros de ECDHCPQ
8 • ECOM100#: Éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
referirse a este número lógico
9 • Workspace: Especifica una localización de memoria V que es usada por la instrucción
• Success: specifies a bit that will turn on once the instrucción is completed successfully
10 • Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxitoy
completed
11 • DHCP Enabled: Especifica un bit que se activa si el DHCP de módulo ECOM100 se habilita o sigue
estando apagado si está deshabilitado - después de que una petición a la instrucción, asegúrese verificar
12 el estado del bit de Success o de Error junto con estado del bit DHCP Enabled para confirmar una
petición acertada al módulo

13 Parámetro Rango del DL06


ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
14 Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria DL06

A Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
DHCP Enabled . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria DL06
Vea el mapa de memoria DL06

B
C
D

5–278 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECDHCPQ
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinatar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
Renglón 2: En el segundo barrido del PLC, lee si DHCP está habilitado o deshabilitado en el 9
ECOM100 y lo almacena en C5. DHCP es el mismo protocolo usado por PCs para usar un
servidor de DHCP para asignar automáticamente el IP ADDRESS de módulos ECOM100, la
dirección del Gateway, y el subnet mask. La instrucción ECDHCPQ es activada por una
10
transición de OFF para ON, (similar a una entrada de un contador). El comando de leer
(Query) si DHCP está habilitado o no será enviado al ECOM100 siempre que el flujo de 11
energía en el IBox vaya de APAGADO a ENCENDIDO. Si es hecho con éxito, el bit C100 se
activa. Si hay una falla, se activa el bit C101. 12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–279


Capítulo 5: Instrucciones Intelligent Box (IBox)

Envíar E-mail con ECOM100 (ECEMAIL) (IB-711)


Esta instrucción, se comportará como cliente de correo electrónico (E-mail) y enviará una
1 DS5 Usado petición de SMPT a su servidor de SMTP para enviar un mensaje de e-mail a las direcciones de
HPP N/A e-mail en el campo To: y también a ésos enumerados en
2 cc:, lista definida explicitamente en la instrucción
ECCEMAIL, cuando haya una transición de OFF para
ON. Enviará la petición de SMTP basada en el número
3 de ECOM100 especificado, que corresponde a una
configuración única específica ECOM100 en la parte
4 superior de su programa.
El campo Body (Contenido) contiene lo mismo que las
5 instrucciones PRINT y VPRINT para texto y variables
embutidas, permitiendo que usted embuta datos en tiempo
real en su email (por ejemplo. "V2000 =" V2000:B).
6 El parámetro Workspace (espacio de trabajo) es un registro interno, privado usado por este
IBox y DEBE SER ÚNICO en esta instrucción y NO DEBE ser usado en cualquier otro lugar
7 en su programa. O el parámetro de éxito o de error se activará una vez que la petición se haya
completado. Si hay un error, el parámetro del código de error divulgará un código de error
8 ECOM100 (menos de 100), un error del protocolo de SMPT (entre 100 y 999), o un error de
lógica del PLC (mayor de 1000).
9 Puesto que el ECOM100 es solamente un cliente de e-mail y requiere el acceso a un servidor
de SMTP, usted DEBE tener los parámetros de SMTP configurados correctamente en el
ECOM100 vía el Home Page y/o la instrucción de configuración del e-mail (ECEMSUP) de
10 ECOM100's. Para obtener al Home Page del módulo ECOM100, use su browser preferido de
Internet y navegue hasta el IP ADDRESS del módulo ECOM100, por ejemplo.
11 http://192.168.12.86
Hay una limitación de hasta aproximadamente 100 caracteres en los datos de mensaje para la
12 instrucción entera, incluyendo los campos Subject: y Body:. Para ahorrar espacio, el módulo
ECOM100 le permite tener una lista explicita de direcciones de e-mail en el campo de copia a
carbón (cc:) de modo que usted pueda configurar ésos en el módulo ECOM100, y mantenga
13 el campo To: pequeño (o aún vacío), para dejar mas espacio para los campos Subject: y Body:.
Para que este IBox de ECOM100 funcione, usted debe mover el DIP Switch 7 a ON en el
14 circuito del módulo ECOM100.
Parámetros de ECEMAIL
A • ECOM100#: Éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que deben referirse a este módulo ECOM100 deben
referirse a este número lógico
B • Workspace: Especifica una localización de memoria V que es usada por la instrucción

C • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la petición no se ha completado con éxito

5–280 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

• Error Code: Especifica la localización en donde será escrito el código de error


• To: Especifica la dirección de E-mail donde será enviado el mensaje
• Subject: Asunto del mensaje de E-mail
1
• Body: Mensaje con datos que son iguales a los que pueden tenr las instrucciones PRINT y VPRINT
para texto y variables embutidas, permitiendo que usted embutA datos en tiempo real en el mensaje 2
del e-mail
3
Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
K0-255
Vea el mapa de memoria V del DL06 - Data Words
4
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06 5
Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria DL06
To: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Subject:. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Text
Text
6
Body:. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . See PRINT and VPRINT instruccións

Ejemplo de ECEMAIL
7
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con
8
un rótulo en la ranura 1 como ECOM100 K0. El resto de los IBoxes ECxxxx se refieren a este
módulo como K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se 9
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo
10
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 11
12
13
14
(Este ejemplo continúa en la próxima página)
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–281


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECEMAIL (continuado)


Renglón 2: Cuando se para una máquina, envie un e-mail a Joe ([email protected]) en el
1 departamento de mantención y al gerente de producción ([email protected]) informando qué
máquina está parada junto con la fecha y hora cuando la máquina se paró.
2 El ECEMAIL es accionado con una trancisión de OFF para ON, no necesita de un flujo de
energía constante (similar a una entrada de un contadir cuando cuenta una vez). Será enviado
3 un email siempre que el flujo de energía en el IBox vaya de APAGADO a ENCENDIDO. Esto
ayuda a prevenir que se envíen correos electrónicos continuamente.
4 Si se envía el email, se activa el bit C100. Si hay una falla, se activa el bit C101. Si falla, usted
puede observar V2000 para ver el código de error de SMTP u otros códigos de error posibles.

5 Máquina parada

6
7
8
Subject Máquina parada
Body “La máquina: ”V5010:B “se ha parado”
9 “a esta hora “_time:24” “en ”_date:e

10
11
12
13
14
A
B
C
D

5–282 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

ECOM100 Restore Default E-mail Setup (ECEMRDS) (IB-713)


Esta instrucción de restaurar la configuración del e-mail por defecto ECOM100, en una
DS5 Usado transición de OFF para ON, restaurará los datos originales de configuración del e- mail 1
HPP N/A almacenados en el ECOM100 de nuevo a la copia de trabajo basada en ECOM100 #
especificado, que corresponde a una configuración
única específica de ECOM100 (ECOM100) en la
2
partre superior de su programa.
Cuando el ECOM100 es energizado, copia los
3
datos de la configuración del e-mail almacenados en
la ROM a la copia de trabajo en RAM. Ud. puede 4
entonces modificar esta copia de trabajo del
programa usando el IBox de configuración del e-
mail ECOM100 (ECEMSUP). Después de
5
modificar la copia de trabajo, usted puede restaurar
más adelante los datos originales de la configuración con el programa usando este IBox. 6
El parámetro del espacio de trabajo es un registro interno, privado usado por este IBox y DEBE
SER ÚNICO en esta instrucción y NO DEBE ser usado en ningún otro lugar en su programa.¶ 7
Los bits de los parámetros Success o Error se activan una vez que el comando sea completado.
Si hay un error, el parámetro Error Code (código de error) divulgará un código de error 8
ECOM100 (menos de 100), o un error de lógica del PLC (mayor de 1000).
Para este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON en el 9
circuito de ECOM100.
10
Parámetros de ECEMRDS
• ECOM100#: Éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
11
referirse a este número lógico
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
12
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
13
• Error Code: Especifica la localización en donde será escrito el código de error
14
Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
K0-255
Vea el mapa de memoria V del DL06 - Data Words
A
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06 B
Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–283


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECEMRDS
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
1 tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100
con un rótulo en la ranura 1 como ECOM100 K0. El resto de los IBoxes ECxxxx se refieren
2 a este módulo como K0. Si usted necesita cambiar el módulo en la base a una ranura
diferente, se necesita solamente cambiar este IBox. V400 es usado como registro global de
estado del resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100.
3 V401 es usado para coordinar y enclavar la lógica en todo los otros IBoxes ECxxxx usando
este módulo específico ECOM100. V402-V502 es un campo común almacenador
4 intermediario de 130 bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo
específico ECOM100.
5
6
7
8
9 Renglón 2: Siempre que se empuje una parada de emergencia, asegúrese que el presidente de la
compania reciba copias de todos los e-mails que son enviados.
10 La instrucción IBox de configuración de una e-mail de ECOM100 le permite definir o cambiar
los datos de configuración de SMTP para uso con e-mail almacenados en el módulo
ECOM100.
11
12
13
14
A
B
C
D

5–284 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECEMRDS (continuado)


Renglón 3: Una vez que se rearme la parada de emergencia, retire al presidente de la lista cc:
restaurando la configuración de email por defecto en el módulo ECOM100. 1
La instrucción ECEMRDS se acciona en la transición de OFF para ON , (similar a la entrada
de conteo de un contador). La configuración del e- mail almacenada en la memoria ROM del 2
módulo ECOM100 será copiada sobre la "copia de trabajo" siempre que el flujo de energía en
el IBox vaya de APAGADO a ENCENDIDO (la copia de trabajo puede ser cambiada usando
la instrucción IBox ECEMSUP ).
3
Si funciona correctamente, se activa el bit C102. Si hay una falla, se activa C103. Si hay una
falla, usted puede mirar V2001 para ver el código de error específico.
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–285


Capítulo 5: Instrucciones Intelligent Box (IBox)

Configuración de E-mail con ECOM100 (ECEMSUP) (IB-712)


Esta instrucción, en una transición de OFF para ON, modificará la copia de trabajo de la
1 DS5 Usado configuración de e-mail actual en el ECOM100 basado en el número especificado de
HPP N/A ECOM100, que corresponde a una configuración única específica ECOM100 (ECOM100) en
2 la parte superior de su programa.
Usted puede escoger y elegir cualquiera o todos los campos
3 que se modificarán usando esta instrucción. Observe que
estos cambios son acumulativos: Si usted se ejecuta IBoxes
múltiples de configuración de e-mail de ECOM100,
4 después todos los cambios se realizan en la orden que se
ejecutan. También observe que usted puede restaurar la
5 configuración del e-mail original ECOM100 que es
almacenado en el ECOM100 a la copia de trabajo usando
el IBox de restaurar la configuración del email por defecto
6 ECOM100 (ECEMRDS).
El parámetro Workspace (espacio de trabajo) es un registro interno, privado usado por este IBox
7 y DEBE SER ÚNICO en esta una instrucción y NO DEBE ser usado en cualquier otro lugar
en el programa.
8 El parámetro del bit de éxito (Success) o de error se activará una vez que el comando se haya
completado .Si hay un error, el parámetro del código de error divulgará un código de error
9 ECOM100 (menos de 100), o un error de la lógica del PLC (mayor de 1000).
Hay un límite de aproximadamente 100 caracteres/bytes de datos de configuración para la
10 instrucción entera. Si fuera necesario, usted podría dividir la configuración entera con IBoxes
múltiples ECEMSUP sobre una base de campo por campo, por ejemplo, hace el campo copia
a carbón (cc:) en un IBox ECEMSUP y los parámetros restantes de configuración en otro.
11 Para que este ECOM100 IBox funcione, usted debe mover el DIP switch 7 a la posición ON
en el circuito de ECOM100.
12
Parámetros de ECEMSUP
13 • ECOM100#: Éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
referirse a este número lógico
14 • Workspace: Especifica una localización de memoria V que es usada por la instrucción
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
A • Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
• Error Code: Especifica la localización en donde será escrito el código de error
B • SMTP Server IP Addr: Parámetro opcional que especifica el IP ADDRESS del servidor del SMTP
en la red de módulos ECOM100
C • Sender Name: Parámetro opcional que especifica el nombre del remitente el cual aparecerá en el
campo "From:"a los que reciben el E-mail
D • Sender EMail: Parámetro opcional que especifica la dirección del e-mail del remitente de la cual
aparecerá en el campo “From:”a los que reciben el E-mail

5–286 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Parámetros de ECEMSUP (continuado)


• Port Number: Parámetro opcional que especifica the TCP/IP Port Number to send SMTP requests;
usually this does not to be configured (see your network administrator for information on this setting) 1
• Timeout (sec): Parámetro opcional que especifica la cantidad de segundos que debe esperar para que
el servidor SMTP envíe el e-mail a todos los que reciben éste. 2
• Cc: Parámetro opcional que especifica una lista de direcciones de e-mail “carbon copy” que será
enviadas 3
Parámetro
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Rango del DL06
K0-255
4
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06 5
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–287


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECEMSUP
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
1 tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
2 módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
3 usado para coordinatar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
4 bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100.

5
6
7
8
9
(Este ejemplo continúa en la próxima página)
10
11
12
13
14
A
B
C
D

5–288 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECEMSUP (continuado)


Renglón 2: Siempre que se empuje un botón de parada de emergencia, asegúrese de que el
presidente de la compañía consiga las copias de todos los email. La instrucción IBox de 1
configuración de email con ECOM100 le permite definir o cambiar los parámetrso de smtp de
un e- mail almacenados en el ECOM100. La instrucción ECEMSUP es activada en la
transición de OFF para ON (similar a una entrada de un contador). En la energización del PLC,
2
la configuración del e- mail almacenada en la memoria ROM del ECOM100 se copia a una
memoria RAM "copia de trabajo". Usted puede cambiar esta copia de trabajo usando el IBox 3
ECEMSUP. Para restaurar la la configuración original en la memoria ROM, use la instrucción
IBox ECEMRDS. 4
Si funciona correctamente, se activa el bit C102. Si hay una falla, se activa el bit C103. Si hay
una falla, usted puede mirar V2001 para ver el código de error específico. 5
6
7
8
9
10
11
Renglón 3: Una vez que se remueva la condición de parada de emergencia , saque el presidente
de la lista en cc: restaurando la configuración de e-mail por defecto en el módulo ECOM100. 12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–289


Capítulo 5: Instrucciones Intelligent Box (IBox)

Configuración de PI de ECOM100 (ECIPSUP) (IB-717)


Esta instrucción configurará los tres parámetros de TCP/IP en el ECOM100: IP ADDRESS,
1 DS5 Usado subnet mask, y dirección de Gateway, en una transición desde OFF para ON para activar el IBox.
HPP N/A El ECOM100 es especificado por el número ECOM100 #, que corresponde a un IBox de
2 configuración única (ECOM100) en la parte superior de su
programa.
3 El parámetro Workspace (espacio de trabajo) es un
registro interno, privado usado por este IBox y DEBE
SER ÚNICO en esta una instrucción y NO DEBE ser
4 usado en cualquier otro lugar en el programa.
Los bits de los parámetros Success o Error se activan una
5 vez que el comando sea completado. Si hay un error, el
parámetro Error Code (código de error) divulgará un
6 código de error ECOM100 (menos de 100), o un error
de lógica del PLC (mayor de 1000).
7 Estos datos de configuración se almacenan en memoria Flash-ROM en el ECOM100 e
deshabilitarán el módulo ECOM100 por lo menos un medio segundo hasta que se escribe la
memoria Flash-ROM. Por lo tanto, SE RECOMIENDA ALTAMENTE que usted ejecute
8 solamente este IBox UNA VEZ en el primer barrido. Ya que se requiere una transición de OFF
para ON, use un SP0 NORMALMENTE CERRADO para ejecutar al IBox.
9 Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON
en el circuito de ECOM100.
10 Parámetros de ECIPSUP
• ECOM100#: Éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
11 referirse a este número lógico
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
12 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxitoy
13 completed
• Error Code: Especifica la localización en donde será escrito el código de error
• IP Address: Especifica la dirección de IP del módulo
14 • Subnet Mask: Especifica la Subnet Mask para el módulo en questión
• Gateway Address: Especifica la dirección de Gateway para el módulo en questión
A Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
B Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
C Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Vea el mapa de memoria DL06
Vea el mapa de memoria V del DL06 - Data Words
IP Address . . . . . . . . . . . . . . . . . . . . . IP Address 0.0.0.1. to 255.255.255.254
D Subnet Mask Address . . . . . . . IP Address Mask 0.0.0.1. to 255.255.255.254
Gateway Address . . . . . . . . . . . . . . . . IP Address 0.0.0.1. to 255.255.255.254

5–290 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECIPSUP
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
Renglón 2: En el segundo barrido, configure todos los parámetros de TCP/IP en el ECOM100:
8
IP Address: 192.168. 12.100
Subnet Mask: 255.255. 0. 0
9
Dirección de Gateway: 192.168. 0. 1
La instrucción ECIPSUP es accionada en una transición de OFF para ON, (similar a una
10
entrada de un contador). El comando de escribir los parámetros de la configuración de TCP/IP
será enviado al módulo ECOM100 siempre que el flujo de energía en el IBox vaya de 11
APAGADO a ENCENDIDO.
Si funciona correctamente, se activa el bit C102. Si hay una falla, se activa C103. Si hay una 12
falla, usted puede mirar V2001 para ver el código de error específico.
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–291


Capítulo 5: Instrucciones Intelligent Box (IBox)

Lea la descripción del ECOM100 (ECRDDES) (IB-726)


Esta instrucción leerá el campo de descripción del módulo ECOM100 hasta el número de
1 DS5 Usado
caracteres especificados en una transición de OFF para ON al IBox.
HPP N/A
El parámetro Workspace (espacio de trabajo) es un
2 registro interno, privado usado por este IBox y DEBE
SER ÚNICO en esta una instrucción y NO DEBE ser
3 usado en cualquier otro lugar en el programa.MUST
BE UNIQUE in this one instrucción and MUST
NOT be usado anywhere else in your program.
4 Los bits de los parámetros Success o Error se activan
una vez que el comando sea completado. Si hay un
5 error, el parámetro Error Code (código de error)
divulgará un código de error ECOM100 (menos de
6 100), o un error de lógica del PLC (mayor de
1000).ete.
7 Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición en el
circuito de ECOM100. ECOM100 circuit board.

8 Parámetros de ECRDDES
9 • ECOM100#: éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
referirse a este número lógico cified slot. All other ECxxxx IBoxes that need to reference this
10 ECOM100 module must reference this logical number
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
11 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
12 • Descripción: Especifica la dirección de memoria V para el almacemiento donde el nombre del módulo
será colocado

13 • Num Char: Especifica la cantidad de caracteres (bytes) a ser leídos desde el campo Descripción del
módulo ECOM100

14 Parámetro Rango del DL06


ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
A Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
B Descripción . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Num Chars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K1-128
C
D

5–292 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECRDDES
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulo como K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinatar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
Renglón 2: En el segundo barrido , lee la descripción del módulo del módulo ECOM100 y la
almacena en las memorias V3000 hasta V3007 (16 caracteres). Este texto se puede exhibir en 9
una interface de operador, por ejemplo.
La instrucción ECRDDES es activada en una transición de OFF para ON, (similar a una 10
entrada de un contador). El comando de leer la descripción del módulo será enviado al módulo
ECOM100 siempre que el flujo de energía en el IBox vaya de APAGADO a ENCENDIDO. 11
Si funciona correctamente, se activa el bit C100. Si hay una falla, se activa C101.
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–293


Capítulo 5: Instrucciones Intelligent Box (IBox)

Lea la dirección Gateway del ECOM100 (ECRDGWA) (IB-730)


Esta instrucción leerá las 4 partes de la dirección IP del Gateway y las almacenará en 4
1 DS5 Usado posiciones de memoria V consecutivas en formato decimal, en una transición desde OFF para
HPP N/A ON para activar este IBox.
2 El parámetro Workspace (espacio de trabajo) es
un registro interno, privado usado por este IBox
3 y DEBE SER ÚNICO en esta una instrucción y
NO DEBE ser usado en cualquier otro lugar en
el programa.
4 Los bits de los parámetros Success o Error se
activan una vez que el comando sea completado.
5 Si hay un error, el parámetro Error Code
(código de error) divulgará un código de error
6 ECOM100 (menos de 100), o un error de lógica del PLC (mayor de 1000).ete.
Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON
7 en el circuito de ECOM100.

8 Parámetros de ECRDGWA
• ECOM100#: éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
9 referirse a este número lógico cified slot. All other ECxxxx IBoxes that need to reference this
ECOM100 module must reference this logical number
10 • Workspace: Especifica una localización de memoria V que es usada por la instrucción
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
11 • Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
• Gateway IP Addr: Especifica la dirección inicial donde la dirección del Gateway del módulo
12 ECOM100 será colocada en 4 localizaciones consecutivas de memoria V

13
Parámetro Rango del DL06
14 ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
K0-255
Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
A Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
Gateway IP Address (4 Words) . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
B
C
D

5–294 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECRDGWA
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulo como K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinatar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
Renglón 2: En el segundo barrido , lee la dirección Gateway del módulo ECOM100 y la
almacena en V3000 hasta V3003 (4 númerosdecimales). Esta información se puede exhibir en 9
una interface de operador, por ejemplo.
La instrucción ECRDGWA es activada por una transición de OFF para ON, (similar a la
entrada de un contador). El comando de leer la dirección de Gateway del módulo será enviado
10
al módulo ECOM100 siempre que el flujo de energía en el IBox vaya de APAGADO a
ENCENDIDO. 11
Si funciona correctamente, se activa el bit C100. Si hay una falla, se activa C101.
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–295


Capítulo 5: Instrucciones Intelligent Box (IBox)

ECOM100 Read IP Address (ECRDIP) (IB-722)


ECOM100 Read IP Address will read the 4 parts of the IP address and store them in 4
1 DS5 Usado
consecutive V Memory locations in decimal format, on a transition from OFF to ON to the
HPP N/A IBox.
2 El parámetro Workspace (espacio de trabajo) es
un registro interno, privado usado por este IBox
3 y DEBE SER ÚNICO en esta una instrucción y
NO DEBE ser usado en cualquier otro lugar en
el programa.
4 Los bits de los parámetros Success o Error se
activan una vez que el comando sea completado.
5 Si hay un error, el parámetro Error Code
(código de error) divulgará un código de error
6 ECOM100 (menos de 100), o un error de lógica del PLC (mayor de 1000), etc.
Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición en el
7 circuito de ECOM100. ECOM100 circuit board.

8 Parámetros de ECRDIP
• ECOM100#: éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
9 referirse a este número lógico cified slot.
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
10 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
11 • IP Address: Especifica la dirección inicial donde será colocada la dirección de IP del módulo
ECOM100, en 4 localizaciones consecutivas de memoria V
12
Parámetro Rango del DL06
13 ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
K0-255
Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
14 Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
IP Address (4 Words) . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
A
B
C
D

5–296 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECRDIP
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
Renglón 2: En el segundo barrido, lee la dirección IP del módulo ECOM100 y la almacena en 9
V3000 hasta V3003 (4 númerosdecimales). Esta información se puede exhibir en una interface
de operador, por ejemplo.
La instrucción ECRDIP es activada por una transición de OFF para ON, (similar a la entrada
10
de un contador). El comando de leer la dirección IP del módulo será enviado al módulo
ECOM100 siempre que el flujo de energía en el IBox vaya de APAGADO a ENCENDIDO. 11
Si funciona correctamente, se activa el bit C100. Si hay una falla, se activa el bit C101.
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–297


Capítulo 5: Instrucciones Intelligent Box (IBox)

ECOM100 Read Module ID (ECRDMID) (IB-720)


ECOM100 Read Module ID will read the binary (decimal) WORD sized Module ID on a
1 DS5 Usado
transition from OFF to ON to the IBox.
HPP N/A
El parámetro Workspace (espacio de trabajo) es
2 un registro interno, privado usado por este IBox y
DEBE SER ÚNICO en esta una instrucción y
3 NO DEBE ser usado en cualquier otro lugar en el
programa.
4 Los bits de los parámetros Success o Error se
activan una vez que el comando sea completado.
Si hay un error, el parámetro Error Code (código
5 de error) divulgará un código de error ECOM100
(menos de 100), o un error de lógica del PLC
6 (mayor de 1000), etc.
Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON
7 en el circuito de ECOM100.

8 Parámetros de ECRDMID
• ECOM100#: Éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
9 referirse a este número lógico
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
10 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
11 • Module ID: Especifica la localización donde será colocada la identificacion Module ID (decimal) del
módulo ECOM100
12
13 Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
14 Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
A Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Module ID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Vea el mapa de memoria DL06
Vea el mapa de memoria V del DL06 - Data Words

B
C
D

5–298 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECRDMID
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinar y enclavar la lógica en todos los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
Renglón 2: En el segundo barrido, lee la identificación ID del módulo ECOM100 y la
almacena en V2000. Esta información se puede exhibir en una interface de operador, por 9
ejemplo.
La instrucción ECRDMID es activada por una transición de OFF para ON, (similar a la
entrada de un contador). El comando de leer la identificación ID del módulo será enviado al
10
módulo ECOM100 siempre que el flujo de energía en el IBox vaya de APAGADO a
ENCENDIDO. 11
Si funciona correctamente, se activa el bit C100. Si hay una falla, se activa el bir C101.
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–299


Capítulo 5: Instrucciones Intelligent Box (IBox)

Leer el nombre del módulo ECOM100 (ECRDNAM) (IB-724)


Esta instrucción leerá el nombre del módulo hasta el número de caracteres especificados en una
1 DS5 Usado transición de APAGADO a ENCENDIDO al IBox.
HPP N/A
El parámetro Workspace (espacio de trabajo) es un
2 registro interno, privado usado por este IBox y
DEBE SER ÚNICO en esta una instrucción y NO
3 DEBE ser usado en cualquier otro lugar en el
programa.
4 Los bits de los parámetros Success o Error se activan
una vez que el comando sea completado. Si hay un
error, el parámetro Error Code (código de error)
5 divulgará un código de error ECOM100 (menos de
100), o un error de lógica del PLC (mayor de 1000),
6 ete.
Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON
7 en el circuito de ECOM100.

8 Parámetros de ECRDNAM
• ECOM100#: éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
9 referirse a este número lógico
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
10 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
11 • Module Name: Especifica la localización inicial del almacenador intermediario en donde será
almacenado el nombre del módulo ECOM100
12 • Num Chars: Especifica la cantidad de caracteres (bytes) a ser leídos desde el campo Module Name del
módulo ECOM100
13 Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
14 Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
A Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Module Name . . . . . . . . . . . . . . . . . . . . . . . . . . V
Vea el mapa de memoria DL06
Vea el mapa de memoria V del DL06 - Data Words
Num Chars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K1-128
B
C
D

5–300 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECRDNAM
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinar y enclavar la lógica en todos los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
Renglón 2: En el segundo barrido, lee el Module Name (Nombre del módulo) de ECOM100
y la almacena en V3000 hasta V3003 (8 caracteres). Esta información se puede exhibir en una 9
interface de operador, por ejemplo.
La instrucción ECRDNAM es activada por una transición de OFF para ON, (similar a la
entrada de un contador). El comando de leer el nombre del módulo será enviado desde el
10
módulo ECOM100 siempre que el flujo de energía en el IBox vaya de APAGADO a
ENCENDIDO. 11
Si funciona correctamente, se activa el bit C100. Si hay una falla, se activa el bit C101.
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–301


Capítulo 5: Instrucciones Intelligent Box (IBox)

Lea Subnet Mask ECOM100 (ECRDSNM) (IB-732)


Esta instrucción permite leer las 4 partes del Subnet Mask y las almacena en 4 localizaciones de
1 DS5 Usado memria V consecutivas en formato decimal, en una transición desde OFF para ON al IBox.
HPP N/A
El parámetro Workspace (espacio de trabajo)
2 es un registro interno, privado usado por este
IBox y DEBE SER ÚNICO en esta una
3 instrucción y NO DEBE ser usado en
cualquier otro lugar en el programa.
4 Los bits de los parámetros Success o Error se
activan una vez que el comando sea
completado. Si hay un error, el parámetro
5 Error Code (código de error) divulgará un
código de error ECOM100 (menos de 100), o
6 un error de lógica del PLC (mayor de 1000), ete.
Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON
7 en el circuito de ECOM100.

8 Parámetros de ECRDSNM
• ECOM100#: éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
9 referirse a este número lógico
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
10 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxitoy completed
11 • Subnet Mask: Especifica la dirección inicial donde será almacenada la Subnet Mask del módulo
ECOM100 en 4 localizaciones de memoria V consecutivas
12
13 Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
14 Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06

A Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Subnet Mask (4 Words) . . . . . . . . . . . . . . . . . . V
Vea el mapa de memoria DL06
Vea el mapa de memoria V del DL06 - Data Words

B
C
D

5–302 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECRDSNM
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinar y enclavar la lógica en todos los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
Renglón 2: En el segundo barrido, lee el Subnet Mask desde el módulo ECOM100 y la
almacena en V3000 hasta V3003 (4 números decimales). Esta información se puede exhibir en 9
una interface de operador, por ejemplo.
La instrucción ECRDSNM es activada por una transición de OFF para ON, (similar a la
entrada de un contador). El comando de leer el Subnet Mask será enviado al módulo
10
ECOM100 siempre que el flujo de energía en el IBox vaya de APAGADO a ENCENDIDO.
Si funciona correctamente, se activa el bit C100. Si hay una falla, se activa C101.
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–303


Capítulo 5: Instrucciones Intelligent Box (IBox)

ECOM100 Write Descripción (ECWRDES) (IB-727)


Esta instrucción permite escribir una descripción al módulo ECOM100 en una transición de
1 DS5 Usado APAGADO a ENCENDIDO al IBox.
HPP N/A Si usted utiliza un signo dólar ($) o una comilla ("),
2 use la secuencia de escape de PRINT/VPRINT de
dos signos dólar ($$) para un signo solamente o una
3 comilla con un signo dólar ($") para un carácter de
comilla.
4 El parámetro Workspace (espacio de trabajo) es un
registro interno, privado usado por este IBox y
DEBE SER ÚNICO en esta una instrucción y NO
5 DEBE ser usado en cualquier otro lugar en el
programa.
6 Los bits de los parámetros Success o Error se activan una vez que el comando sea completado.
Si hay un error, el parámetro Error Code (código de error) divulgará un código de error
7 ECOM100 (menos de 100), o un error de lógica del PLC (mayor de 1000), ete.
La descripción se almacena en la memoria Flash-ROM en el módulo ECOM100 y la ejecución
de este IBox deshabilitará el módulo ECOM100 por lo menos un medio segundo hasta que
8 escribe la memoria Flash-ROM. Por lo tanto, SE RECOMIENDA que usted ejecute solamente
este IBox UNA VEZ en el primer barrido. Ya que se requiere la ejecución de una trancision de
9 OFF para ON, use un contacto SP0 NORMALMENTE CERRADO para conducir el flujo
de energía al IBox.
10 Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON
en el circuito de ECOM100.
11
Parámetros de ECWRDES
12 • ECOM100#: éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
referirse a este número lógico cified slot. All other ECxxxx IBoxes that need to reference this
13 ECOM100 module must reference this logical number
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
14 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
A • Error Code: Especifica la localización en donde será escrito el código de error
• Descripción: Especifica la descripción (Descripción) que será escrita al módulo
B Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
C Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
D Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Vea el mapa de memoria DL06
Vea el mapa de memoria V del DL06 - Data Words
Descripción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Text

5–304 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECWRDES
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinatar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
Renglón 2: En el segundo barrido del PLC, esta instrucción define la descripción del módulo
8
(Module Descripción) ECOM100. Típicamete, this is done using NetEdit, but this IBox allows
you to configure the module descripción in the ECOM100 using your ladder program. 9
La instrucción EWRDES es activada por una transición de OFF para ON, (similar a la entrada
de un contador). El comando de escribir la descripción del módulo será enviado al módulo
ECOM100 siempre que el flujo de energía en el IBox vaya de APAGADO a ENCENDIDO.
10
Si funciona correctamente, se activa el bit C100. Si hay una falla, se activa el bit C101. Si hay
una falla, usted puede mirar V2001 para ver el código de error específico.
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–305


Capítulo 5: Instrucciones Intelligent Box (IBox)

Escriba la dirección de Gateway del ECOM100 (ECWRGWA) (IB-731)


Esta instrucción permite escribir una dirección dada deGateway al módulo ECOM100 en una
1 DS5 Usado transición de APAGADO a ENCENDIDO al IBox. Vea también la instrucción IBox ECIPSUP
HPP N/A IB-717 para configurar TODOS LOS parámetros de TCP/IP en una sola instrucción - IP
2 ADDRESS, subnet mask, y dirección de
Gateway.
3 El parámetro Workspace (espacio de trabajo) es
un registro interno, privado usado por este IBox
y DEBE SER ÚNICO en esta una instrucción y
4 NO DEBE ser usado en cualquier otro lugar en
el programa.
5 Los bits de los parámetros Success o Error se
activan una vez que el comando sea completado.
6 Si hay un error, el parámetro Error Code (código
de error) divulgará un código de error ECOM100 (menos de 100), o un error de lógica del PLC
(mayor de 1000), ete.
7 La dirección del Gateway se almacena en memria Flash-ROM en el ECOM100 y la ejecución
de este IBox deshabilitará el módulo ECOM100 por lo menos un medio segundo hasta que
8 escribe la Flash-ROM. Por lo tanto, SE RECOMIENDA que usted ejecute solamente este IBox
UNA VEZ, en el primer barrido. Ya que se requiere la ejecución de una trancision de OFF para
9 ON, use un contacto SP0 NORMALMENTE CERRADO para conducir el flujo de energía al
IBox.
10 Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON
en el circuito de ECOM100.

11 Parámetros de ECWRGWA
• ECOM100#: éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
12 especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
referirse a este número lógico cified slot. All other ECxxxx IBoxes that need to reference this
13 ECOM100 module must reference this logical number
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
14 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
A • Error Code: Especifica la localización en donde será escrito el código de error
• Gateway Address: Especifica la dirección de Gateway que será escrita el módulo
B Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
C Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
D Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Gateway Address . . . . . . . . . . . . . . . . . . . . . . . . 0.0.0.1. to 255.255.255.254

5–306 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECWRGWA
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinar y enclavar la lógica en todos los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
Renglón 2: En el segundo barrido del PLC, esta instrucción asigna la dirección de Gateway del
8
módulo ECOM100 a 192.168.0.1.
La instrucción ECWRGWA es activada por una transición de OFF para ON, (similar a la 9
entrada de un contador). El comando de escribir la dirección de Gateway será enviado al
módulo ECOM100 siempre que el flujo de energía en el IBox vaya de APAGADO a
ENCENDIDO.
10
Si funciona correctamente, se activa el bit C100. Si hay una falla, se activa el bit C101. Si hay
una falla, usted puede mirar V2001 para ver el código de error específico.
11
Para configurar todos los parámetros de TCP/IP al módulo ECOM100 en una instrucción, vea
el IBox ECIPSUP.
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–307


Capítulo 5: Instrucciones Intelligent Box (IBox)

ECOM100 Write IP Address (ECWRIP) (IB-723)


Esta instrucción escribe una direccion IP dada al módulo ECOM100 en una transición de
1 DS5 Usado APAGADO a ENCENDIDO al IBox. Vea también la instrucción IBox ECIPSUP IB-717 para
HPP N/A configurar TODOS LOS parámetros de TCP/IP en una sola instrucción - IP ADDRESS,
2 subnet mask, y dirección de Gateway.
El parámetro Workspace (espacio de trabajo) es un
3 registro interno, privado usado por este IBox y
DEBE SER ÚNICO en esta una instrucción y NO
DEBE ser usado en cualquier otro lugar en el
4 programa.
Los bits de los parámetros Success o Error se activan
5 una vez que el comando sea completado. Si hay un
error, el parámetro Error Code (código de error)
6 divulgará un código de error ECOM100 (menos de
100), o un error de lógica del PLC (mayor de 1000),
etc.
7 La dirección de IP se almacena en memoria Flash-ROM en el ECOM100 y la ejecución de este
IBox deshabilitará el módulo ECOM100 por lo menos un medio segundo hasta que escribe la
8 Flash-ROM. Por lo tanto, SE RECOMIENDA que usted ejecute solamente este IBox UNA
VEZ, en el primer barrido. Ya que se requiere la ejecución de una trancision de OFF para ON,
9 use un contacto SP0 NORMALMENTE CERRADO para conducir el flujo de energía al IBox.
Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON
10 en el circuito de ECOM100.

11 Parámetros de ECWRIP
• ECOM100#: éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
12 referirse a este número lógico
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
13 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
14 • Error Code: Especifica la localización en donde será escrito el código de error
• IP Address: Especifica la dirección IP que será escrita al módulo
A
B Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
C Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
D Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
IP Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0.0.0.1. to 255.255.255.254

5–308 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECWRIP
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinar y enclavar la lógica en todos los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
Renglón 2: En el segundo barrido del PLC, esta instrucción asigna la dirección IP Address del
módulo ECOM100 a 192.168.12.100. 9
La instrucción ECWRIP es activada por una transición de OFF para ON, (similar a la entrada
de un contador). El comando de escribir la dirección de IP será enviado al módulo ECOM100
siempre que el flujo de energía en el IBox vaya de APAGADO a ENCENDIDO.
10
Si funciona correctamente, se activa el bit C100. Si hay una falla, se activa el bit C101. Si hay
una falla, usted puede mirar V2001 para ver el código de error específico.
11
Para configurar todos los parámetros de TCP/IP de ECOM100 en una instrucción, vea el IBox
ECIPSUP.
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–309


Capítulo 5: Instrucciones Intelligent Box (IBox)

ECOM100 Write Module ID (ECWRMID) (IB-721)


Esta instrucción escribe una identificación dada (Module ID) al módulo en una transición de
1 DS5 Usado APAGADO a ENCENDIDO al IBox.
HPP N/A
Si la identifiación del módulo (ID) es
2 configurada en hardware usando los DIP
switches, esta instrucción IBox will fail and
3 return error code 1005 (decimal).
El parámetro Workspace (espacio de trabajo) es
4 un registro interno, privado usado por este IBox
y DEBE SER ÚNICO en esta una instrucción
y NO DEBE ser usado en cualquier otro lugar
5 en el programa.
Los bits de los parámetros Success o Error se
6 activan una vez que el comando sea completado. Si hay un error, el parámetro Error Code
(código de error) divulgará un código de error ECOM100 (menos de 100), o un error de lógica
7 del PLC (mayor de 1000), ete.
La información Module ID se almacena en memoria Flash-ROM en el ECOM100 y la
ejecución de este IBox deshabilitará el módulo ECOM100 por lo menos un medio segundo
8 hasta que escriba la memoria Flash-ROM. Por lo tanto, SE RECOMIENDA que usted ejecute
solamente UNA VEZeste IBox, en el primer barrido. Ya que se requiere la ejecución de una
9 trancision de OFF para ON, use un contacto SP0 NORMALMENTE CERRADO para
conducir el flujo de energía al IBox.
10 Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON
en el circuito de ECOM100.
11
Parámetros de ECWRMID
12 • ECOM100#: éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
referirse a este número lógico cified slot. All other ECxxxx IBoxes that need to reference this
13 ECOM100 module must reference this logical number
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
14 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
A • Error Code: Especifica la localización en donde será escrito el código de error
• Module ID: Especifica la identificación Module ID que será escrita al módulo
B Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
C Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria DL06

D Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Vea el mapa de memoria DL06
Vea el mapa de memoria V del DL06 - Data Words
Module ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K0-65535

5–310 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECWRMID
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinar y enclavar la lógica en todos los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
Renglón 2: En el segundo barrido del PLC, esta instrucción asigna la identificación Module ID
del módulo ECOM100. Típicamente esto es hecho usando NetEdit3, pero este IBox le permite 9
configurar the module ID del ECOM100 usando el programa ladder.
La instrucción EWRMID es activada por una transición de OFF para ON, (similar a la entrada
de un contador). El comando de escribir el module ID será enviado al módulo ECOM100
10
siempre que el flujo de energía en el IBox vaya de APAGADO a ENCENDIDO.
Si funciona correctamente, se activa el bit C100. Si hay una falla, se activa el bit C101. Si hay
11
una falla, usted puede mirar V2001 para ver el código de error específico.
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–311


Capítulo 5: Instrucciones Intelligent Box (IBox)

Escribir el nombre del ECOM100 (ECWRNAM) (IB-725)


Esta instrucción escribe un nombre dado al módulo ECOM100 en una transición de
1 DS5 Usado APAGADO a ENCENDIDO al IBox.
HPP N/A
Si usted utiliza un signo dólar ($) o una comilla ("),
2 use la secuencia de escape de PRINT/VPRINT de
dos signos dólar ($$) para un signo solamente o una
3 comilla con un signo dólar ($") para un carácter de
comilla.
4 El parámetro Workspace (espacio de trabajo) es un
registro interno, privado usado por este IBox y
DEBE SER ÚNICO en esta una instrucción y NO
5 DEBE ser usado en cualquier otro lugar en el
programa.
6 Los bits de los parámetros Success o Error se activan una vez que el comando sea completado.
Si hay un error, el parámetro Error Code (código de error) divulgará un código de error
7 ECOM100 (menos de 100), o un error de lógica del PLC (mayor de 1000), ete.
El nombre se almacena en la memoria Flash-ROM en el ECOM100 y la ejecución de este IBox
deshabilitará el módulo ECOM100 por lo menos un medio segundo hasta que escribe la Flash-
8 ROM. Por lo tanto, SE RECOMIENDA que usted ejecute solamente este IBox UNA VEZ en
el primer barrido. Ya que se requiere la ejecución de una trancision de OFF para ON, use un
9 contacto SP0 NORMALMENTE CERRADO para conducir el flujo de energía al IBox.
Para que este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON
10 en el circuito de ECOM100.

11 Parámetros de ECWRNAM
• ECOM100#: Éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
12 especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
referirse a este número lógico
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
13 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
14 • Error Code: Especifica la localización en donde será escrito el código de error
• Module Name: Especifica el nombre que será escrita al módulo
A
Parámetro Rango del DL06
B ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
C Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria DL06
Vea el mapa de memoria DL06
Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
D Module Name . . . . . . . . . . . . . . . . . . . . . . . . . . . Text

5–312 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECWRNAM
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinatar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
Renglón 2: En el segundo barrido del PLC, esta instrucción asigna el nombre del módulo
ECOM100. Típicamente esto es hecho usando NetEdit3, pero este IBox le permite configurar 9
the nombre del ECOM100 usando el programa ladder.
La instrucción EWRNAM es activada por una transición de OFF para ON, (similar a la entrada
de un contador). El comando de escribir el nombre será enviado al módulo ECOM100 siempre
10
que el flujo de energía en el IBox vaya de APAGADO a ENCENDIDO.
Si funciona correctamente, se activa el bit C100. Si hay una falla, usted puede mirar V2001 para
11
ver el código de error específico.
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–313


Capítulo 5: Instrucciones Intelligent Box (IBox)

Escribir Subnet Mask a ECOM100 (ECWRSNM) (IB-733)


Esta instrucción escribe una Subnet Mask dada al módulo ECOM100 en una transición de
1 DS5 Usado APAGADO a ENCENDIDO al IBox. Vea también la instrucción IBox ECIPSUP IB-717 para
HPP N/A configurar TODOS LOS parámetros de TCP/IP en una sola instrucción - IP ADDRESS,
2 subnet mask, y dirección de Gateway.
El parámetro Workspace (espacio de trabajo) es un
3 registro interno, privado usado por este IBox y
DEBE SER ÚNICO en esta una instrucción y NO
DEBE ser usado en cualquier otro lugar en el
4 programa.
Los bits de los parámetros Success o Error se activan
5 una vez que el comando sea completado. Si hay un
error, el parámetro Error Code (código de error)
6 divulgará un código de error ECOM100 (menos de
100), o un error de lógica del PLC (mayor de 1000), ete.
7 La información de Subnet Mask se almacena en la memoria Flash-ROM en el ECOM100 y la
ejecución de este IBox deshabilitará el módulo ECOM100 por lo menos un medio segundo
hasta que escribe la Flash-ROM. Por lo tanto, SE RECOMIENDA que usted ejecute solamente
8 este IBox UNA VEZ en el primer barrido. Ya que se requiere la ejecución de una trancision de
OFF para ON, use un contacto SP0 NORMALMENTE CERRADO para conducir el flujo de
9 energía al IBox.
Para este IBox ECOM100 funcione, usted debe mover el DIP switch 7 a la posición ON en el
10 circuito de ECOM100.

11 Parámetros de ECWRSNM
• ECOM100#: éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
12 referirse a este número lógico
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
13 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
14 • Error Code: Especifica la localización en donde será escrito el código de error
• Subnet Mask: Especifica la Subnet Mask que será escrita al módulo
A
B Parámetro
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Rango del DL06
K0-255
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
C Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
D Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Subnet Mask . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vea el mapa de memoria V del DL06 - Data Words
Masked IP Address

5–314 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECWRSNM
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinatar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
Renglón 2: En el segundo barrido del PLC, esta instrucción asigna el Subnet Mask del módulo
8
ECOM100 a 255.255.0.0
La instrucción ECWRSNM es activada por una transición de OFF para ON, (similar a la 9
entrada de un contador). El comando de escribir el Subnet Mask será enviado al módulo
ECOM100 siempre que el flujo de energía en el IBox vaya de APAGADO a ENCENDIDO. 10
Si funciona correctamente, se activa el bit C100. Si hay una falla, usted puede mirar V2001 para
ver el código de error específico. 11
Para configurar todos los parámetros de TCP/IP de ECOM100 en una instrucción, vea el IBox
ECIPSUPP. 12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–315


Capítulo 5: Instrucciones Intelligent Box (IBox)

Lee datos RX con ECOM100 (ECRX) (IB-740)


Esta instrucción es la instrucción RX con enclavamiento incorporado con otros IBoxes de
1 DS5 Usado ECOM100 RX (ECRX) y ECOM100 WX (ECWX) en el programa para simplificar el
HPP N/A establecimiento de una red de comunicaciones. Realizará la instrucción RX en la red
2 especificada de módulos ECOM100, que
corresponde a un IBox de configuración específica
en la parte superior del programa.
3 El parámetro Workspace (espacio de trabajo) es un
registro interno, privado usado por este IBox y
4 DEBE SER ÚNICO en esta una instrucción y NO
DEBE ser usado en cualquier otro lugar en el
5 programa.
Siempre que este IBox tenga energía, leerá datos de
6 elementos del esclavo especificado en el almacenador
intermediario dado de la memoria V de destino,
dándole oportunidad de que otros IBoxes de ECOM100 RX y ECOM100 WX en ése
7 ECOM100 # sean ejecutados.
Por ejemplo, si usted desea leer y escribir datos continuamente a partir de 5 esclavos diferentes,
8 usted puede tener todas estas instrucciones de ECRX y de ECWX en UN RENGLON
controlado con SP1 (siempre encendido).Se ejecutarán secuencialmente, automáticamente.
9 Parámetros de ECRX
• ECOM100#: Éste es un número lógico asociado a este módulo específico ECOM100 en la ranura
10 especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
referirse a este número lógico
11 • Workspace: Especifica una localización de memoria V que es usada por la instrucción
• Slave ID: Especifica el PLC esclavo que será apuntado por la instrucción de ECRX
12 • From Slave Element (Src): Especifica la dirección de esclavo de donde se leerán los datos
• Number of Bytes: Especifica el número de bytes a leer en el PLC esclavo
13 • To Master Element (Dest): Especifica la localización en donde serán colocados los datos del esclavo
en el PLC maestro con el ECOM100
14 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
A
Parámetro Rango del DL06
B ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
K0-255
Vea el mapa de memoria V del DL06 - Data Words
Slave ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-90
C From Slave Element (Src) X,Y,C,S,T,CT,GX,GY,V Vea el mapa de memoria DL06
Number of Bytes . . . . . . . . . . . . . . . . . . . . . . . K K1-128
D To Master Element (Dest) . . . . . . . . . . . . . . . . V
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06

5–316 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECRX
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con 1
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
2
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
usado para coordinar y enclavar la lógica en todos los otros IBoxes ECxxxx usando este módulo 3
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100. 4
5
6
7
8
9
(Este ejemplo continúa en la próxima página)
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–317


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECRX (continuado)


Renglón 2: Usando ECOM100 # K0, lea X0-X7 del esclavo K7 y escribalo al esclavo K5 tan
1 rápidamente como sea posible.Almacénelos en este PLC local en C200-C207, y escribalo a
C300-C307 en el esclavo K5.
2 Las instrucciones ECRX y ECWX trabajan con los IBoxes para simplificar todo el
establecimiento de una red haciendo los enclavamientos y distribuyendo los recursos
3 apropiados. También suministran un reportaje de errores muy simplificada. Usted no tiene que
preocuparse de ningun relevador especial SP116, por ejemplo, Busy u "ocupado" o los "bits de
error", o en qué número de ranura está colocado un módulo, o tener contadores o shift registers
4 o cualquiera otro enclavamiento para la administración de recursos.
En este ejemplo, SP1 (siempre ON) está conduciendo los IBoxes ECRX y ECWX en el mismo
5 renglón. En el barrido que termina RX, la instrucción WX comenzará en ese mismo barrido.
Tan pronto como la instrucción WX termine, cualquier operación pendiente debajo de ella en
6 el programa conseguirá una chance the ejecutarse. Si no hay IBoxes de ECOM100 pendientes
debajo del ECWX, el ECRX comenzaría su petición otra vezen el pxóximo barrido.
7 Usando el ECRX y el ECWX para todos las lecturas y escrituras en la red es el método más
rápido que el PLC puede hacer para establecimiento de una red. Para los puertos seriales locales,
los módulos de DCM, o los módulos originales de ECOM, use las instrucciones IBoxes
8 NETCFG y NETRX/NETWX.

9
10
11
12
13
14
A
B
C
D

5–318 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Escribe datos WX con ECOM100 (ECWX) (IB-741)


Esta instrucción es la instrucción WX con enclavamiento incorporado con otros IBoxes de
DS5 Usado ECOM100 RX (ECRX) y ECOM100 WX (ECWX) en el programa para simplificar el 1
HPP N/A establecimiento de una red de comunicaciones.
Realizará la instrucción WX en la red especificada
de módulos ECOM100, que corresponde a un IBox
2
de configuración específica en la parte superior del
programa 3
El parámetro Workspace (espacio de trabajo) es un
registro interno, privado usado por este IBox y 4
DEBE SER ÚNICO en esta una instrucción y NO
DEBE ser usado en cualquier otro lugar en el
programa.
5
Siempre que este IBox tenga energía, escribirá datos
de elementos desde el maestro en el almacenador intermediario dado de memoria V al esclavo
6
especificado comenzando con el elemento dado del esclavo, dándole oportunidad de que otros
IBoxes de ECOM100 RX y ECOM100 WX en ése ECOM100 # sean ejecutados. 7
Por ejemplo, si usted desea leer y escribir datos continuamente a partir de 5 esclavos diferentes,
usted puede tener todas estas instrucciones de ECRX y de ECWX en UN RENGLON 8
controlado con SP1 (siempre encendido).Se ejecutarán secuencialmente, automáticamente.
9
Parámetros de ECWX
• ECOM100#: Éste es un número lógico asociado a este módulo específico ECOM100 en la ranura 10
especificada. El resto de los IBoxes ECxxxx que necesitan referirse a este módulo ECOM100 deben
referirse a este número lógico
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
11
• Slave ID: Especifica el PLC esclavo que será apuntado por la instrucción de ECWX
• From Master Element (Src): Especifica una localización de memoria V en el PLC maestro con
12
ECOM100 de donde será el origen de los datos
• Number of Bytes: Especifica la cantidad de bytes a serescritos al PLC esclavo con ECOM(100) 13
• To Slave Element (Dest): Especifica la dirección del esclavo donde serán escritos los datos
• Success: Especifica un bit que se activa cuando la petición se completa con éxito 14
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
A
Parámetro Rango del DL06
ECOM100# . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
K0-255
Vea el mapa de memoria V del DL06 - Data Words
B
Slave ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-90
From Master Element (Src) . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words C
Number of Bytes . . . . . . . . . . . . . . . . . . . . . . . K K1-128
To Slave Element (Dest) . . X,Y,C,S,T,CT,GX,GY,V
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria DL06
Vea el mapa de memoria DL06
D
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06

Manual del PLC DL06, 2a. edición en español, 6/07 5–319


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECWX
Renglón 1: Esta instrucción es responsable por la coordinación y enclavamiento de todos los
1 tipos de IBoxes ECOM100 para un módulo específico ECOM100. Marque el ECOM100 con
un rótulo en la ranura 1 como ECOM100K0. El resto de los IBoxes ECxxxx se refieren a este
2 módulocomo K0. Si usted necesita cambiar el módulo en la base a una ranura diferente, se
necesita solamente cambiar este IBox. V400 es usado como registro global de estado del
resultado para otros IBoxes ECxxxx que usan este módulo específico ECOM100. V401 es
3 usado para coordinar y enclavar la lógica en todo los otros IBoxes ECxxxx usando este módulo
específico ECOM100. V402-V502 es un campo común almacenador intermediario de 130
4 bytes disponibles para uso por otros IBoxes ECxxxx usando este módulo específico ECOM100.

5
6
7
8
9
(Este ejemplo continúa en la próxima página)
10
11
12
13
14
A
B
C
D

5–320 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de ECWX (continuado)


Renglón 2: Usando ECOM100 # K0, lea X0-X7 del esclavo K7 y escribalo al esclavo K5 tan
rápidamente como sea posible. Almacene los datos en este PLC local en C200-V207, y 1
escribalos a C300-C307 en el esclavo K5.
Las instrucciones ECRX y ECWX trabajan con el IBox de configuración del ECOM100 para 2
simplificar todo el establecimiento de una red administrando todo el enclavamiento y recursos
apropiados. También suministran un reportaje de error muy simplificada. Usted no tiene que
preocuparse de ningun SP "Busy" o "bits de error", o en qué número de ranura está un módulo,
3
o tener algunos contadores o shift registers u otros enclavamientos para la administración de
recursos. 4
En este ejemplo, el contacto SP1 (Siempre ON) está controlando las instruccciones IBoxes
ECRX y ECWX en el mismo renglón. En el barrido cuando se termina la ejecución de la 5
instruccion RX, la instrucción comenzará en el mismo barrido. Tan pronto como termine WX,
cualquier operación pendiente debajo de ella en el programa tendrá la oprtunidad de poder ser
ejecutada. Si no hay IBoxes ECOM100 pendientes debajo del ECWX, entonces en el próximo
6
barrido la instrucción ECRX comenzaría su petición otra vez.
Usando el ECRX y el ECWX para toda sus lectturas y escrituras en la red de ECOM100 es lo
7
más rápido que el PLC puede hacer para el establecimiento de una red. Para los puertos seriales
locales, los módulos de DCM, o los módulos originales de ECOM, use los IBoxes NETCFG y 8
NETRX/NETWX.
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–321


Capítulo 5: Instrucciones Intelligent Box (IBox)

Configuración de una read NETCFG (NETCFG) (IB-700)


Esta instrucción define toda la información común necesaria para realizar establecimiento de
1 DS5 Usado una red con instrucciones RX/WX usando las instrucciones IBox NETRX y NETWX
HPP N/A utilizando un puerto serial local de la CPU, el módulo D0-DCM o H0-ECOM.
2 Usted debe tener la instrucción de
configuración de la red en la parte superior de
3 su programa ladder o de etapas con cualquier
otros IBoxes de configuración.
4 Si usted utiliza más que un puerto serial local,
D0-DCM o H0-ECOM en su PLC para el
establecimiento de una red RX/WX, usted
5 debe tener una instrucción diferente de
configuración de red para CADA red de
6 RX/WX en su sistema que utilice alguna
instrucción IBox del tipo NETRX/NETWX.
7 El parámetro Workspace (espacio de trabajo) es un registro interno, privado usado por este IBox
y DEBE SER ÚNICO en esta una instrucción y NO DEBE ser usado en cualquier otro lugar
en el programa.
8 El segundo parámetro "puerto o ranura de la CPU" es el mismo valor que en el byte mas
significativo de la primera instrucción del LD si usted estuviera haciendo el programa de RX o
9 de WX usted mismo. Este valor es específico de la CPU y del puerto, pero los valores posibles
incluyen KF2 para el puerto serial local 2 de la CPU de 06, K3 para un DCM o un ECOM en
10 la ranura 3 de un local 205 bajo, o de K37 para un DCM en una base 3, ranura 7 de 405
extensiones.

11 Parámetros de NETCFG
• Network#: Especifica un único número para cada red de ECOM(100) o de DCM a ser usado
12 • CPU Port or Slot: Especifica el número de acceso de la CPU o el número de la ranura
DCM/ECOM(100) usado
13 • Workspace: Especifica una localización de memoria V que es usada por la instrucción

14 Parámetro Rango del DL06


Network# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255

A CPU Port or Slot . . . . . . . . . . . . . . . . . . . . . . . K


Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
K0-FF
Vea el mapa de memoria V del DL06 - Data Words

B
C
D

5–322 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de NETCFG
Esta instrucción coordina toda la interacción con otras instrucciones IBox (NETRX/NETWX)
en al red. Usted debe tener un IBox de configuración de red para cada red de puerto serial, del 1
módulo de DCM, o la red original del módulo de ECOM en su sistema. Las instrucciones IBox
de configuración deben estar en la parte superior de su programa y debe ser ejecutadas en cada
barrido.
2
Este IBox define la red # K0 estando ubicada en el puerto serial local #2 (KF2) de la CPU. Para
los puertos seriales locales de la CPU o los módulos de DCM/ECOM, use el mismo valor que
3
usted utilizaría en el byte más significativo de la primera instrucción del LD en un renglón
normal de RX/WX de referirse al puerto o al módulo. Cualquiera de los IBoxes NETRX o 4
NETWX que necesite referirse a esta red específica incorporaría K0 para el parámetro de
número de red. 5
El registro del espacio de trabajo es usado para mantener la información del estado sobre el
puerto o el módulo, junto con compartir apropiado y enclavamientos con el otros IBoxes del
tipo NETRX y NETWX en el programa.Este registro de memoria de V no debe ser usado en
6
cualquier otro lugar en el programa entero.
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–323


Capítulo 5: Instrucciones Intelligent Box (IBox)

Leer la red RX (NETRX) (IB-701)


La instrucción RX lee datos en la red con enclavamiento incorporado con el resto de los IBoxes
1 DS5 Usado RX (NETRX) y WX (NETWX) en el programa ladder, para simplificar el establecimiento de
HPP N/A una red de comunicación. Realizará el RX en el número de la red especificada, que corresponde
2 a una configuración de red única específica
(NETCFG) en la parte superior del programa
ladder.
3 El parámetro Workspace (espacio de trabajo) es un
registro interno, privado usado por este IBox y
4 DEBE SER ÚNICO en esta una instrucción y NO
DEBE ser usado en cualquier otro lugar en el
5 programa.
Siempre que este IBox tenga energía, leerá datos del
6 elemento del esclavo especificado en el almacenador
intermediario dado de la memoria V de destino,
dandole la oportunidad de ejecutar otros IBoxes RX y WX en ese número de red.
7 Por ejemplo, si usted desea leer y escribir datos continuamente a partir de 5 esclavos diferentes,
usted puede tener todas estas instrucciones de NETRX y NETWX en UN RENGLON
8 controlado con SP1 (siempre encendido).Se ejecutarán secuencialmente, automáticamente.

9 Parámetros de NETRX
• Network#: Especifica el número de red (puertos de la CPU, DCM, ECOM) definido por la
10 instrucción NETCFG
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
11 • Slave ID: Especifica el PLC esclavo que será interrogado por la instrucción
• From Slave Element (Src): Especifica la dirección del PLC esclavo de donde serán leídos los datos
12 • Number of Bytes: Especifica la cantidad de bytes a ser leídos desde el PLC esclavo
• To Master Element (Dest): Especifica la localización de memoria en el PLC maestro donde serán
13 colocados los datos del esclavo
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
14 • Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito

Parámetro Rango del DL06


A Network# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
B Slave ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
From Slave Element (Src) X,Y,C,S,T,CT,GX,GY,V
K0-90
Vea el mapa de memoria DL06

C Number of Bytes . . . . . . . . . . . . . . . . . . . . . . . K
To Master Element (Dest) . . . . . . . . . . . . . . . . V
K1-128
Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
D Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06

5–324 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de NETRX
Esta instrucción coordina toda la interacción con otras instrucciones IBox (NETRX/NETWX)
en al red. Usted debe tener un IBox de configuración de red para cada red de puerto serial, del 1
módulo de DCM, o la red original del módulo de ECOM en su sistema. Las instrucciones IBox
de configuración deben estar en la parte superior de su programa y debe ser ejecutadas en cada
barrido.
2
Este IBox define la red # K0 estando ubicada en el puerto serial local #2 (KF2) de la CPU. Para
los puertos seriales locales de la CPU o los módulos de DCM/ECOM, use el mismo valor que
3
usted utilizaría en el byte más significativo de la primera instrucción del LD en un renglón
normal de RX/WX de referirse al puerto o al módulo. Cualquiera de los IBoxes NETRX o 4
NETWX que necesite referirse a esta red específica incorporaría K0 para el parámetro de
número de red. 5
El registro del espacio de trabajo es usado para mantener la información del estado sobre el
puerto o el módulo, junto con compartir apropiado y enclavamientos con el otros IBoxes del
tipo NETRX y NETWX en el programa.Este registro de memoria de V no debe ser usado en
6
cualquier otro lugar en el programa entero.
7
8
9
10
11
(Este ejemplo continúa en la próxima página)
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–325


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de NETRX (continuado)


Renglón 2: Using Network# K0, read X0-X7 from Slave K7 and write them to slave K5 as fast
1 as possible. Store them in this local PLC in C200-C207, and write them to C300-C307 in slave
K5.
2 Los IBoxes NETRX y NETWX trabajan con los IBox de configuración de la red para
simplificar todo el establecimiento de una red administrando los enclavamientos y y recursos
3 apropiados. También suministran un reportaje de error muy simplificado. Usted no necesita
preocuparse de ningón SP "Busy bits" o "bits de error", o qué número de acceso o en que
número de ranura está instalado un módulo, o tener contadores o shift register u otros
4 enclavamientos para la admministración de recursos.
En este ejemplo, SP1 (siempre ON) está controlando los IBoxes NETRX y NETWX en el
5 mismo renglón. En el barrido que la red leída termina, la red escribe comenzará que igual
explora.¶Tan pronto como la se complete de ejecutar la instrucción RX, cualquier operación
6 pendiente debajo de ella en el programa va a poder ser ejecutada. Si no hay IBoxes NETRX o
NETWX pendientes debajo de este IBox, entonces en el próximo barrido el NETRX
comenzaría su operación nuevamente.
7 Usando los IBoxes NETRX y el NETWX para todos los puertos seriales, para D0-DCM, o una
red original de ECOM es la forma más rápida que el PLC puede hacer establecimiento de una
8 red. Para los módulos ECOM100, use los IBoxes ECOM100 y ECRX/ECWX.

9
10
11
12
13
14
A
B
C
D

5–326 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Escribir a la red WX (NETWX) (IB-702)


La instrucción WX escribe datos en la red con enclavamiento incorporado con el resto de los
DS5 Usado
IBoxes RX (NETRX) y WX (NETWX) en el programa ladder, para simplificar el 1
HPP N/A
establecimiento de una red de comunicación. Realizará el RX en el número de la red
especificada, que corresponde a una configuración de red única específica (NETCFG) en la
parte superior del programa ladder.
2
El parámetro Workspace (espacio de trabajo) es un
registro interno, privado usado por este IBox y
3
DEBE SER ÚNICO en esta una instrucción y
NO DEBE ser usado en cualquier otro lugar en el 4
programa.
Siempre que este IBox tenga energía, escribirá 5
datos desde una memoria del PLC maestro
especificado a la memoria V de destino en un
esclavo dado, dándole la oportunidad de ejecutar
6
otros IBoxes RX y WX en ese número de red.
Por ejemplo, si usted desea leer y escribir datos continuamente a partir de 5 esclavos diferentes,
7
usted puede tener todas estas instrucciones de NETRX y NETWX en UN RENGLON
controlado con SP1 (siempre encendido). Se ejecutarán secuencialmente, automáticamente. 8
Parámetros de NETWX 9
• Network#: Especifica el número de red (puertos de la CPU, DCM, ECOM) definido por la
instrucción NETCFG 10
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
• Slave ID: Especifica el PLC esclavo que será escrito por la instrucción 11
• From Master Element (Src): Especifica la localización del PLC maestro en donde los datos serán
originados
• Number of Bytes: Especifica la cantidad de bytes a ser escritos al PLC esclavo
12
• To Slave Element (Dest): Especifica la dirección del esclavo en donde serán escritos los datos
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
13
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito 14
Parámetro Rango del DL06 A
Network# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Slave ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Vea el mapa de memoria V del DL06 - Data Words
K0-90
B
From Master Element (Src) . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Number of Bytes . . . . . . . . . . . . . . . . . . . . . . . K K1-128 C
To Slave Element (Dest) . . X,Y,C,S,T,CT,GX,GY,V Vea el mapa de memoria DL06
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria DL06
Vea el mapa de memoria DL06
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–327


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de NETWX
Esta instrucción coordina toda la interacción con otras instrucciones IBox (NETRX/NETWX)
1 en al red. Usted debe tener un IBox de configuración de red para cada red de puerto serial, del
módulo de DCM, o la red original del módulo de ECOM en su sistema. Las instrucciones IBox
2 de configuración deben estar en la parte superior de su programa y debe ser ejecutadas en cada
barrido.
3 Este IBox define la red # K0 estando ubicada en el puerto serial local #2 (KF2) de la CPU. Para
los puertos seriales locales de la CPU o los módulos de DCM/ECOM, use el mismo valor que
usted utilizaría en el byte más significativo de la primera instrucción del LD en un renglón
4 normal de RX/WX de referirse al puerto o al módulo. Cualquiera de los IBoxes NETRX o
NETWX que necesite referirse a esta red específica incorporaría K0 para el parámetro de
5 número de red.
El registro del espacio de trabajo es usado para mantener la información del estado sobre el
6 puerto o el módulo, junto con compartir apropiado y enclavamientos con el otros IBoxes del
tipo NETRX y NETWX en el programa.Este registro de memoria de V no debe ser usado en
cualquier otro lugar en el programa entero.
7
8
9
10
11
12 (Este ejemplo continúa en la próxima página)

13
14
A
B
C
D

5–328 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de NETWX (continuado)


Renglón 2: Con la red # K0, lea X0-X7 del esclavo K7 y escríbalo al esclavo K5 tan rápidamente
como sea posible. Almacénelos en este PLC local en C200-C207, y escríbalos a C300-C307 en 1
el esclavo K5.
Las instrucciones NETRX y NETWX trabajan con el IBox de configuración de la red para 2
simplificar todo el establecimiento de una red controlados los enclavamientos y recursos
apropiados. También suministran un reportaje de error muy simplificado.. Usted no necesita
preocuparse de ningón SP "Busy bits" o "bits de error", o qué número de acceso o en que
3
número de ranura está instalado un módulo, o tener contadores o shift register u otros
enclavamientos para la admministración de recursos. 4
En este ejemplo, SP1 (siempre ON) está controlando los IBoxes NETRX y NETWX en el
mismo renglón. En el mismo barrido en que termina la instrucción RX, comenzará la 5
instrucción WX. Tan pronto como WX termine, cualquier operación pendiente debajo de ella
en el programa podrá ser ejecutada. Si no hay IBoxes NETRX o NETWX pendientes debajo
de este IBox, entonces la instrucción NETRX comenzaría su petición en el próximo barrido.
6
Usando los IBoxes NETRX y el NETWX para todos los puertos seriales, para D0-DCM, o una
red original de ECOM es la forma más rápida que el PLC puede hacer establecimiento de una
7
red. Para los módulos ECOM100, use los IBoxes ECOM100 y ECRX/ECWX.
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–329


Capítulo 5: Instrucciones Intelligent Box (IBox)

Configuración de CTRIO (CTRIO) (IB-1000)


1 DS5 Usado
Esta instrucción define toda la información común para un módulo específico de CTRIO que
sea usado por las otras instrucciones IBox de CTRIO (por ejemplo, CTRLDPR - cargar perfil
HPP N/A deCTRIO, CTREDRL - CTRIO corregir y recargar una tabla de valores predefinidos,
2 CTRRTLM - Modo Run to limit de CTRIO …).
Los parámetros de entradas-salidas para esta instrucción se
3 pueden copiar directamente de la configuración del banco
de trabajo de CTRIO para este módulo de CTRIO.
4 Usted debe tener los IBoxes de configuración de CTRIO en
la parte superior de su programa ladder o de etapas junto
5 con cualquier otros IBoxes de configuración.
Si usted tiene más de un CTRIO en su PLC, usted debe
6 tener un IBox de CTRIO diferente para CADA módulo de
CTRIO en su sistema que use alguna instrucción de IBox
7 CTRIO . Cada IBox de configuración de CTRIO debe
tener un ÚNICO valor de número de CTRIO. Ésto es cómo los IBoxes CTRIO se distinguen
8 entre los diferente módulos de CTRIO en su sistema.
El parámetro del espacio de trabajo(Workspace) es un registro interno, privado usado por este
9 IBox y DEBE SER ÚNICO en esta una instrucción y NO DEBE ser usado en cualquier otro
lugar en el programa.

10 Parámetros de CTRIO
11 • CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario
• Slot: Especifica which PLC option slot the CTRIO module occupies

12 • Workspace: Especifica una localización de memoria V que es usada por la instrucción


• CTRIO Location: Especifica donde se localiza el módulo (base local solamente para DL06)

13 • Input: Esto necesita ser configurado al mismo registro de memoria V que se especifica en CTRIO
Workbench que dirección que comienza para las entradas, para este CTRIO único.
• Output: Esto necesita ser configurado al mismo registro de memoria V que se especifica en CTRIO
14 Workbench como ‘Starting V address for outputs’ para este CTRIO único.

A Parámetro Rango del DL06


CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
B Slot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
K1-4
Vea el mapa de memoria V del DL06 - Data Words
Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
C Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

5–330 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRIO
Renglón 1: Este ejemplo configura el módulo H0-CTRIO en la ranura 2 de la bnase del PLC
DL06. Cada CTRIO en el sistema debe usar un I-box CTRIO diferente antes de que otros I 1
Boxes CTRxxxx puedan ser usados. El módulo H0-CTRIO ha sido configurado para usa
V2000 hasta V2025 en sus datos de entrada, y V2030 hasta V2061 for para sus datos de salidas. 2
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–331


Capítulo 5: Instrucciones Intelligent Box (IBox)

Cree una tabla de valores predefinidos en CTRIO (CTRADPT) (IB-1005)


Esta instrucción añadirá una entrada al final de una tabla de valores predefinidos en un recurso
1 DS5 Usado específico de salida de CTRIO, en una transición de OFF para ON. Este IBox tomará más de
HPP N/A un barrido del PLC para ejecutarse. El bit de éxito o de error se activará cuando el comando se
2 haya completado. Si el bit de error está encendido, usted puede utilizar el IBox de CTRIO leer
código de error (CTRRDER) para obtener para obtener
información adicional del error.
3 Posibles tipos de entradas:
4 K0: Set
K1: Reset
5 K2: Pulse On (usa Pulse Time)
K3: Pulse Off (usa Pulse Time)
6 K4: Toggle
K5: Reset Count
7 Observe que el parámetro Pulse Time no tiene importancia para algunos tipos de entradas.
El registro Workspace (espacio de trabajo) es para el uso interno por esta instrucción de IBox y
8 NO DEBE ser usado en cualquier otro lugar en su programa.

9 Parámetros de CTRAPT
• CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario (Vea CTRIO
10 Config)
• Output#: Especifica una salidadel módulo H0-CTRIO a ser usada por la instrucción
11 • Entry Type: Especifica un tipo de entrada a ser agregado al finalde una tabla de valores predefinidos
• Pulse Time: Especifica un tiempo de un pulso para los tipos de entradas Pulse On yPulse Off
12 • Preset Count: Especifica un valor inicial de conteo en que comenzará después de un Reset
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
13 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
14 Parámetro Rango del DL06
CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
A Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Entry Type . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
K0-3
K0-5; Vea el mapa de memoria V del DL06 - Data Words

B Pulse Time . . . . . . . . . . . . . . . . . . . . . . . . . . V,K


Preset Count . . . . . . . . . . . . . . . . . . . . . . . . . V,K
K0-65535; Vea el mapa de memoria V del DL06 - Data Words
K0-2147434528; Vea el mapa de memoria DL06
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
C Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria DL06
Vea el mapa de memoria DL06

5–332 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRADPT
Renglón 1: Este ejemplo considera instalar el módulo H0-CTRIO en la ranura 2 del DL06.
Cada H0-CTRIO en el sistema necesitará un IBox separada de CTRIO antes de que algún IBox 1
de CTRxxxx pueda ser usado. El módulo H0-CTRIO se ha configurado para usar V2000 hasta
V2025 para los datos de entradas y V2030 hasta V2061 para sus datos de salidas. 2
3
4
5
Renglón 2: Este renglón es es un método de muestreo para permitir el comando de CTRADPT. 6
Se usa un bit C para permitir que el programador controle un comando con Data View para
propósitos de prueba. 7
Al activar C0 causará que la instrucción CTRADPT agregue una nueva tabla de valores
predefinidos en la salida número 0 en el H0-CTRIO en la ranura 2. El nuevo valor predefinido
serán un comando de RESET (tipo de entrada K1=Reset), y el tiempo de pulso es dejado en
8
cero pues el tipo del reset no utiliza esto, y la cuenta en la cual él se reseteará será 20.
El procedimiento de funcionamiento para este ejemplo es cargar el archivo de
9
CTRADPT_ex1.cwb a su H0-CTRIO, luego introducir el código mostrado aquí, cambiar al
modo RUN, permitir la salida número 0 activando el bit C2 en Data View, gire le encoder 10
conectado al módulo H0-CTRIO a un valor superior a 10 conteos y la salida y el LED de
salida 0 se encenderá y permanercerá así en todos los conteos que estén arriba de 10. Ahora
resetee el contador con el bit C1, habilite C0 para executar la instrucción CTRADPT para dar
11
un reset a la salida 0 cuando el conteo llegue a 20, encienda el bit C2 para activar la salida 0, y
luego mueva el encoder encoder a un valor mas grande que 10+ (La salida 0 debe encenderse) 12
y luego continúe hasta que pase de 20+ (la salida 0 debe apagarse).
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–333


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRADPT (continuado)


Renglón 3: Este renglón le permite al programador que resetee el contador desde DirectSOFT.
1
Resetea contador
2
3
4
Renglón 4: Este renglón le permite al programador que habilite la salida 0 desde DirectSOFT.
5
Activa la salida 0
6
7
8
9
10
11
12
13
14
A
B
C
D

5–334 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Limpia la tabla de valores predefinidos de CTRIO (CTRCLRT) (IB-1007)


Esta instrucción coloca en cero una tabla de valores predefinidos en la memoria RAM del PLC,
DS5 Usado en una transición de OFF para ON. Este IBox 1
HPP N/A tomará más de un barrido del PLC para ejecutarse.
El bit de éxito o de error se activará cuando el 2
comando se haya completado. Si el bit de error
está encendido, usted puede utilizar el código de
error leído del IBox de CTRIO (CTRRDER) para
3
obtener información adicional del error.
El registro Workspace (espacio de trabajo) es usado
4
internamente y no debe ser usado en ningún otro
lugar en el programa entero. 5
Parámetros de CTRCLRT 6
• CTRIO#: Especifica un módulo H0-CTRIO con un número definido por el usuario(Vea CTRIO
Config)TRIO Config) 7
• Output#: Especifica una salida de un módulo H0-CTRIO a ser usado por la instrucción
• Workspace: Especifica una localización de memoria V que es usada por la instrucción 8
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito 9
Parámetro Rango del DL06
10
CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-3 11
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria DL06
Vea el mapa de memoria DL06
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–335


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRCLRT
Renglón 1:Este ejemplo instala el módulo H0-CTRIO en la ranura 2 del PLC. Cada H0-
1 CTRIO en el sistema necesitará un IBox de CTRIO separado antes de que pueda ser usado
algun otro IBox CTRxxxx. El módulo H0-CTRIO se ha configurado para utilizar V2000 hasta
2 V2025 para sus datos de entradas y V2030 con V2061 para sus datos de salidas.

3
4
5
6 Renglón 2: Este renglón es un método para permitir el comando de CTRCLRT. Se usa un bit
C para permitir que el programador controle el comando desde Data View para propósitos de
7 prueba.
Activando C0 causará que la instrucción de CTRCLRT limpie la tabla de valores predefinidos
8 en la salida 0 en el H0-CTRIO en la ranura 2 .
El procedimiento de funcionamiento para este ejemplo es cargar el archivo de
9 CTRCLRT_ex1.cwb a su módulo H0-CTRIO, luego introducir el código mostrado aquí,
cambio al modo RUN, habilitar la salida 0 activando el bit C2 en Data View, gire el encoder
conectado al módulo H0-CTRIO para obtener un valor mas grade que 10 y el LED de la salida
10 0 se encenderá y permanecerá encendida hasta que el conteo llegue a sobre 20, y en ese
momento se apagará. Luego resetee el contador con el bit C1, habilite el bit C0 para ejecutat la
11 instrucción CTRCLRT para hacer cero la tabla de valores predefinidos, active el bit C2 para
habilitar la salida 0, y luego gire el encoder a un valor de conteo sobre 10+ (La salida 0 NO
DEBE encenderse).
12
13
14
A
B
C
D

5–336 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRCLRT (continuado)


Renglón 3: Este renglón le permite al programador que resetee el contador desde DirectSOFT.
1
Resetea contador
2
3
4
Renglón 4: Este renglón le permite al programador que habilite la salida 0 desde DirectSOFT.
5
Activa la salida 0
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–337


Capítulo 5: Instrucciones Intelligent Box (IBox)

Corregir una tabla de valores predefinidos de CTRIO (CTREDPT) (IB-1003)


Esta instrucción corrige, en una transición de APAGADO a ENCENDIDO a este IBox, una
1 DS5 Usado
sola entrada de una tabla de valores predefinidos en un recurso específico de la salida de
CTRIO. Este IBox es bueno si usted está corrigiendo más de una entrada en un archivo a la vez.
N/A
2 HPP
Si usted desea hacer solamente una correción y después recargar la tabla inmediatamente, vea el
IBox CTRIO CTREDRL. Este IBox tomará más de un barrido del PLC para ejecutarse.
3 El bit de éxito o de error se activará cuando el
comando sea completado. Si el bit de error está
encendido, usted puede usar el IBox código de error
4 leído de CTRIO (CTRRDER) para conseguir una
información más detallada del error.
5 Tipo de entrada:
K0: Set
6 K1: Reset
K2: Pulse On (usa Pulse Time)
7 K3: Pulse Off (usa Pulse Time)
K4: Toggle
8 K5: Reset Count
9 Observe que el parámetro Pulse Time es ignorado por algunos tipos de entradas.
El registro Workspace (espacio de trabajo) es para el uso interno por esta instrucción de IBox y
10 NO DEBE ser usado en cualquier otro lugar en su programa.

11 Parámetros de CTREDPT
• CTRIO#: Especifica un módulo H0-CTRIO con un número definido por el usuario (Vea CTRIO
Config)
12 • Output#: Especifica una salida del módulo H0-CTRIO a ser usado by the instrucción
• Table#: Especifica un número de tabla en la cual será modificada un dato
13 • Entry#: Especifica la localización del dato en la tabla de valores predefinidos a ser modificada
• Entry Type: Especifica un tipo de entrada a ser agregado durante la modificación
14 • Pulse Time: Especifica un pulse time para tipos de entradas Pulse On y Pulse Off

A • Preset Count: Especifica un valor inicial de conteo para comenzar después de un Reset
• Workspace: Especifica una localización de memoria V que es usada por la instrucción

B • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxitosuccessfully

C
D

5–338 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Parámetro Rango del DL06


CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
K0-255
K0-3
1
Table# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-255; Vea el mapa de memoria V del DL06 - Data Words
Entry# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-255; Vea el mapa de memoria V del DL06 - Data Words 2
Entry Type . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-5; Vea el mapa de memoria V del DL06 - Data Words
Pulse Time . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
Preset Count . . . . . . . . . . . . . . . . . . . . . . . . . V,K
K0-65535; Vea el mapa de memoria V del DL06 - Data Words
K0-2147434528; Vea el mapa de memoria DL06
3
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06 4
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
5
Ejemplo de CTREDPT
Renglón 1: Este ejemplo instala el módulo H0-CTRIO en la ranura 2 de la base del PLC. Cada 6
H0-CTRIO en el sistema necesitará un IBox de CTRIO separado antes de quepueda ser usado
cualquier IBox de CTRxxxx. El módulo H0-CTRIO se ha configurado para usar V2000 hasta
V2025 para sus datos de entradas, y V2030 hasta V2061 para sus datos de salidas.
7
8
9
10
11
12
(Este ejemplo continúa en la próxima página)
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–339


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTREDPT (continuado)


Renglón 2: Este renglón es un método para permitir el comando de CTREDPT.¶ Se usa un bit
1 Co para permitir que el programador controle el comando desde Data View para propósitos de
prueba.
2 Al activar el bit C0 causará que la instrucción CTREDPT cambie el segundo valor predefinido
a un reset de un conteo en 20 a un reset en una conteo en 30 para la salida 0 en el H0-CTRIO
3 en la ranura 2.
El procedimiento de funcionamiento para este ejemplo es cargar el archivo de
4 CTREDPT_ex1.cwb al H0-CTRIO, luego colocar el código mostrado aquí, cambiae el modo
a RUN, permitir habilitar la salida 0 activando el bit C2 en Data View, luego gire el encoder
conectado al módulo H0-CTRIO para obtener una valor sobre10 y el LED de la salida 0 se
5 encenderá y permanecerá encendido hasta cuando se llegue a un valor sobre 20, cuando se
apagará. Luego haga un reset del contador con el bit C1, habilite el bit C0 para ejecutar la
6 instrucción CTREDPT command para cambiar el segundo valor predefinido, active el bit C2
para habiliar la salida 0, y luego gire el encoder a un valor sobre 10+ (La salida 0 debería
activarse) y luego continúe mas arriba de un conteo de 30 (La salida 0 debería apagarse).
7 Observe que debemos también cargar el perfil después de cambiar el o los valores predefinidos,
esta es la razón por la cual la instrucción CTRLDPR sigue la instrucción CTREDPT en este
8 ejemplo.

9
10
11
12
13
14
A
B
C
(Este ejemplo continúa en la próxima página)
D

5–340 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTREDPT(continuado)
Renglón 3: Este renglón le permite al programador que resetee el contador desde DirectSOFT.
Resetea contador
1
2
3
4
Renglón 4: Este renglón le permite al programador que habilite la salida 0 desde DirectSOFT.
Activa la salida 0 5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–341


Capítulo 5: Instrucciones Intelligent Box (IBox)

Modificar una tabla de valores predefinidos de CTRIO (CTREDRL) (IB-1002)


Esta instrucción ejecutará la doble operación de modificar datos en una tabla de valores
1 DS5 Usado predefinidos y recargar auna salida de un módulo H0-CTRIO en una instrucción, en una
HPP N/A transición de APAGADO a ENCENDIDO a este IBox. Este IBox tomará más de un barrido
2 del PLC para ejecutarse. El bit de éxito o de error se activará cuando el comando se haya
completado. Si el bit de error está encendido, usted puede utilizar el IBox de CTRIO leer
código de error (CTRRDER) para obtener información
3 adicional del error.

4 Tipo de entrada:

5 K0: Set
K1: Reset
6 K2: Pulse On (uses Pulse Time)
K3: Pulse Off (uses Pulse Time)
7 K4: Toggle
K5: Reset Count
8 Observe que el parámetro Pulse Time no tiene importancia para algunos tipos de entradas.
El registro Workspace (espacio de trabajo) es para el uso interno por esta instrucción de IBox y
9 NO DEBE ser usado en cualquier otro lugar en su programa.

10 Parámetros de CTREDRL
• CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario (Vea CTRIO
11 Config)
• Output#: Especifica una salida del módulo H0-CTRIO a ser usada por la instrucción
12 • Table#: Especifica un Table number of which an Entry is to be edited
• Entry#: Especifica un Entry location in the Preset Table to be edited
13 • Entry Type: Especifica el tipo de entrada a ser agregado durante la modificación
• Pulse Time: Especifica un tiempo del pulso para los tipos de entradas Pulse On y Pulse Off
14 • Preset Count: Especifica un valor inicial de conteo al comenzar después de un Reset
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
A • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
B
C
D

5–342 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Parámetro Rango del DL06


CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255 1
Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-3
Table# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
Entry# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
K0-255; Vea el mapa de memoria V del DL06 - Data Words
K0-255; Vea el mapa de memoria V del DL06 - Data Words
2
Entry Type . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-5; Vea el mapa de memoria V del DL06 - Data Words
Pulse Time . . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-65535; Vea el mapa de memoria V del DL06 - Data Words 3
Preset Count . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-2147434528; Vea el mapa de memoria DL06
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria DL06
4
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
5
Ejemplo de CTREDRL
Renglón 1: Este ejemplo instala el módulo H0-CTRIO en la ranura 2 de la base del PLC. Cada
6
H0-CTRIO en el sistema necesitará un IBox de CTRIO separado antes de que pueda ser usado
cualquier IBox de CTRxxxx. El módulo H0-CTRIO se ha configurado para usar V2000 hasta 7
V2025 para sus datos de entradas y V2030 hasta V2061 para sus datos de salidas.
8
9
10
11
(Este ejemplo continúa en la próxima página) 12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–343


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTREDRL (continuado)


Renglón 2: Este renglón es un método para permitir usar la instrucción CTREDRL. Se usa un
1 bit C para permitir que el programador controle la instrucción desde Data View para propósitos
de prueba.
2 Al activar el bit C0 causará que la instrucción CTREDRL cambie el segundo valor predefinido
a un reset de un conteo en 20 a un reset en una conteo en 30 para la salida 0 en el H0-CTRIO
3 en la ranura 2.
El procedimiento de funcionamiento para este ejemplo es cargar el archivo de
4 CTREDRL_ex1.cwb al H0-CTRIO, luego colocar el código mostrado aquí, cambie el modo a
RUN, luego habilite la salida 0 activando el bit C2 en Data View, luego gire el encoder
conectado al módulo H0-CTRIO para obtener una valor sobre 10 y el LED de la salida 0 se
5 encenderá y permanecerá encendido hasta cuando se llegue a un valor sobre 20, cuando se
apagará. Luego haga un reset del contador con el bit C1, habilite el bit C0 para ejecutar la
6 instrucción CTREDRL para cambiar el segundo valor predefinido a 30, y luego gire el encoder
a un valor sobre 10+ (La salida 0 debería activarse) y luego continúe mas arriba de un conteo de
30 (La salida 0 debería apagarse).
7 Observe que no es necesario recargar el archivo separadamente. sin embargo, la instrucción
puede cambiar un valor por vez.
8
Inicie CTREDRL
9
10
11
12
13
(Este ejemplo continúa en la próxima página)
14
A
B
C
D

5–344 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTREDRL (continuado)


Renglón 3: Este renglón le permite al programador que resetee el contador desde DirectSOFT.
1
Resetea contador
2
3
4
Renglón 4: Este renglón le permite al programador que habilite la salida 0 desde DirectSOFT.
5
Activa la salida 0
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–345


Capítulo 5: Instrucciones Intelligent Box (IBox)

Initializar una tabla de valores predefinidos de CTRIO (CTRINPT) (IB-1004)


1 DS5 Usado
Esta instrucción creará una Tabla de Valores Predefinidos en la memoria, pero como como
archivo, en un recurso de salidas específica de CTRIO, en una transición de APAGADO a
ENCENDIDO a este IBox.Este IBox tomará más de un barrido del PLC para ejecutarse. El bit
2 HPP N/A
de éxito o de error se activará cuando el comando se haya completado. Si el bit de error está
encendido, usted puede utilizar el IBox de CTRIO leer
3 código de error (CTRRDER) para obtener para obtener
información adicional del error.
4 Tipo de entrada:
K0: Set
5 K1: Reset
K2: Pulse On (uses Pulse Time)
6 K3: Pulse Off (uses Pulse Time)
7 K4: Toggle
K5: Reset Count
8 Observe que el parámetro Pulse Time no tiene importancia para algunos tipos de entradas.
El registro Workspace (espacio de trabajo) es para el uso interno por esta instrucción de IBox y
9 NO DEBE ser usado en cualquier otro lugar en su programa.

10 Parámetros de CTRINPT
• CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario(Vea CTRIO
11 Config)
• Preset Count: Especifica un valor inicial de conteo al comenzar después de un Reset
12 • Output#: Especifica una salida del módulo H0-CTRIO a ser usada por la instrucción
• Entry Type: Especifica el tipo de entrada a ser agregado durante la modificación
13 • Pulse Time: Especifica un tiempo del pulso para los tipos de entradas Pulse On y Pulse Off
• Preset Count: Especifica un valor inicial de conteo al comenzar después de un Reset
14 • Workspace: Especifica una localización de memoria V que es usada por la instrucción
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
A • Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito

B
C
D

5–346 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Parámetro Rango del DL06


CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255 1
Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-3
Entry Type . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
Pulse Time . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
K0-5; Vea el mapa de memoria V del DL06 - Data Words
K0-65535; Vea el mapa de memoria V del DL06 - Data Words
2
Preset Count . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-2147434528; Vea el mapa de memoria DL06
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words 3
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
4
Ejemplo de CTRINPT 5
Renglón 1: Este ejemplo instala el módulo H0-CTRIO en la ranura 2 de la base del PLC. Cada
H0-CTRIO en el sistema necesitará un IBox de CTRIO separado antes de que pueda ser usado
cualquier IBox de CTRxxxx. El módulo H0-CTRIO se ha configurado para usar V2000 hasta 6
V2025 para sus datos de entradas y V2030 hasta V2061 para sus datos de salidas.
7
8
9
10
(Este ejemplo continúa en la próxima página) 11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–347


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRINPT(continuado)
Renglón 2: Este renglón es un método para permitir usar la instrucción CTRINPT. Se usa un
1 bit C para permitir que el programador controle la instrucción desde Data View para propósitos
de prueba.
2 Al activar el bit C0 causará que la instrucción CTRINPT cree una tabla de valores predefinidos
pero no como archivo y la usará con la salida 0. En este caso, el valor predefinido será un SET
3 cuando el conteo llegue a 15 para la salida 0.
El procedimiento de funcionamiento para este ejemplo es cargar el archivo de
4 CTRINPT_ex1.cwb al módulo H0-CTRIO, luego colocar el código mostrado aquí, cambie el
modo a RUN, luego habilite la salida 0 activando el bit C2 en Data View, luego gire el encoder
conectado al módulo H0-CTRIO para obtener una valor sobre 15 y el LED de la salida 0 no
5 se encenderá. Luego haga un reset del contador con el bit C1, habilite el bit C0 para ejecutar
la instrucción CTRINPT para crear un único valor predefinido para hacer un set an contar 15,
6 y luego gire el encoder a un valor sobre 15+ (La salida 0 debería activarse).
Observe que no es necesario recargar el archivo separadamente. Sin embargo, la instrucción
7 puede cambiar un valor por vez.

8
9
10
11
12 (Este ejemplo continúa en la próxima página)

13
14
A
B
C
D

5–348 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRINPT (continuado)


Renglón 3: Este renglón le permite al programador que resetee el contador desde DirectSOFT.
1
Resetea contador
2
3
Renglón 4: Este renglón le permite al programador que habilite la salida 0 desde DirectSOFT. 4
Activa la salida 0 5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–349


Capítulo 5: Instrucciones Intelligent Box (IBox)

Inicializar una tabla de valores predefinidos en CTRIO (CTRINTR) (IB-1010)


1 DS5 Usado
Esta instrucción creará una sola entrada en la tabla de valores predefinidos en memoria pero no
como archivo, en una transición de APAGADO a ENCENDIDO a este IBox.
HPP N/A
2 Este IBox tomará más de un barrido del PLC para ejecutarse. El bit de éxito o de error se activará
cuando el comando se haya completado. Si el bit de error está encendido, usted puede utilizar
el IBox de CTRIO leer código de error (CTRRDER) para obtener para obtener información
3 adicional del error.
Entry Type:
4 K0: Set
5 K1: Reset
K2: Pulse On (uses Pulse Time)
6 K3: Pulse Off (uses Pulse Time)
K4: Toggle
7 K5: Reset Count
Observe que el parámetro Pulse Time no tiene importancia para algunos tipos de entradas..
8 El registro Workspace (espacio de trabajo) es para el uso interno por esta instrucción de IBox y
NO DEBE ser usado en cualquier otro lugar en su programa.
9
10 Parámetros de CTRINTR
• CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario(Vea CTRIO
Config)
11 • Output#: Especifica una salida del módulo H0-CTRIO a ser usada por la instrucción
• Entry Type: Especifica el tipo de entrada a ser agregado durante la modificación
12 • Pulse Time: Especifica un tiempo del pulso para los tipos de entradas Pulse On y Pulse Off
• Preset Count: Especifica un valor inicial de conteo al comenzar después de un Reset
13 • Workspace: Especifica una localización de memoria V que es usada por la instrucción
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
14 • Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito

A
B
C
D

5–350 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Parámetro Rango del DL06


CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255 1
Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-3
Entry Type . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
Pulse Time . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
K0-5; Vea el mapa de memoria V del DL06 - Data Words
K0-65535; Vea el mapa de memoria V del DL06 - Data Words
2
Preset Count . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-2147434528; Vea el mapa de memoria DL06
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words 3
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
4
Ejemplo de CTRINTR 5
Renglón 1: Este ejemplo instala el módulo H0-CTRIO en la ranura 2 de la base del PLC. Cada
H0-CTRIO en el sistema necesitará un IBox de CTRIO separado antes de que pueda ser usado
cualquier IBox de CTRxxxx. El módulo H0-CTRIO se ha configurado para usar V2000 hasta 6
V2025 para sus datos de entradas y V2030 hasta V2061 para sus datos de salidas.
7
8
9
10
(Este ejemplo continúa en la próxima página) 11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–351


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRINTR(continuado)
Renglón 2: Este renglón es un método para permitir usar la instrucción CTRINTR. Se usa un
1 bit C para permitir que el programador controle la instrucción desde Data View para propósitos
de prueba.
2 Al activar el bit C0 causará que la instrucción CTRINTR cree una tabla única de valores
predefinidos pero no como archivo y la usará con la salida 0. En este caso, el valor predefinido
3 será un RESET cuando el conteo llegue a 25 para la salida 0.
El procedimiento de funcionamiento para este ejemplo es cargar el archivo de
4 CTRINTR_ex1.cwb al módulo H0-CTRIO, luego coloque el código mostrado aquí, cambie
el modo a RUN, luego habilite la salida 0 activando el bit C2 en Data View, luego gire el
encoder conectado al módulo H0-CTRIO para obtener una valor sobre 1o y el LED de la salida
5 0 se encenderá. Luego active el bit C0 para ejecutar la instrucción CTRINTR y luego gire el
encoder a un valor sobre 25+ (La salida 0 debería activarse).
6 Observe que no es necesario recargar el archivo separadamente. Sin embargo, la instrucción
puede cambiar un valor por vez.
7
8
9
10
11
12 (Este ejemplo continúa en la próxima página)

13
14
A
B
C
D

5–352 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRINTR (continuado)


Renglón 3: Este renglón le permite al programador que resetee el contador desde DirectSOFT.
1
Resetee el contador
2
3
4
Renglón 4: Este renglón le permite al programador que habilite la salida 0 desde DirectSOFT.
5
Habilite la salida 0
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–353


Capítulo 5: Instrucciones Intelligent Box (IBox)

Cargar un perfil en CTRIO (CTRLDPR) (IB-1001)


Esta instrucción carga un archivo de perfil de un módulo H0-CTRIO an un CTRIO Output
1 DS5 Usado resource en una transición desde OFF para ON a este IBox.
HPP N/A Este IBox tomará más de un barrido del PLC para
2 ejecutarse. El bit de éxito o de error se activará
cuando el comando se haya completado. Si el bit de
3 error está encendido, usted puede utilizar el IBox de
CTRIO leer código de error (CTRRDER) para
obtener para obtener información adicional del
4 error
El registro Workspace (espacio de trabajo) es para el
5 uso interno por esta instrucción de IBox y NO
DEBE ser usado en cualquier otro lugar en su
6 programa.

7 Parámetros de CTRLDPR
• CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario(Vea CTRIO
8 Config)
• Output#: Especifica una salioda de CTRIO a ser usada por la instrucción
9 • File#: Especifica un número de archivo de CTRIO a ser cargado
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
10 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
11 Parámetro Rango del DL06
CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
12 Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-3
File# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-255; Vea el mapa de memoria V del DL06 - Data Words
13 Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
14
A
B
C
D

5–354 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRLDPR
Renglón 1: Este ejemplo instala el módulo H0-CTRIO en la ranura 2 de la base del PLC. Cada
H0-CTRIO en el sistema necesitará un IBox de CTRIO separado antes de que pueda ser usado 1
cualquier IBox de CTRxxxx. El módulo H0-CTRIO se ha configurado para usar V2000 hasta
V2025 para sus datos de entradas y V2030 hasta V2061 para sus datos de salidas. 2
3
4
5
6
Renglón 2: Este IBox de carga el perfil de CTRIO cargará el archivo 1 en la memoria de trabajo
de la salida 0 en el módulo H0-CTRIO 1. Este programa de ejemplo requiere que Ud. cargue 7
CTRLDPR_IBox.cwb en su módulo H0-CTRIO.
8
9
10
11
12
(Este ejemplo continúa en la próxima página)
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–355


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRLDPR(continuado)
Renglón 3: Si el archivo es cargado con éxito, active el bit C1.
1
Exito de CTRLDPR
2
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

5–356 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Lea error en CTRIO (CTRRDER) (IB-1014)


Esta instrucción obtendrá el valor de código decimal de error del módulo CTRIO (enumerado
DS5 Usado
abajo) y lo pondrá en el registro dado del código de error, en una transición de APAGADO a 1
HPP N/A
ENCENDIDO al IBox.
Ya que el código de error en el CTRIO se mantiene 2
solamente hasta que se da otro comando de CTRIO,
usted debe utilizar esta instrucción inmediatamente
después del IBox de CTRIO que entrega un error con el
3
parámetro del bit de error.
El registro Workspace (espacio de trabajo) es para uso
4
interno por esta instrucción de IBox y NO DEBE ser
usado en cualquier otro lugar en su programa. 5
Códigos de error:
0: No hay error 6
100: El código de comando especificado está desconocido o sin apoyo
101: Número de archivo no encontrado en el sistema de archivos
7
102: El tipo del archivo es incorrecto para la función de salida especificada
103: El tipo del perfil es desconocido
8
104: La entrada especificada no se configura como límite en esta salida 9
105: El borde especificado de la entrada del límite está fuera de rango
106: La función de entrada especificada no está configurada o es inválida 10
107: El número especificado de la función de entrada está fuera de rango
108: La función Especificada de valor predefinida es inválida 11
109: La tabla de valores prefedinidos está llena
110: La entrada especificada de la tabla está fuera de rango 12
111: El número especificado del registro está fuera de rango
112: El registro especificado es una entrada o salida que no está configurada 13
2001: Código de error de lectura de error - no puede tener acceso a CTRIO a través de ERM
14
Parámetros de CTRRDER
• CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario(Vea CTRIO
A
Config)
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
B
• Error Code: Especifica la localización en donde será escrito el código de error
Parámetro Rango del DL06 C
CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words D
Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words

Manual del PLC DL06, 2a. edición en español, 6/07 5–357


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRRDER
Este ejemplo instala el módulo H0-CTRIO en la ranura 2 de la base del PLC. Cada H0-
1 CTRIO en el sistema necesitará un IBox de CTRIO separado antes de que pueda ser usado
cualquier IBox de CTRxxxx. El módulo H0-CTRIO se ha configurado para usar V2000 hasta
2 V2025 para sus datos de entradas y V2030 hasta V2061 para sus datos de salidas.

3
4
5
6
Renglón 2: Este IBox que lee el código de error desde CTRIO leerá información detallada del
7 error del módulo CTRIO número 1. Este programa ejemplo requiere que usted cargue
CTRRDER_IBox.cwb en el módulo H0-CTRIO.
8
9
10
11
12
13
14
A
B
C
D

5–358 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Modo Run to Limit del CTRIO (CTRRTLM) (IB-1011)


Esta instrucción carga el comando de RUN to Limit y los parámetros dados en un recurso
DS5 Usado específico de la salida en una transición de APAGADO a ENCENDIDO al IBox. Las entradas 1
HPP N/A de CTRIO se deben configurar como Limit(s) para que esta función trabaje.
Valores Límites Hexadecimales Válidos: 2
K00 - Borde de subida de Ch1/C
K10 - Borde de caída de Ch1/C 3
K20 - Ambos bordes de Ch1/C
K01 - Borde de subida de Ch1/D
4
K11 - Borde de caída de Ch1/D
K21 - Ambos bordes de Ch1/D
5
K02 - Borde de subida de Ch2/C 6
K12 - Borde de caída de Ch2/C
K22 - Ambos bordes de Ch2/C 7
K03 - Borde de subida de h2/D
K13 - Borde de caída de Ch2/D 8
K23 - Ambos bordes de Ch2/D
Este IBox tomará más de un barrido del PLC para ejecutarse. El bit de éxito o de error se activará 9
cuando el comando se haya completado. Si el bit de error está encendido, usted puede usar el
IBox de leer el código de error de CTRIO (CTRRDER) para obtener información ós detallada 10
del error.
El registro Workspace (espacio de trabajo) es para el uso interno por esta instrucción de IBox y
NO DEBE ser usado en cualquier otro lugar en su programa. be usado anywhere else in your
11
program.
12
Parámetros de CTRRTLM
• CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario(Vea CTRIO
13
Config)
• Output#: Especifica la salida del móduloH0-CTRIO a ser usada por la instrucción
14
• Frequency: Especifica la frecuencia de pulsos de la salida (20Hz - 20KHz)
• Limit: Las entradas del H0-CTRIO se deben configurar como Limites para que esta función funcione
A
• Duty Cycle: Especifica el % de tiempo On en el ciclo completo. Esto es un número hexadecimal. El
valor por defecto de 0 es el 50%, también entrando 50 resultará en 50%. 50% se define como mitad B
del tiempo ON y mitad del tiempo OFF
• Workspace: Especifica una localización de memoria V que es usada por la instrucción C
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito D

Manual del PLC DL06, 2a. edición en español, 6/07 5–359


Capítulo 5: Instrucciones Intelligent Box (IBox)

Parámetro Rango del DL06


1 CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
K0-255
K0-3
Frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K K20-20000; Vea el mapa de memoria V del DL06 - Data Words
2 Limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
Duty Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
K0-FF; Vea el mapa de memoria V del DL06 - Data Words
K0-99; Vea el mapa de memoria V del DL06 - Data Words

3 Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B
Vea el mapa de memoria V del DL06 - Data Words
Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
4 Ejemplo de CTRRTLM
Renglón 1: Este ejemplo instala el módulo H0-CTRIO en la ranura 2 de la base del PLC. Cada
5 H0-CTRIO en el sistema necesitará un IBox de CTRIO separado antes de que pueda ser usado
cualquier IBox de CTRxxxx. El módulo H0-CTRIO se ha configurado para usar V2000 hasta
6 V2025 para sus datos de entradas y V2030 hasta V2061 para sus datos de salidas.

7
8
9
10
Renglón 2: Este IBox de CTRIO instala en la salida 0 en el módulo H0-CTRIO número 1 el
11 hacer salir pulsos en una frecuencia de 1000 Hertz hasta que se llegue al Límite 0. Este
programa ejemplo requiere que usted cargue CTRRTLM_IBox.cwb en su módulo Ho-CTRIO.
12
13
14
A
B
C
D

5–360 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRRTLM (continuado)


Renglón 3: Si los parámetros del modo Run to Limit es ACEPTABLE, active los bits de
dirección y de habilitar la salida. 1
Exito de CTRRTLM
2
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–361


Capítulo 5: Instrucciones Intelligent Box (IBox)

Modo Run to Position del CTRIO (CTRRTPM) (IB-1012)


Esta instrucción carga el comando Run to Position para colocar el comando y los parámetros
1 DS5 Usado
dados en un recurso específico de la salida en una transición de APAGADO a ENCENDIDO
a este IBox.
N/A
2 HPP
Los valores válidos de la función son:
00: Menor que Ch1/Fn1
3 10: Más grande que Ch1/Fn1
01: Menor que Ch1/Fn2
4 11: Más grande que Ch1/Fn2
02: Menor que Ch2/Fn1
5 12: Más grande que Ch2/Fn1
6 03: Menor que Ch2/Fn2
13: Más grande que Ch2/Fn2
7 Este IBox tomará más de un barrido del PLC para ejecutarse. El bit de éxito o de error se activará
cuando el comando sa haya completado. Si el bit de error está encendido, usted puede usar el
IBox de leer el código de error de CTRIO (CTRRDER) para obtener información más
8 detallada del error.
El registro Workspace (espacio de trabajo) es para el uso interno por esta instrucción de IBox y
9 NO DEBE ser usado en cualquier otro lugar en su programa. be usado anywhere else in your
program.
10
Parámetros de CTRRTPM
11 • CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario(Vea CTRIO
Config)TRIO Config Ibox)
12 • Output#: Especifica la salida del móduloH0-CTRIO a ser usada por la instrucción
• Frequency: Especifica la frecuencia de pulsos de la salida (20Hz - 20KHz)
13 • Duty Cycle: Especifica el % de tiempo On en el ciclo completo. Esto es un número hexadecimal. El
valor por defecto de 0 es el 50%, también entrando 50 resultará en 50%. 50% se define como mitad
14 del tiempo ON y mitad del tiempo OFF
• Position: Especifica el valor de conteo, según lo medido en la entrada del codificador, en el momento
en el cual el tren de pulsos de salida será apagado
A • Workspace: Especifica una localización de memoria V que es usada por la instrucción
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
B • Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito

C
D

5–362 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Parámetro Rango del DL06


CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255 1
Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-3
Frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
Duty Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
K20-20000; Vea el mapa de memoria V del DL06 - Data Words
K0-99; Vea el mapa de memoria DL06
2
Position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-2147434528; Vea el mapa de memoria DL06
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words 3
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06 4
Ejemplo de CTRRTPM 5
Renglón 1: Este ejemplo instala el módulo H0-CTRIO en la ranura 2 de la base del PLC. Cada
H0-CTRIO en el sistema necesitará un IBox de CTRIO separado antes de que pueda ser usado
cualquier IBox de CTRxxxx. El módulo H0-CTRIO se ha configurado para usar V2000 hasta
6
V2025 para sus datos de entradas y V2030 hasta V2061 para sus datos de salidas.
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–363


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRRTPM (continuado)


Renglón 2: Este IBox instala la salida número 0 en el CTRIO 1 para hacer salir pulsos en una
1 frecuencia de 1000 Hertz, usa la comparación ' mayor que Ch1/Fn1', hasta que se alcanza la
posición 1500 en la entrada. Este programa ejemplo requiere que usted cargue
2 CTRRTPM_IBox.cwb en su módulo H0-CTRIO.

3
4
5
6
7
8 Renglón 3: Si los parámetros del modo Run to Postion sons ACEPTABLES, activa los bits de
dirección y de habilitar la salida.¶.
9
10
11
12
13
14
A
B
C
D

5–364 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Modo de Velocidad de CTRIO (CTRVELO) (IB-1013)


Esta instrucción carga el comando de velocidad para colocar el comando y los parámetros dados
DS5 Usado en un recurso específico de la salida en una transición de APAGADO a ENCENDIDO a este 1
HPP N/A IBox.
Este IBox tomará más de un barrido del PLC para 2
ejecutarse. El bit de éxito o de error se activará
cuando el comando se haya completado. Si el bit de 3
error está encendido, usted puede utilizar el IBox de
CTRIO leer código de error (CTRRDER) para
obtener para obtener información adicional del error.
4
El registro Workspace (espacio de trabajo) es para el
uso interno por esta instrucción de IBox y NO
5
DEBE ser usado en cualquier otro lugar en su
programa. 6
Parámetros de CTRVELO
7
• CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario(Vea CTRIO
Config)TRIO Config Ibox)
8
• Output#: Especifica la salida del móduloH0-CTRIO a ser usada por la instrucción
• Frequency: Especifica la frecuencia de pulsos de la salida (20Hz - 20KHz)
9
• Duty Cycle: Especifica el % de tiempo On en el ciclo completo. Esto es un número hexadecimal. El
valor por defecto de 0 es el 50%, también entrando 50 resultará en 50%. 50% se define como mitad 10
del tiempo ON y mitad del tiempo OFF
• Step Count: Especifica la posición de la blanco como número 32-bit hexadecimal, un valor de Kffffffff
causará que el perfil funcione continuamente mientras la salida sea habilitada
11
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
• Success: Especifica un bit que se activa cuando la petición se completa con éxito
12
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito 13
Parámetro Rango del DL06
CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-255 14
Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K K0-3
Frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
Duty Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . V,K
K20-20000; Vea el mapa de memoria V del DL06 - Data Words
K0-99; Vea el mapa de memoria DL06
A
Step Count . . . . . . . . . . . . . . . . . . . . . . . . . . V,K K0-2147434528; Vea el mapa de memoria DL06
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words B
Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06 C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–365


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRVELO
Renglón 1: Este ejemplo instala el módulo H0-CTRIO en la ranura 2 de la base del PLC. Cada
1 H0-CTRIO en el sistema necesitará un IBox de CTRIO separado antes de que pueda ser usado
cualquier IBox de CTRxxxx. El módulo H0-CTRIO se ha configurado para usar V2000 hasta
2 V2025 para sus datos de entradas y V2030 hasta V2061 para sus datos de salidas.

3
4
5
6
Renglón 2: Este IBox de modo de velocidad CTRIO configura la salida 0 en el módulo H0-
7 CTRIO número 1 para generar 10,000 pulsos a una frecuencia de 1000 Hz. Este ejemplo de
programa requiere que Ud. cargue CTRVELO_IBox.cwb en el módulo H0-CTRIO.
8
9
10
11
12
13 (Este ejemplo continúa en la próxima página)

14
A
B
C
D

5–366 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRVELO (continuado)


Renglón 3: Si los parámetros del Modo Velocidad están correctos, active el bit de dirección y
habilite la salida. 1
Exito de CTRELO Dirección de la salida 0 2
3
Habilitación de la salida 0
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–367


Capítulo 5: Instrucciones Intelligent Box (IBox)

Escriba archivo a ROM en CTRIO (CTRWFTR) (IB-1006)


1 Esta instrucción escribe los cambios runtime realizados a una tabla de valores predefinidos de
H0-CTRIO a una memroia Flash-ROM en una transición de APAGADO a ENCENDIDO
DS5 Usado
a este IBox. Este IBox tomará más de un barrido del PLC para ejecutarse. El bit de éxito o de
2 HPP N/A
error se activará cuando la instrucción se haya
completado.
3 Si el bit de error está encendido, usted puede utilizar
el IBOx de lectura del código de error del módulo
4 H0-CTRIO (CTRRDER) para conseguir una
información más detallada del error.
5 El registroWorkspace (espacio de trabajo) es para uso
interno por esta instrucción de IBox y NO DEBE ser
6 usado en cualquier otro lugar en su programa.

7
Parámetros de CTRWFTR
8 • CTRIO#: Especifica un módulo CTRIO con un número definido por el usuario (Vea CTRIO
Config)
9 • Output#: Especifica una salida del módulo H0-CTRIO a ser usado por la instrucción
• Workspace: Especifica una localización de memoria V que es usada por la instrucción
10 • Success: Especifica un bit que se activa cuando la petición se completa con éxito
• Error: Especifica un bit que se activa cuando la requisición no se ha terminado con éxito
11
Parámetro Rango del DL06
12 CTRIO# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
Output# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K
K0-255
K0-3
Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Vea el mapa de memoria V del DL06 - Data Words
13 Success . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
Error . . . . . . . . . . . . . . . . . . . . . . X,Y,C,GX,GY,B Vea el mapa de memoria DL06
14
A
B
C
D

5–368 Manual del PLC DL06, 2a. edición en español, 6/07


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRWFTR
Renglón 1: Este ejemplo instala el módulo H0-CTRIO en la ranura 2 de la basedel PLC. Cada
H0-CTRIO en el sistema necesitará un IBox de CTRIO separado antes de que cualquier IBox 1
de CTRxxxx pueda ser usado para él. El H0-CTRIO se ha configurado para utilizar V2000
hasta V2025 para sus datos de entradas, y V2030 hasta V2061 para sus datos de salidas. 2
3
4
5
6
Renglón 2: Este IBox de CTRIO cambiará la entrada 0 en la tabla #2 para ser un RESET en
el conteo 3456. Este programa de ejemplo requiere que usted cargue CTRWFTR_IBox.cwb en 7
su módulo H0-CTRIO.
8
Trate de activar EDPT

9
10
11
12
13
(Este ejemplo continúa en la próxima página)
14
A
B
C
D

Manual del PLC DL06, 2a. edición en español, 6/07 5–369


Capítulo 5: Instrucciones Intelligent Box (IBox)

Ejemplo de CTRWFTR (continuado)


Renglón 3: Si el archivo se modifica con éxito, use un IBox de escribir archivo a ROM para
1 almacenar la tabla corregida de nuevo a la ROM del módulo H0-CTRIO, de tal modo de hacer
los cambios retentivos.
2
Exito de CTREDTPT
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D

5–370 Manual del PLC DL06, 2a. edición en español, 6/07

También podría gustarte