MicroLogix 1100 - 3
MicroLogix 1100 - 3
MicroLogix 1100 - 3
Figura 1
Figura 2
2.- Se desplegar una nueva ventana la cual lleva por nombre propiedades de
conexin, seleccionamos la opcin donde dice Protocolo Internet (TCP/IP) y a
continuacin oprimimos propiedades.
Figura 3
3.-Nos saldr nuevamente otra venta donde finalmente le asignamos la IP a nuestra
PC, que en este caso tiene direccin IP: 192.168.30.25 y una Mscara de subred que
se genera por default con la numeracin: 255.255.255.0, finalmente damos aceptar
Figura 4
b)
Pasos:
1.- Nos dirigimos a inicio y damos clic, se desplegar un men donde aparecer
Programas, vamos a la carpeta de Rockwell Software, ahora pasamos a la carpeta
BOOTP-DHCP Server y damos clic en BOOTP-DHCP Server como se muestra en la
figura 5.
Figura 5
2.- Se desplegara una ventana la cual lleva por nombre BOOTP/DCHP, como se
puede observar en la figura 6, en la pestaa Ethernet Addres (MAC), que es la MAC
que tiene nuestro PLC MicroLogix 1100, damos doble clic y nos desplegara otra
ventana que se llama New Entry, ver figura 7, aqu es el lugar donde le vamos asignar
una IP al PLC, es importante que esta IP tenga la misma estructura que la de la PC a
excepcin de la ltima cifra esta debe de ser diferente, recordemos que la direccin IP
de nuestra PC es: 192.168.30.25, as pues la IP de PLC entonces ser 192.168.30.15,
como se muestra en la figura 8.
Figura 6
Figura 7
Figura 8
3.- Presionamos OK en la ventana New Entry, y ahora observamos que en la ventana
BOOTP/DHCP Server en la parte de Relation List, en las pestaas Type, IP Address,
aparece BOOTP y la direccin 192.168.30.15 que fue la q le asignamos al PLC esto
quiere decir que se le asigno una IP satisfactoriamente al PLC, ver figura 9 .
Figura 9
Instrucciones de bits
(XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF)
Introduccin
Si desea
XIC
XIO
OTE
OTL
OTU
ONS
Disponible
en
estos
lenguajes
lgica de escalera de rels
texto estructurado(1)
lgica de escalera de rels
texto estructurado(1)
lgica de escalera de rels
texto estructurado(1)
lgica de escalera de rels
texto estructurado(1)
lgica de escalera de rels
texto estructurado(1)
lgica de escalera de rels
texto estructurado(1)
OSR
OSF
Examinar si est
cerrado (XIC)
Operandos:
Lgica de escalera de rels
Operando
bit de datos
Tipo
BOOL
Formato
Tag
Descripcin
bit que se va a probar
Texto estructurado
El texto estructurado no tiene una instruccin XIC, pero usted
puede lograr los mismos resultados usando una construccin
IF...THEN.
IF data_bit THEN
<statement>;
END_IF;
Descripcin
Identificacin de
estado aritmtico:
Condiciones de
fallo:
No afectados
ninguna
Ejecucin
Condicin
preescn
Bit de datos =0
La condicin de salida de
rengln se establece como
falsa
Bit de datos =1
La condicin de salida de
rengln se conoce como
verdadera
fin
post-escn
Ejemplo 1:
Si se establece limit_switch_1, esto habilita la siguiente instruccin (la condicin de
salida de rengln es verdadera).
Texto estructurado
IF limit_switch THEN
<statement>;
END_IF;
Examinar si est
abierto (XIO)
Operandos:
Lgica de escalera de rels
Operando
bit de datos
Tipo
BOOL
Formato
Tag
Descripcin
bit que se va a probar
Texto estructurado
El texto estructurado no tiene una instruccin XIO, pero usted
puede lograr los mismos resultados usando una construccin
IF...THEN.
IF NOT data_bit THEN
<statement>;
END_IF;
Descripcin
Identificacin de
estado aritmtico:
Condiciones de
fallo:
No afectados
Ninguna
Ejecucin
Condicin
preescn
Bit de datos =0
La condicin de salida de
rengln se establece como
verdadera
Bit de datos =1
La condicin de salida de
rengln se conoce como
falsa
fin
post-escn
Ejemplo 1:
Si se borra limit_switch_2, esto habilita la siguiente instruccin (la condicin de salida
de rengln es verdadera).
Lgica de escalera de rels
Texto estructurado
IF NOT limit_switch_2 THEN
<statement>;
END_IF;
Ectivacion de salida
(OTE)
Operandos:
Lgica de escalera de rels
Operando
bit de datos
Tipo
BOOL
Formato
Tag
Descripcin
bit que se va a
establecer o borrar
Texto estructurado
El texto estructurado no tiene una instruccin OTE, pero usted puede
lograr los mismos resultados usando una asignacin no retentiva.
data_bit [:=] BOOL_expression;
Descripcin
Identificacin de
estado aritmtico:
Condiciones de
fallo:
Ejecucin
Condicin
preescn
Condicin de entrada de
rengln es verdadera
Examinar bit
de datos
Bit de datos =0
La condicin de salida de
rengln se establece como
falsa
Bit de datos =1
La condicin de salida de
rengln se conoce como
verdadera
El bit de datos se
borra.
bit que se va
a establecer
o borrar
Bit de datos =0
Bit de datos =1
El bit de datos se
establece.
La condicin de salida
de rengln se establece
como verdadera.
fin
Ejemplo:
Cuando se establece switch, la instruccin OTE establece (activa) light_1. Cuando se borra
switch, la instruccin OTE borra (desactiva) light_1.
Texto estructurado
light_1 [:=] switch;
Ectivacion de salida
(OTL)
Operandos:
Lgica de escalera de rels
Operando
bit de datos
Tipo
BOOL
Formato
Tag
Descripcin
bit que se va a
establecer
Texto estructurado
El texto estructurado no tiene una instruccin OTL, pero usted puede
lograr los mismos resultados usando una construccin IF...THEN y
una asignacin.
IF BOOL_expression THEN
data_bit := 1;
END_IF;
Descripcin
Identificacin de
estado aritmtico:
Condiciones de
fallo:
Ejecucin
Condicin
preescn
Condicin de entrada de
rengln es verdadera
Examinar bit
de datos
Bit de datos =0
La condicin de salida de
rengln se establece como
falsa
Bit de datos =1
La condicin de salida de
rengln se conoce como
verdadera
El bit de datos no
se modifica.
bit que se va
a establecer
Bit de datos =0
Bit de datos =1
El bit de datos se
establece.
La condicin de salida
de rengln se establece
como verdadera.
fin
Ejemplo: Cuando se habilita, la instruccin OTL establece light_2. Este bit de datos
permanece establecido hasta que es borrado, generalmente por una instruccin OTU.
Texto estructurado
IF BOOL_expression THEN
light_2 := 1;
END_IF;
Desenclavamiento
de salida (OTU)
Operandos:
Lgica de escalera de rels
Operando
bit de datos
Tipo
BOOL
Formato
Tag
Descripcin
bit que se va a borrar
Texto estructurado
El texto estructurado no tiene una instruccin OTU, pero usted
puedelograr los mismos resultados usando una construccin
IF...THEN y una asignacin.
IF BOOL_expression THEN
data_bit := 0;
END_IF;
Descripcin
Identificacin de
estado aritmtico:
Condiciones de
fallo:
Ejecucin
Condicin
preescn
Condicin de entrada de
rengln es verdadera
Examinar bit
de datos
Bit de datos =0
La condicin de salida de
rengln se establece como
falsa
Bit de datos =1
La condicin de salida de
rengln se conoce como
verdadera
El bit de datos no
se modifica.
bit que se va
a borrar
Bit de datos =0
Bit de datos =1
El bit de datos se
establece.
La condicin de salida
de rengln se establece
como verdadera.
fin
Texto estructurado
IF BOOL_expression THEN
light_2 := 0;
END_IF;
Un impulso (ONS)
Operandos:
Lgica de escalera de rels
Operando
storage bit
Tipo
BOOL
Formato
Tag
Descripcin
bit de almacenamiento
interno
almacena la condicin de
entrada del rengln
desde la ltima vez que se
ejecut la
instruccin
Texto estructurado
El texto estructurado no tiene una instruccin ONS, pero usted
puede lograr los mismos resultados usando una construccin
IF...THEN.
IF BOOL_expression AND NOT storage_bit THEN
<statement>;
END_IF;
storage_bit := BOOL_expression;
Descripcin
Identificacin de
estado aritmtico:
Condiciones de
fallo:
Ejecucin
Condicin
preescn
Examinar el bit de
almacenamiento
bit de
almacenamiento=1
El bit de almacenamiento
permanece establecido la
condicin de salida de
rengln se establece como
post-escn
falsa
el bit de almacenamiento
se establece la condicin
de salida de rengln se
establece como
verdadera
fin
Ejemplo:
Normalmente una instruccin ONS est precedida por una instruccin de entrada, porque la
instruccin ONS se escanea cuando sta se habilita y cuando se inhabilita para que funcione
correctamente. Una vez que la instruccin ONS se habilita, la condicin de entrada de rengln
debe borrarse, o el bit de almacenamiento debe borrarse para que la instruccin ONS se habilite
nuevamente.
En todo escn en que limit_switch_1 se borra o storage_1 se establece, este rengln no tiene
efecto. En todo escn en que limit_switch_1 se establece y storage_1 se borra, la instruccin
ONS establece storage_1 y la instruccin ADD incrementa sum en 1.
Siempre que limit_switch_1 permanezca establecido, sum permanece con el mismo valor.
limit_switch_1 debe cambiar de borrado a establecido nuevamente para que se incremente sum
nuevamente.
Texto estructurado
IF limit_switch_1 AND NOT storage_1 THEN
sum := sum + 1;
END_IF;
storage_1 := limit_switch_1;
Un impulso en flanco
ascendente (OSR)
Operandos:
Lgica de escalera de rels
Operando
Descripcin
Identificacin de
estado aritmtico:
Condiciones de
fallo:
storage bit
Tipo
BOOL
Formato
tag
output bit
BOOL
tag
Descripcin
bit de almacenamiento
interno
almacena la condicin de
entrada del rengln
desde la ltima vez que se
ejecut la
instruccin
bit que se va a establecer
No afectados
Ninguna
Ejecucin
Condicin
preescn
Examinar el bit de
almacenamiento
bit de
almacenamiento=1
el bit de almacenamiento
permanece establecido el
bit de salida se borra la
condicin de salida de
rengln se establece como
verdadera
post-escn
el bit de almacenamiento se
establece
el bit de salida se establece la
condicin de salida de rengln
se establece como
verdadera
fin
Ejemplo:
Cada vez que limit_switch_1 cambia de borrado a establecido, la instruccin OSR establece
output_bit_1 y la instruccin ADD incrementa sum en 5. Siempre que limit_switch_1
permanezca establecido, sum permanece con el mismo valor. El limit_switch_1 debe cambiar de
borrado a establecido nuevamente para que sum se incremente nuevamente. Usted puede usar
output_bit_1 en varios renglones para activar otras operaciones.
Un impulso en flanco
descendente (OSR)
Operandos:
Lgica de escalera de rels
Operando
Descripcin
Identificacin de
estado aritmtico:
Condiciones de
fallo:
storage bit
Tipo
BOOL
Formato
tag
output bit
BOOL
tag
Descripcin
bit de almacenamiento
interno
almacena la condicin de
entrada del rengln desde
la ltima vez que se
ejecut la instruccin
bit que se va a establecer
No afectados
Ninguna
Ejecucin
Condicin
preescn
Examinar el bit de
almacenamiento
el bit de almacenamiento
permanece borrado el bit de
salida se borra la condicin de
salida de rengln se establece
como falsa
bit de
almacenamiento=1
el bit de almacenamiento
se borra el bit de salida se
establece la condicin de
salida de rengln se
establece como falsa
fin
post-escn
Ejemplo:
Cada vez que limit_switch_1 cambia de establecido a borrado, la instruccin OSF establece
output_bit_2 y la instruccin ADD incrementa sum en 5. Siempre que limit_switch_1
permanezca borrado, sum permanece con el mismo valor. El limit_switch_1 debe cambiar de
establecido a borrado nuevamente para que sum se incremente nuevamente. Usted puede usar
output_bit_2 en varios renglones para activar otras operaciones.
Introduccin
Si desea
establecer el tiempo durante
el cual un temporizador est
habilitado
establecer el tiempo durante
el cual un temporizador est
inhabilitado
acumular tiempo
conteo progresivo
conteo regresivo
restablecer un temporizador o
un contador
RTO
CTU
CTD
RES
Temporizador de
retardo a
la conexin (TON)
Operandos:
Lgica de escalera de rels
Operando
Timer
Tipo
TIMER
Formato
tag
Descripcin
Estructura de
temporizador
Preset
Acum
DINT
DINT
inmediato
inmediato
Estructura TIMER
Mnemnico
.EN
Tipo de datos
BOOL
.TT
BOOL
.DN
.PRE
BOOL
DINT
.ACC
DINT
Descripcin:
Descripcin
El bit de habilitacin indica que la instruccin TON est
habilitada
El bit de temporizacin indica que se est ejecutando una
operacin de temporizacin
El bit de efectuado se establece cuando .ACC .PRE.
El valor de preajuste especifica el valor (en unidades de 1
ms) al que debe llegar el valor acumulado para que la
instruccin establezca el bit .DN.
El valor acumulado especifica el nmero de milisegundos
que han transcurrido desde que se habilit la instruccin
TON.
Importante:
Asegrese de escanear el temporizador por lo menos cada 69 minutos mientras
se ejecuta.
De no hacerse, el valor ACC no ser correcto.
El valor last_time_scanned tiene un rango de hasta 69 minutos. El clculo
del temporizador regresa al valor inicial si usted no escanea el temporizador en
un lapso de 69 minutos. Si esto sucede, el valor ACC no ser correcto.
Durante la ejecucin de un temporizador, escanelo dentro de un lapso no
mayor de 69 minutos si lo coloca en una:
subrutina
seccin de cdigo comprendida entre las instrucciones JMP y LBL
diagrama de funcin secuencial (SFC)
evento o tarea peridica
rutina de estado de una fase
Indicadores de
estado
aritmtico:
no afectados
Condiciones de fallo:
Ocurrir
mayor si
un
fallo
Tipo de fallo
.PRE < 0
.ACC<0
Cdigo de fallo
4
4
34
34
Ejecucin
Condicin
Preescan
condicin de entrada
de rengln es falsa
La condicin de entrada
de rengln es verdadera
Bit .DN=1
Examine el bit .DN
Bit .DN=0
Bit .EN=0
Examine el bit
.EN
Bit .EN=1
.ACC
.PRE
Examine .ACC
.ACC <
.PRE
El valor .ACC
retorna al valor
inicial
.DN se establece
el bit .TT se borra
el bit .EN se
establece
no
La condicin de
salida se
establece como
verdadera
si
.ACC=2147483647
Post-escan
Fin
Temporizador de
retardo a
la desconexin (TOF)
Operandos:
Lgica de escalera de rels
Operando
Timer
Tipo
TIMER
Formato
tag
Descripcin
Estructura de
temporizador
Preset
DINT
inmediato
Acum
DINT
inmediato
Periodo de retardo
(acumulacin del tiempo)
el tiempo en ms que conto
el temporizador, el valor
inicial es tpicamente 0
Estructura TIMER
Mnemnico
.EN
Tipo de datos
BOOL
.TT
BOOL
.DN
.PRE
BOOL
DINT
.ACC
DINT
Descripcin:
Descripcin
El bit de habilitacin indica que la instruccin TOF est
habilitada.
El bit de temporizacin indica que se est ejecutando una
operacin de temporizacin.
El bit de efectuado se borra cuando .ACC .PRE.
El valor de preajuste especifica el valor (en unidades de 1
ms) al que debe llegar el valor acumulado para que la
instruccin borre el bit .DN.
El valor acumulado especifica el nmero de milisegundos
que han transcurrido desde que se habilit la instruccin
TOF.
Importante:
Asegrese de escanear el temporizador por lo menos cada 69 minutos mientras
se ejecuta.
De no hacerse, el valor ACC no ser correcto.
El valor last_time_scanned tiene un rango de hasta 69 minutos. El clculo del
temporizador regresa al valor inicial si usted no escanea el temporizador en un lapso
de 69 minutos. Si esto sucede, el valor ACC no ser correcto.
Durante la ejecucin de un temporizador, escanelo dentro de un lapso no mayor de
69 minutos si lo coloca en una:
Subrutina
Seccin de cdigo comprendida entre las instrucciones JMP y LBL
Diagrama de funcin secuencial (SFC)
Evento o tarea peridica
Rutina de estado de una fase
Indicadores de
estado
aritmtico:
Condiciones
fallo:
no afectados
de
Ocurrir
mayor si
un
fallo
.PRE < 0
.ACC<0
Tipo de fallo
Cdigo de fallo
4
4
34
34
Ejecucin
Condicin
Preescan
condicin de entrada
de rengln es falsa
Bit .DN=0
Examine el bit .DN
Bit .DN=1
Bit .EN=1
Examine el bit
.EN
Bit .EN=0
.ACC .PRE
Examine .ACC
.DN se borra
el bit .TT se borra
el bit .EN se borra
El valor .ACC
retorna al valor
inicial
no
La condicion de
salida de renglon
se establece como
falsa
si
.ACC=2147483647
Fin
a condicin de entrada
de rengln es verdadera
Post-escan
Ejemplo: Cuando limit_switch_2 se borra, light_2 se enciende durante 180 ms (timer_2 est
temporizando). Cuando timer_2.acc llega a 180, light_2 se apaga y light_3 se enciende. Light_3
permanece encendida hasta que se habilita la instruccin TOF. Si limit_switch_2 se establece
mientras que timer_2 est temporizando light_2 se apaga.
Temporizador
retentivo activado
(RTO)
Operandos:
Lgica de escalera de rels
Operando
Timer
Tipo
TIMER
Formato
tag
Descripcin
Estructura de
temporizador
Preset
DINT
inmediato
Acum
DINT
inmediato
Periodo de retardo
(acumulacin del tiempo)
el tiempo en ms que conto
el temporizador, el valor
inicial es tpicamente 0
Estructura TIMER
Mnemnico
.EN
Tipo de datos
BOOL
.TT
BOOL
.DN
.PRE
BOOL
DINT
.ACC
DINT
Descripcin:
Descripcin
El bit de habilitacin indica que la instruccin RTO est
habilitada.
El bit de temporizacin indica que se est ejecutando una
operacin de temporizacin.
El bit de efectuado indica que .ACC .PRE.
El valor de preajuste especifica el valor (en unidades de 1
ms) al que debe llegar el valor acumulado para que la
instruccin establezca el bit .DN.
El valor acumulado especifica el nmero de milisegundos
que han transcurrido desde que se habilit la instruccin
RTO.
Importante:
Asegrese de escanear el temporizador por lo menos cada 69 minutos
mientras se ejecuta.
De no hacerse, el valor ACC no ser correcto.
El valor last_time_scanned tiene un rango de hasta 69 minutos. El clculo
del
temporizador regresa al valor inicial si usted no escanea el temporizador en un
lapso de
69 minutos. Si esto sucede, el valor ACC no ser correcto.
Durante la ejecucin de un temporizador, escanelo dentro de un lapso no
mayor de
69 minutos si lo coloca en una:
subrutina
seccin de cdigo comprendida entre las instrucciones JMP y LBL
diagrama de funcin secuencial (SFC)
evento o tarea peridica
rutina de estado de una fase
Indicadores de
estado
aritmtico:
no afectados
Condiciones de
fallo:
Tipo de fallo
.PRE < 0
.ACC<0
Cdigo de fallo
4
4
34
34
Ejecucin
Condicin
Preescan
condicin
de
entrada
de
rengln es falsa
a
condicin
entrada
de rengln es
verdadera
de
Bit .DN=1
Examine el bit .DN
Bit .DN=0
Bit .EN=0
Examine el bit
.EN
Bit .EN=1
.ACC .PRE
El bit .TT se establece
.ACC=.ACC+(current_time-last_time)
last_time=current_time
Examine .ACC
.DN se borra
el bit .TT se borra
el bit .EN se borra
El valor .ACC
retorna al valor
inicial
no
La condicin de
salida de rengln
se establece como
verdadera
si
.ACC=2147483647
Post-escan
Fin
Ejemplo:
Cuando limit_switch_1 se establece, light_1 se enciende por 180 ms(timer_2 est
temporizando). Cuando timer_3.acc llega a 180, light_1 se apaga y light_2 se enciende. Light_2
permanece hasta que timer_3 se restablece. Si limit_switch_2 se borra mientras que timer_3 est
temporizando light_1 permanece encendida. Cuando limit_switch_2 se establece, la instruccin
RES restablece timer_3 (borra los bits de estado y el valor .ACC).
Operandos:
Lgica de escalera de rels
Operando
Tipo
Counter
COUNTER
Formato
tag
Descripcin
Estructura de contado
Preset
DINT
inmediato
Acum
DINT
inmediato
Estructura COUNTER
Mnemnico
.CU
Tipo de datos
BOOL
.DN
.OV
BOOL
BOOL
.UN
BOOL
.PRE
DINT
.ACC
DINT
Descripcin:
Descripcin
El bit de habilitacin de conteo progresivo indica que la
instruccin CTU est habilitada.
El bit de efectuado indica que .ACC .PRE.
El bit de overflow indica que el contador excedi el lmite
superior de 2,147,483,647, por lo que el contador regresa a
-2,147,483,648 y comienza nuevamente el conteo
progresivo
El bit de underflow indica que el contador excedi el lmite
inferior de -2,147,483,648, por lo que el contador regresa a
2,147,483,647 y comienza nuevamente el conteo regresivo.
El valor de preajuste especifica el valor al que debe llegar
el valor acumulado para que la instruccin establezca el bit
.DN.
El valor acumulado especifica el nmero de transiciones
que cont la instruccin.
El valor acumulado contina incrementndose, incluso despus de que se establece el bit .DN.
Para borrar el valor acumulado, use una instruccin RES que referencie la estructura de
contador o escriba 0 en el valor acumulado.
Indicadores de estado
aritmtico:
no afectados
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de
rengln es falsa
a condicin de entrada
de rengln es
verdadera
SI
Examine el bit Bit .CU=0
.CU
El bit . CU se
establece
.ACC=.ACC+1
El valor .ACC
retorna al valor
inicial
NO
El bit .UN=1
El bit .UN se borra
El bit .DN se borra
El bit .OV se borra
Bit .CU=1
Examine el bit
.UN
El bit .UN=0
Bit .OV=0
Examine el bit
.UN
Bit .UN=0
Examine el bit
.OV
El bit .OV se
establece
Bit .OV=1
Bit .UN=1
.ACC.PRE
Examine .ACC
.ACC<PRE
El bit . DN se
borra
El bit .DN se
establece
La condicion de
salida de renglon
se establece como
verdadera
fin
Post-escan
Tipo
Counter
COUNTER
Formato
tag
Descripcin
Estructura de contado
Preset
DINT
inmediato
Acum
DINT
inmediato
Estructura COUNTER
Mnemnico
.CU
Tipo de datos
BOOL
.DN
.OV
BOOL
BOOL
.UN
BOOL
.PRE
DINT
.ACC
DINT
Descripcin:
Descripcin
El bit de habilitacin de conteo regresivo indica que la
instruccin CTD est habilitada.
El bit de efectuado indica que .ACC .PRE.
El bit de overflow indica que el contador excedi el lmite
superior de 2,147,483,647, por lo que el contador regresa a
-2,147,483,648 y comienza nuevamente el conteo
progresivo
El bit de underflow indica que el contador excedi el lmite
inferior de -2,147,483,648, por lo que el contador regresa a
2,147,483,647 y comienza nuevamente el conteo regresivo.
El valor de preajuste especifica el valor al que debe llegar
el valor acumulado para que la instruccin establezca el bit
.DN.
El valor acumulado especifica el nmero de transiciones
que cont la instruccin.
El valor acumulado contina decrementndose, aun despus de que se establece el bit .DN. Para
borrar el valor acumulado, use una instruccin RES que referencie la estructura de contador o
escriba 0 en el valor acumulado.
Indicadores de estado
aritmtico:
no afectados
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de
rengln es falsa
a condicin de entrada
de rengln es
verdadera
SI
Examine el bit Bit .CD=0
.CD
El bit . CD se
establece
.ACC=.ACC-1
El valor .ACC
retorna al valor
inicial
NO
El bit .OV=1
El bit .UN se borra
El bit .DN se borra
El bit .OV se borra
Bit .CD=1
Examine el bit
.OV
El bit .OV=0
Bit .OV=0
Examine el bit
.UN
Bit .UN=0
Examine el bit
.OV
El bit .UN se
establece
Bit .OV=1
Bit .UN=1
.ACC.PRE
Examine .ACC
.ACC<PRE
El bit . DN se
borra
El bit .DN se
establece
La condicion de
salida de renglon
se establece como
verdadera
fin
Post-escan
Ejemplo: Un transportador lleva partes a una zona de almacenamiento intermedio. Cada vez
que entra una parte, limit_switch_1 se habilita y counter_1 se incrementa en 1. Cada vez que
sale una parte, limit_switch_2 se habilita y counter_1 se decrementa en 1. Si hay 100 partes en
la zona de almacenamiento intermedio (counter_1.dn se establece), conveyor_a se activa y
detiene el transportador para que no lleve ms partes hasta que la zona de almacenamiento
intermedio tenga espacio para ms partes.
Restablecer
(RES)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Estructura
TIMER
Formato
tag
Descripcin
Estructura que se va a
establecer
CONTROL
COUNTER
Descripcin:
TIMER
COUNTER
CONTROL
La instruccin borra
El valor .ACC
Los bits de estado de control
El valor .ACC
Los bits de estado de control
El valor .POS
Los bits de estado de control
Atencin
Puesto que la instruccin RES borra el valor .ACC, el bit .DN y el bit .TT,
no use la instruccin RES para restablecer un temporizador TOF.
Indicadores de estado
aritmtico:
no afectados
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de
rengln es falsa
a condicin de entrada
de rengln es
verdadera
Post-escan
Instrucciones de entrada/salida
(MSG)
Introduccin
Si desea
enviar datos desde o hacia
otro mdulo
Mensaje (MSG)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Mensaje
Control
MESSAGE
Formato
tag
Descripcin
Estructura de mensaje
Atencin
Si usted revisa los bits de estado ms de una vez
El controlador cambia los bits DN, ER, EW y ST de manera asncrona con el
escn de la lgica. Use una copia de los bits si los verifica en ms de un lugar
en la lgica. De lo contrario, los bits pueden cambiar durante el escn y la
lgica no funcionar segn lo esperado.
Una manera de hacer una copia es usar la palabra FLAGS. Copie la palabra
FLAGS a otro tag y verifique los bits en la copia.
Importante
No cambie los siguientes bits de estado de una instruccin MSG:
DN
EN
ER
EW
ST
Tipo de datos
.Flags INT
Descripcion
El miembro .FLAGS proporciona acceso a los
miembros de estado (bits) en una palabra de 16 bits.
Este bit: Es este miembro:
2
4
.EW
.ER
.DN
.ST
.EN
.TO
.EN_CC
.ERR
Instrucciones de comparacin
(EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Introduccin
Si desea
probar si dos valores son
iguales
GEQ
determinar si un valor es
mayor que otro valor
GRT
LEQ
determinar si un valor es
menor que otro valor
LES
determinar si un valor se
encuentra entre otros
dos valores
pasar dos valores a travs de
una mscara y
determinar si son iguales
determinar si un valor
diferente a otro valor
LIM
MEQ
NEQ
texto estructurado(2)
bloque de funciones
lgica de escalera de rels
texto estructurado(1)
bloque de funciones
lgica de escalera de rels
texto estructurado(1)
bloque de funciones
lgica de escalera de rels
texto estructurado(1)
bloque de funciones
lgica de escalera de rels
texto estructurado(1)
bloque de funciones
lgica de escalera de rels
texto estructurado(1)
bloque de funciones
lgica de escalera de rels
texto estructurado(1)
bloque de funciones
lgica de escalera de rels
texto estructurado(1)
bloque de funciones
(1) No
hay una instruccin equivalente en texto estructurado. Use otra programacin en texto estructurado para lograr el
mismo resultado. Vea la descripcin de la instruccin.
Usted puede comparar valores de diferentes tipos de datos como, por ejemplo, valores de punto
flotante (coma flotante) y valores enteros. Para las instrucciones de lgica de escalera de rels,
los tipos de datos que aparecen en negrita indican tipos de datos ptimos. Las instrucciones se
ejecutan ms rpidamente y requieren menos memoria si todos los operandos de instruccin
usan el mismo tipo de datos ptimos, tpicamente DINT o REAL.
Igual a (EQU)
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor que se compara
con Source B
DINT
REAL
Cadena
Source B
SINT
Inmediato
INT
Tag
DINT
REAL
Cadena
Texto estructurado
Use el signo igual como operador dentro de una expresin. Esta
expresin evala si sourceA es igual que sourceB.
IF sourceA = sourceB THEN
<statements>;
Descripcin:
Indicadores de estado
aritmtico:
No afectados.
ninguna
Condiciones de fallo:
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es falsa
Accin
La condicin de salida de rengln se
establece como falsa.
La condicin de salida de rengln se
establece como falsa.
a condicin de entrada
de rengln es
verdadera
Si
Source A = Sorce B
La condicin de
salida de rengln
se establece como
verdadera
La condicin de
salida de rengln
se establece como
falsa
fin
Post-escan
Texto estructurado
light_a := (value_1 = value_2);
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor que se compara
con Source B
DINT
REAL
Cadena
Source B
SINT
Inmediato
INT
Tag
DINT
REAL
Cadena
Texto estructurado
Use los signos mayor que e igual > adyacentes como operador
dentro de una expresin. Esta expresin evala si sourceA es mayor
o igual que sourceB.
IF sourceA >= sourceB THEN
<statements>;
Descripcin:
Indicadores de estado
aritmtico:
No afectados.
ninguna
Condiciones de fallo:
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es falsa
a condicin de entrada
de rengln es
verdadera
Si
Source A
Sorce B
La condicin de
salida de rengln
se establece como
verdadera
No
La condicin de
salida de rengln
se establece como
falsa
fin
Post-escan
Ejemplo: Si value_1 es mayor o igual que value_2, establezca light_b. Si value_1 es menor
que value_2, borre light_b.
Texto estructurado
light_b := (value_1 >= value_2);
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor que se compara
con Source B
DINT
REAL
Cadena
Source B
SINT
Inmediato
INT
Tag
DINT
REAL
Cadena
Texto estructurado
Use el signo mayor que > como un operador dentro de una
expresin. Esta expresin evala si sourceA es mayor que sourceB.
IF sourceA > sourceB THEN
<statements>;
Descripcin:
Indicadores de estado
aritmtico:
No afectados.
ninguna
Condiciones de fallo:
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es
verdadera
Sourse A >
Sourse B
Si
La condicin de
salida de rengln
se establece como
verdadera
no
La condicin de
salida de rengln
se establece como
falsa
Fin
Post-escan
Ejemplo: Si value_1 es mayor que value_2, establezca light_1. Si value_1 es menor o igual
que value_2, borre light_1.
Texto estructurado
light_1 := (value_1 > value_2);
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor que se compara
con Source B
DINT
REAL
Cadena
Source B
SINT
Inmediato
INT
Tag
DINT
REAL
Cadena
Texto estructurado
Use los signos menor que e igual < adyacentes como operador
dentro de una expresin. Esta expresin evala si sourceA es menor
o igual que sourceB.
IF sourceA <= sourceB THEN
<statements>;
Descripcin:
Indicadores de estado
aritmtico:
No afectados.
ninguna
Condiciones de fallo:
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es
verdadera
Sourse A <=
Sourse B
Si
La condicin de
salida de rengln
se establece como
verdadera
no
La condicin de
salida de rengln
se establece como
falsa
Fin
Post-escan
Ejemplo: Si value_1 es menor o igual que value_2, establezca light_2. Si value_1 es mayor
que value_2, borre light_2.
Texto estructurado
light_2 := (value_1 <= value_2);
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor que se compara
con Source B
DINT
REAL
Cadena
Source B
SINT
Inmediato
INT
Tag
DINT
REAL
Cadena
Texto estructurado
Use el signo menor que < como un operador dentro de una
expresin. Esta expresin evala si sourceA es menor que sourceB.
IF sourceA < sourceB THEN
<statements>;
Descripcin:
Indicadores de estado
aritmtico:
No afectados.
ninguna
Condiciones de fallo:
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es
verdadera
Sourse A <
Sourse B
Si
La condicin de
salida de rengln
se establece como
verdadera
no
La condicin de
salida de rengln
se establece como
falsa
Fin
Post-escan
Ejemplo: Si value_1 es menor que value_2, establezca light_3. Si value_1 es mayor o igual
que value_2, borre light_3.
Texto estructurado
light_3 := (value_1 < value_2);
Limite (LIM)
Operandos:
Lgica de escalera de rels
Operando
Low limit
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor del limite inferior
DINT
REAL
Tag
DINT
REAL
Texto estructurado
El texto estructurado no cuenta con la instruccin LIM, pero se
pueden lograr los mismos resultados usando texto estructurado.
IF (LowLimit <= HighLimit AND
(Test >= LowLimit AND Test <= HighLimit)) OR
(LowLimit >= HighLimit AND
(Test <= LowLimit OR Test >= HighLimit)) THEN
<statement>;
END_IF;
y el valor de
prueba es
La condicin de
salida de rengln
se establece como
Limite superior
verdadera
Limite superior
falsa
Verdadera
falsa
Los nmeros enteros con signo saltan (roll over) del nmero positivo mximo al nmero
negativo mximo cuando se establece el bit ms significativo. Por ejemplo, en los nmeros
enteros de 16 bits (tipo INT), el nmero entero positivo mximo es 32,767, el cual se representa
en hexadecimal como 16#7FFF (todos los bits del 0 al 14 estn en uno). Si usted incrementa
dicho nmero en uno, el resultado es 16#8000 (el bit 15 se pone en uno). Para enteros con signo,
el hexadecimal 16#8000 es igual a -32,768 en decimal. Incrementar desde este punto hasta que
los 16 bits se pongan en uno, termina en 16#FFFF, que es igual a -1 en decimal.
Esto puede mostrarse como lnea circular de nmeros (vea los siguientes diagramas). La
instruccin LIM comienza en el lmite inferior e se va incrementando en sentido horario hasta
llegar al lmite superior. Cualquier valor de prueba que se encuentre en el rango en sentido
horario desde el lmite inferior al lmite superior establece en verdadera la condicin de salida
del rengln. Cualquier valor de prueba que se encuentre en el rango en sentido horario desde el
lmite superior al lmite inferior establece en falsa la condicin de salida del rengln.
Indicadores de estado
aritmtico:
No afectados.
ninguna
Condiciones de fallo:
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es
verdadera
Evaluar el
limite
La
comparacin
es verdadera
La condicin de
salida de rengln
se establece como
verdadera
La comparacin
es falsa
La condicin de
salida de rengln
se establece como
falsa
Fin
Post-escan
Ejemplo 1: Lmite inferior Lmite superior: Cuando 0 value 100, establezca light_1.
Si value < 0 or value > 100, borre light_1.
Texto estructurado
IF (value <= 100 AND(value >= 0 AND value <= 100)) OR
(value >= 100 AND value <= 0 OR value >= 100)) THEN
light_1 := 1;
ELSE
light_1 := 0;
END_IF;
Texto estructurado
IF (0 <= -100 AND value >= 0 AND value <= -100)) OR
(0 >= -100 AND(value <= 0 OR value >= -100)) THEN
light_1 := 1;
ELSE
light_1 := 0;
END_IF;
Operandos:
Lgica de escalera de rels
Operando
Source
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor que se compara
con Compare
DINT
Texto estructurado
El texto estructurado no cuenta con la instruccin MEQ, pero se
pueden lograr los mismos resultados usando texto estructurado.
IF (Source AND Mask) = (Compare AND Mask) THEN
<statement>;
END_IF;
Descripcin:
Prefijo
Descripcion
16#
Hexadecimal
Por ejemplo; 16#0F0F
8#
Octal
Por ejemplo; 8#16
2#
Binario
Por ejemplo; 2#00110011
Indicadores de estado
aritmtico:
No afectados.
ninguna
Condiciones de fallo:
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es
verdadera
si
Origen
enmascarado=
comparacion
enmascarada
La condicin de
salida de rengln
se establece como
verdadera
no
La condicin de
salida de rengln
se establece como
falsa
Fin
Post-escan
Texto estructurado
light_1 := ((value_1 AND mask_1)=(value_2 AND mask_2));
Texto estructurado
IF (0 <= -100 AND value >= 0 AND value <= -100)) OR
(0 >= -100 AND(value <= 0 OR value >= -100)) THEN
light_1 := 1;
ELSE
light_1 := 0;
END_IF;
Diferente de (NEQ)
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor que se compara
con Source B
DINT
REAL
Cadena
Source B
SINT
Inmediato
INT
Tag
DINT
REAL
Cadena
Texto estructurado
Use los signos menor que y mayor que <> juntos como operador
dentro de una expresin. Esta expresin evala si sourceA es
diferente de sourceB.
IF sourceA <> sourceB THEN
<statements>;
Descripcin:
Indicadores de estado
aritmtico:
No afectados.
ninguna
Condiciones de fallo:
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es
verdadera
Sourse A =
Sourse B
Si
La condicin de
salida de rengln
se establece como
verdadera
no
La condicin de
salida de rengln
se establece como
falsa
Fin
Post-escan
Texto estructurado
light_4 := (value_1 <> value_2);
Instrucciones de clculo/matemticas
(ADD, SUB, MUL, DIV, SQR, NEG)
Introduccin
Si desea
Sumar valores
ADD
Restar valores
SUB
Multiplicar valores
MUL
Dividir valores
DIV
SQR
NEG
Disponible
lenguajes
en
estos
Sumar (ADD)
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor que se suma a
Source B
DINT
REAL
Source B
SINT
Inmediato
INT
Tag
DINT
REAL
Destination
SINT
INT
DINT
REAL
Tag
Texto estructurado
Use el signo ms como operador dentro de una expresin. Esta
expresin suma sourceA a sourceB y almacena el resultado en dest..
dest := sourceA + sourceB;
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados..
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Texto estructurado
add_result := float_value_1 + float_value_2;
Restar (SUB)
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor del cual restar
Source B
DINT
REAL
Source B
SINT
Inmediato
INT
Tag
DINT
REAL
Destination
SINT
INT
DINT
REAL
Tag
Texto estructurado
Use el signo menos como operador en una expresin. Esta
expresin resta sourceB de sourceA y almacena el resultado en
dest.dest := sourceA - sourceB;
Indicadores de estado
aritmtico:
Condiciones de fallo:
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Texto estructurado
subtract_result := float_value_1 - float_value_2;
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor del multiplicando
DINT
REAL
Source B
SINT
Inmediato
INT
Tag
DINT
REAL
Destination
SINT
INT
DINT
REAL
Tag
Texto estructurado
Use el signo de multiplicacin * como operador en una expresin.
Esta expresin multiplica sourceA por sourceB y almacena el
resultado en dest.
Dest := sourceA * sourceB;
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Texto estructurado
multiply_result := float_value_1 float_value_2;
Dividir (DIV)
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor del dividendo
DINT
REAL
Source B
SINT
Inmediato
INT
Tag
DINT
REAL
Destination
SINT
INT
DINT
REAL
Tag
Texto estructurado
Use el signo de dividir como operador en una expresin. Esta
expresin divide sourceA entre sourceB y almacena el resultado en
dest.
Dest := sourceA / sourceB;
y Source B no son
REAL
o Source B es
REAL
Entonces la
opcin
fraccionaria
del resultado
Se trunca
Se redondea
ejemplo
Source A
DINT
Source B
DINT
Destination
DINT
Source A
Source B
REAL
DINT
5.0
3
Destination
DINT
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
Cdigo
fallo
de
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Texto estructurado
divide_result := float_value_1 / float_value_2
Ejemplo 2: Las instrucciones DIV y MOV funcionan juntas para dividir dos enteros,
redondear el resultado y colocarlo en un tag de nmero entero:
La instruccin DIV divide dint_a entre dint_b.
Para redondear el resultado, Destination es un tag REAL. (Si el destino fuera un tag entero
(SINT, INT o DINT), la instruccin truncara el resultado).
La instruccin MOV traslada el resultado redondeado (real_temp) de la DIV a
divide_result_rounded.
Puesto que divide_result_rounded es un tag DINT, el valor de
real_temp se redondea y se coloca en el destino DINT.
Raz cuadrada
(SQR)
Operandos:
Lgica de escalera de rels
Operando
Source
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor del multiplicando
DINT
REAL
Destination
SINT
INT
DINT
REAL
Tag
Texto estructurado
Use SQRT como funcin. Esta expresin calcula la raz cuadrada de
source y almacena el resultado en dest.
dest := SQRT(source);
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Texto estructurado
sqr_result := SQRT(value_1);
Cambiar signo
(NEG)
Operandos:
Lgica de escalera de rels
Operando
Source
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor del multiplicando
DINT
REAL
Destination
SINT
INT
DINT
REAL
Tag
Texto estructurado
Use el signo menos como operador en una expresin. La
expresin cambia el signo de source y almacena el resultado en dest.
dest := -source;
Descripcin:
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Texto estructurado
negate_result := -value_1;
Instrucciones de movimiento/lgicas
(MOV, MVM, AND, OR, XOR, NOT, CLR)
Introduccin
Si desea
Disponible
lenguajes
en
estos
Copiar un valor
MOV
MVM
AND
OR
XOR
NOT
Borrar un valor
CLR
Mover (MOV)
Operandos:
Lgica de escalera de rels
Operando
Tipo
SINT
Formato
INT
Tag
Source
Inmediato
Descripcin
Valor a mover (copiar)
DINT
REAL
Destination
SINT
INT
DINT
REAL
Tag
Texto estructurado
Use una asignacin := con una expresin. Esta asignacin mueve
el valor de source a dest.
dest :=source;
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Texto estructurado
value_2 := value _1;
Mover con
mascara (MVM)
Operandos:
Lgica de escalera de rels
Operando
Source
Tipo
SINT
Formato
INT
Tag
Inmediato
Descripcin
Valor a mover
DINT
REAL
Mask
SINT
Inmediato
INT
Tag
DINT
REAL
Destination
SINT
INT
DINT
REAL
Tag
Texto estructurado
Esta instruccin est disponible en texto estructurado como MVMT.
O puede combinar lgica a nivel de bits dentro de una expresin y
asignar el resultado al destino. Esta expresin realiza un movimiento
con mscara en Source.
dest := (Dest AND NOT (Mask))
OR (Source AND Mask);
Descripcin:
prefijo
16#
8#
Descripcin
Hexadecimal
Por ejemplo; 16#0F0F
Octal
Por ejemplo 8#16
2#
Binario
por ejemplo; 2#00110011
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Ejemplo: Copie datos de value_a a value_b, mientras permite que los datos sean
enmascarados (un 0 enmascara los datos en value_a).
Texto estructurado
value_b := (value_b AND NOT (mask_2)) OR
(value_a AND mask_2);
Borrar (CLR)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Destination
SINT
INT
DINT
REAL
Tag
Texto estructurado
El texto estructurado no cuenta con la instruccin CLR. En lugar de
ello, asigne 0 al tag que desea borrar. Esta declaracin de asignacin
borra dest.
dest := 0;
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Texto estructurado
value := 0;
Y a nivel de bits
(AND)
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
Descripcin
Inmediato
INT
Tag
DINT
Un tag SINT o INT se convierte en un valor DINT
mediante un relleno con ceros.
Source B
SINT
Inmediato
INT
Tag
DINT
Un tag SINT o INT se convierte en un valor DINT
mediante un relleno con ceros.
Destination
SINT
INT
DINT
Tag
Texto estructurado
Use AND o el signo & como operador dentro de una expresin.
Esta expresin evala sourceA AND sourceB..
dest := sourceA AND sourceB
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Ejemplo: Cuando se habilita, la instruccin AND realiza una operacin Y a nivel de bits en
SourceA y SourceB y coloca el resultado en Dest
Texto estructurado
value_result_and := value_1 AND value_2;
O a nivel de bits
(OR)
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
Descripcin
Inmediato
INT
Tag
DINT
Un tag SINT o INT se convierte en un valor DINT
mediante un relleno con ceros.
Source B
SINT
Inmediato
INT
Tag
DINT
Un tag SINT o INT se convierte en un valor DINT
mediante un relleno con ceros.
Destination
SINT
INT
DINT
Tag
Texto estructurado
Use OR como operador dentro de una expresin. Esta expresin
evala sourceA OR sourceB.
dest := sourceA OR sourceB
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Texto estructurado
value_result_or := value_1 OR value_2;
O exclusivo a
nivel de bits
(XOR)
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
Descripcin
Inmediato
INT
Tag
DINT
Un tag SINT o INT se convierte en un valor DINT
mediante un relleno con ceros.
Source B
SINT
Inmediato
INT
Tag
DINT
Un tag SINT o INT se convierte en un valor DINT
mediante un relleno con ceros.
Destination
SINT
INT
DINT
Tag
Texto estructurado
Use XOR como operador dentro de una expresin. Esta expresin
evala sourceA XOR sourceB.
dest := sourceA XOR sourceB
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Ejemplo: Cuando se habilita, la instruccin AND realiza una operacin O exclusivo a nivel
de bits en SourceA y SourceB y coloca el resultado en el tag de destino.
Texto estructurado
value_result_xor := value_1 XOR value_2;
NO a nivel de
bits (NOT)
Operandos:
Lgica de escalera de rels
Operando
Source A
Tipo
SINT
Formato
Descripcin
Inmediato
INT
Tag
DINT
Un tag SINT o INT se convierte en un valor DINT
mediante un relleno con ceros.
Destination
SINT
INT
DINT
Tag
Texto estructurado
Use NOT como operador dentro de una expresin. Esta expresin
evala source con la operacin NOT.
dest := NOT source
Indicadores de estado
aritmtico:
Los indicadores de estado aritmtico son
afectados.
Condiciones de fallo:
ninguna
Ejecucin
Condicin
Preescan
condicin de entrada de rengln es
falsa
a condicin de entrada
de rengln es verdadera
Post-escan
Ejemplo: Cuando se habilita, la instruccin NOT realiza una operacin NO a nivel de bits en
Source y coloca el resultado en Dest.
Texto estructurado
value_result_not := NOT value_1;
Instrucciones de secuenciador
(SQO, SQL)
Introduccin
Si desea
Establecer condiciones de
salida para el siguiente paso
Cargar condiciones de
referencia en matrices
de secuenciador
Disponible
lenguajes
en
estos
SQO
SQL
Para las instrucciones de lgica de escalera de rels, los tipos de datos que aparecen en letras
negritas indican tipos de datos ptimos. Las instrucciones se ejecutan ms rpidamente y
requieren menos memoria si todos los operandos de instruccin usan el mismo tipo de datos
ptimos, tpicamente DINT o REAL.
Secuenciador
de salida
(SQO)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Array
DINT
Tag
de
matriz
matriz de secuenciador
especifica el primer
elemento de la matriz
de secuenciador
Mask
SINT
INT
DINT
Tag
inmediato
Destination
DINT
tag
Control
CONTROL
tag
Length
DINT
inmediato
Position
Dint
inmediato
no use CONTROL.POS en
el subndice
Que bits se bloquean o se
pasan
datos de salida
provenientes de la matriz
de secuenciador
estructura de control para
la operacin
normalmente, se usa el
mismo CONTROL
que para las instrucciones
SQI y SQL
nmero de elementos en la
matriz (tabla de
secuenciador) que se va a
establecer como
salida
posicin actual en la matriz
el valor inicial es
tpicamente 0
Estructura de control
Mnemonico Tipo de datos descripcin
.EN
BOOL
.DN
BOOL
.ER
BOOL
.LEN
DINT
.PDS
DINT
Descripcin:
Descripcin
Hexadecimal
Por ejemplo; 16#0F0F
Octal
Por ejemplo; 8#16
Binario
Por ejemplo; 2#00110011
Indicadores de estado
aritmtico:
No afectados
Condiciones de fallo:
ninguna
Ejecucin
Accin lgica de escalera de rels
El bit .EN se establece para impedir una carga
falsa cuando se inicia el escn del programa.
La condicin de salida de rengln se establece
como falsa.
La condicin de salida de rengln se establece
como falsa.
Condicin
Preescan
.EN=0
no
.LEN 0 o
.POS < 0
Examine el
bit .EN
.EN=1
si
no
si
.POS .LEN
.POS=1
.POS = .LEN
no
si
.POS =.POS+1
si
El valor .POS
retorna al valor
inicial
Ir a
error
no
si
Examine el bit
.UN
El bit .DN se
establece
no
si
.POS > .LEN
error
no
El bit .ER se
establece
la condicion de salida de
renglon se establece como
verdadera
fin
Post-escan
Ejemplo: Cuando se habilita, la instruccin SQO incrementa la posicin, pasa los datos en esa
posicin en array_dint a travs de la mscara y almacena el resultado en value_1.
Un nmero 0 en la mscara significa que el bit no se compara (designado por xxxx en este
ejemplo).
Carga de
secuenciador
(SQL)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Array
DINT
Tag
de
matriz
matriz de secuenciador
especifica el primer
elemento de la matriz
de secuenciador
SINT
INT
DINT
Mask
Tag
inmediato
Control
CONTROL
tag
Length
DINT
inmediato
Position
Dint
inmediato
no use CONTROL.POS en
el subndice
datos de entrada que se
van a cargar en la
matriz de secuenciador
Estructura de control
Mnemonico
Tipo de datos
descripcin
.EN
BOOL
.DN
BOOL
.ER
BOOL
.LEN
DINT
.PDS
DINT
Descripcin:
Importante
Indicadores de estado
aritmtico:
No afectados
Condiciones de fallo:
Ejecucin
Condicin
Preescan
condicin de entrada de
rengln es falsa
a condicin de entrada
de rengln es verdadera
.EN=0
no
.LEN 0 o
.POS < 0
Examine el
bit .EN
.EN=1
si
no
si
.POS .LEN
.POS=1
.POS = .LEN
no
si
.POS =.POS+1
si
El valor .POS
retorna al valor
inicial
Ir a
error
no
si
El bit .DN se
establece
.POS =.LEN
no
si
.POS > .LEN
error
si
no
no
El bit .ER se
establece
Array[control.POS] = Source
la condicion de salida de
renglon se establece como
verdadera
fin
Post-escan
Instrucciones de matriz
(Archivo/miscelneas)
(PID, PTO, PWM, LCD)