Académique Documents
Professionnel Documents
Culture Documents
Manual de referencia
GFK-0467M-SP Mayo 2002
GFL-002
Notas de Aviso, Precaución y Notas utilizadas en esta
publicación
Aviso
Las notas de aviso se utilizan en esta publicación para resaltar que en este equipo existen
voltajes, intensidades, temperaturas u otras condiciones peligrosas que podrían ocasionar
lesiones físicas o que la utilización de tal equipo puede conllevar tales riesgos.
En situaciones en que la falta de atención pudiera ocasionar lesiones físicas o daños al
equipo se utiliza una nota de aviso.
Precaución
Las notas de precaución se utilizan allí donde el equipo pudiera resultar dañado si no
se adoptan las debidas precauciones.
Nota
Las notas simplemente llaman la atención sobre información especialmente significativa para
comprender y manejar el equipo.
Las siguientes son marcas registradas de GE Fanuc Automation North America, Inc.
Alarm Master Genius PROMACRO Series Six
CIMPLICITY Helpmate PowerMotion Series Three
CIMPLICITY 90–ADS Logicmaster PowerTRAC VersaMax
CIMSTAR Modelmaster Series 90 VersaPro
Field Control Motion Mate Series Five VuMaster
GEnet ProLoop Series One Workmaster
Este manual describe la operación del sistema, el tratamiento de fallos y las instrucciones de
programación del Logicmaster 90™ para los controladores lógicos programables de las Series
90™-30, Series 90-20 y Series 90 Micro. Los PLCs de las Series 90-30, Series 90-20 y Series 90
Micro son miembros de la familia de las Series 90 de controladores lógicos programables de GE
Fanuc Automation.
Publicaciones relacionadas
Logicmaster™ 90 Software de programación de las Series 90™30/20/Micro Manual del usuario
(GFK0466).
Software de programación de VersaPro™ Guía del usuario (GFK-1670)
GFK-0467M-SP iii
Prólogo
Power Mate APM para el PLC de las Series 90™30 —Modo seguidor Manual del usuario (GFK-
0781)
Motion Mate™ DSM302 para los PLCs de las Series 90™-30 Manual del usuario (GFK-1464)
Contador de alta velocidad de las Series 90™30 Manual del usuario (GFK-0293)
Módulo de comunicaciones Genius para las Series 90™30 Manual del usuario (GFK-0412)
Controlador de bus Genius para las Series 90™30 Manual del usuario (GFK1034)
Controlador de bus FIP para las Series 90™70 Manual del usuario (GFK1034)
Explorador de E/S remotas FIP para las Series 90™30 Manual del usuario (GFK1037)
Control de campo™ E/S distribuidas e Interfaz de bus del sistema de control Genius™ Manual del
usuario (GFK0825)
PLC de las Series 90™ Micro Manual del usuario (GFK1065)
Comunicaciones serie del PLC de las Series 90™ Manual del usuario (GFK0582)
iv PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido
GFK-0467M-SP v
Contenido
vi PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido
Parámetros................................................................................................................ 5-10
Tipos de memorias válidas....................................................................................... 5-11
Ejemplos................................................................................................................... 5-11
UPCTR ........................................................................................................................... 5-12
Parámetros................................................................................................................ 5-12
Tipos de memorias válidas....................................................................................... 5-13
Ejemplos................................................................................................................... 5-13
DNCTR........................................................................................................................... 5-14
Parámetros................................................................................................................ 5-14
Tipos de memorias válidas....................................................................................... 5-15
Ejemplos................................................................................................................... 5-15
Ejemplos de cómputos de existencias ...................................................................... 5-16
viii PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido
Funciones relacionales estándar (EQ, NE, GT, GE, LT, LE)........................................... 7-2
Parámetros.................................................................................................................. 7-2
Descripción ampliada................................................................................................. 7-3
Tipos de memorias válidas......................................................................................... 7-3
Ejemplo ...................................................................................................................... 7-3
RANGE (Intervalo) (INT, DINT, WORD) .................................................................. 7-4
Parámetros.................................................................................................................. 7-5
Tipos de memorias válidas......................................................................................... 7-5
Ejemplo 1 ................................................................................................................... 7-5
Ejemplo 2 ................................................................................................................... 7-6
GFK-0467M-SP Contenido ix
Contenido
x PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido
Parámetros................................................................................................................ 10-4
Tipos de memorias válidas....................................................................................... 10-4
Ejemplo 1 ................................................................................................................. 10-5
Ejemplo 2 ................................................................................................................. 10-5
Ejemplo 3 ................................................................................................................. 10-6
Funciones de búsqueda ................................................................................................... 10-7
Parámetros................................................................................................................ 10-8
Tipos de memorias válidas....................................................................................... 10-8
Ejemplo 1 ................................................................................................................. 10-9
Ejemplo 2 ............................................................................................................... 10-10
GFK-0467M-SP Contenido xi
Contenido
xii PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido
xiv PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido
GFK-0467M-SP Contenido xv
Contenido
xvi PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido
Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x .................................................. A-6
Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x - Continuación ......................... A-7
Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x - Continuación ......................... A-8
Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x - Continuación ......................... A-9
Tabla A-3. Tiempos de ejecución del bloque de función SER................................................................... A-10
Tabla A-4. Tiempos de ejecución de las instrucciones, Modelos 37x ....................................................... A-11
Tabla A-4. Tiempos de ejecución de las instrucciones, Modelos 37x - Continuación............................... A-12
Tabla A-4. Tiempos de ejecución de las instrucciones, Modelos 37x - Continuación............................... A-13
Tabla A-4. iempos de ejecución de las instrucciones, Modelos 37x - Continuación ................................. A-14
Tabla A-5. Tiempos de ejecución booleana de la CPU.............................................................................. A-15
Tabla B-1. Grupos de fallos del PLC ............................................................................................................B-4
Tabla B-2. Acciones de fallos del PLC .........................................................................................................B-5
Tabla B-3. Códigos de error de alarma para los fallos del software de la CPU del PLC ..............................B-5
Tabla B-4. Códigos de error de alarma para fallos del PLC..........................................................................B-6
Tabla B-5. Datos de fallos del PLC – Detectado código de operaciones booleanas ilegal ...........................B-7
Tabla B-6. Marca de la hora de fallos del PLC .............................................................................................B-7
Tabla B-7. Byte indicador del formato de la tabla de fallos de E/S ..............................................................B-9
Tabla B-8. Dirección de referencia de E/S....................................................................................................B-9
Tabla B-9. Tipo de memoria de la dirección de referencia de E/S................................................................B-9
Tabla B-10. Grupos de fallos de E/S...........................................................................................................B-10
Tabla B-11. Acciones de fallos de E/S........................................................................................................B-11
Tabla B-12. Datos específicos de fallos de E/S...........................................................................................B-11
Tabla B-13. Marca de la hora de fallos de E/S............................................................................................B-12
Tabla E-1. Caso general de flujo de energía para operaciones matemáticas de coma flotante ..................... E-8
Los PLCs de las Series 90-30, 90-20 y Micro son miembros de la familia de las Series 90 de
controladores lógicos programables (PLCs) de GE Fanuc. Son fáciles de instalar y de configurar,
ofrecen funciones de programación avanzadas y son compatibles con los PLCs de las Series 90-70.
Los PLCs 341 e inferiores de las Series 90-30 y el PLC de las Series 90-20 utilizan un
microprocesador 80188. Los PLCs 35x y 36x de las Series 90-30 utilizan un microprocesador
80386EX. El PLC 37x de las Series 90-30 utiliza un microprocesador 586. El PLC de la Serie 90
Micro utiliza un microprocesador H8. La operación incluye la ejecución de programas y tareas
internas, tales como diagnóstico de rutinas, exploraciones de entrada/salida y procesamiento de
alarmas. El firmware del sistema contiene también rutinas para la comunicación con el
programador. Estas rutinas permiten la carga y descarga de los programas de aplicación, retorno
de la información del estado y el control del PLC.
En las Series 90-30 de PLCs, el programa de aplicación (lógica del usuario) que controla el
proceso final al que se aplica el PLC, es controlado por un Coprocesador Secuencial de
Instrucciones (ISCP). El ISCP es implementado mediante hardware en el Modelo 313 y superiores
y mediante software en los sistemas del Modelo 311, y del PLC Micro. El microprocesador y el
ISCP basado en hardware pueden ejecutarse simultáneamente, permitiendo al microprocesador
servir a las comunicaciones mientras que el ISCP está ejecutando el grueso del programa de
aplicación; sin embargo, el microprocesador debe ejecutar los bloques de funciones no booleanas.
Los fallos se producen en los PLCs de las Series 90-30, Series 90-20 y Micro cuando se dan ciertas
condiciones o anomalías que afectan a la operación y a las prestaciones del sistema. Estas
condiciones pueden afectar a la capacidad del PLC para controlar una máquina o un proceso.
Otras condiciones pueden producir solamente un aviso de alarma, como una señal de batería baja,
para indicar que la tensión de la pila que protege la memoria está baja y debe ser sustituida. La
condición o avería se denomina fallo.
Los fallos son tratados por una función de procesamiento de alarmas del software que los registra
en la tabla de fallos del PLC o en la tabla de fallos de E/S. (Las CPUs del Modelo 331 y superiores
marcan también los fallos con la hora en que se producen.) Dichas tablas pueden visualizarse en
las pantallas Tabla de fallos del PLC y Tabla de fallos de E/S en el software Logicmaster 90-
30/20/Micro utilizando las funciones de control y de estado.
GFK-0467M-SP 1-1
1
Nota
Las operaciones de coma flotante sólo son soportadas en las CPUs de las series
35x y 36x versión 9 o posterior, y en todas las versiones de las CPU352 y
CPU374.
La CPU364 (versión 9.10 o posterior) y la CPU374 son las únicas CPUs de las
Series 90-30 que soportan los Datos Globales de Ethernet (EGD).
La Serie 90-20 de PLCs proporciona una plataforma rentable para aplicaciones de contador de E/S
inferiores. Los objetivos principales de los PLCs de las Series 90-20 son los siguientes:
• Proporcionar un PLC pequeño que sea fácil de usar, instalar, actualizar y mantener.
• Proporcionar un PLC rentable compatible dentro de la familia.
• Proporcionar una integración de sistema más fácil mediante protocolos y equipos (hardware)
de comunicación estándar.
La Serie 90 Micro de PLC también proporciona una plataforma rentable para aplicaciones de
contador de E/S más bajas. Los objetivos primarios de los PLCs Micro son los mismos que los de
las Series 90-20. Además, el Micro ofrece lo siguiente:
• El PLC Micro tiene la CPU, fuente de alimentación y las entradas y salidas incorporadas todas
en un dispositivo compacto.
• La mayoría de los modelos dispone de un contador de alta velocidad.
• Debido a que la CPU, la fuente de alimentación y las entradas y salidas, están todas
incorporadas en un dispositivo, resulta muy fácil de configurar.
Nota
Para información adicional consulte los anexos al final de este manual.
1-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
1
Nota para los usuarios del software de programación del PLC basado en
Windows
Este manual ha sido escrito para los usuarios de Logicmaster (software de programación del PLC
basado en DOS). Los productos de software de PLC basados en Windows, tales como
CIMPLICITY® Machine Edition Logic Developer y VersaPro®, proporcionan la información del
juego de instrucciones del PLC en el sistema de ayuda en línea integrado en el software, en lugar
de hacerlo en un manual. Los usuarios del software de programación basado en Windows deberán
tener en cuenta que las instrucciones aparecen de modo diferente a como aparecen en una pantalla
Logicmaster (aunque operan del mismo modo en el PLC). El sistema de ayuda en línea dispone de
la más precisa información sobre el uso del juego de instrucciones en el software de programación
basado en Windows. En el Anexo F encontrará un resumen de las principales diferencias entre los
dos tipos de software.
Este capítulo describe determinadas operaciones de los sistemas de PLC de las Series 90-30, 90-20
y Micro. Estas operaciones del sistema incluyen:
• Un resumen de las secuencias del barrido del PLC (Sección 1) ..............................2-2
• Organización del programa y datos/referencias del usuario (Sección 2) ...............2-21
• Secuencias de conexión y desconexión de la alimentación (Sección 3) ................2-38
• Relojes y temporizadores (Sección 4)....................................................................2-42
• Seguridad del sistema mediante la asignación de una contraseña (Sección 5) ......2-45
• Módulos de E/S de las Series 90-30 (Sección 6) ...................................................2-48
GFK-0467M-SP 2-1
2
El programa lógico de los PLCs de las Series 90-30, 90-20 y Micro se ejecuta de modo repetitivo
hasta que es interrumpido por un comando procedente del programador o de otro dispositivo. La
secuencia de operaciones necesaria para ejecutar un programa una vez se denomina barrido.
Además de ejecutar el programa lógico, el barrido incluye la obtención de datos procedentes de los
dispositivos de entrada, el envío de datos a los dispositivos de salida, la ejecución de las tareas
internas, el servicio del programador y otras comunicaciones.
Los PLCs de las Series 90-30, 90-20 y Micro operan normalmente en modo BARRIDO DE
PROGRAMA ESTÁNDAR. Otros modos operativos incluyen el modo PARADA CON E/S
DESHABILITADAS, PARADA CON E/S HABILITADAS, y el modo BARRIDO
CONSTANTE. Cada uno de estos modos, descritos en este capítulo, está controlado por sucesos
externos y por la configuración de la aplicación. El PLC toma la decisión considerando su modo de
operación al comienzo de cada barrido.
2-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Todos estos pasos se ejecutan en cada barrido. Aunque la ventana de comunicaciones del
programador se abre en cada barrido, el servicio del programador sólo tiene lugar si se ha
detectado un fallo en una tarjeta o si el dispositivo programador emite una petición de servicio; es
decir, la ventana de comunicaciones del programador comprueba primeramente si existe alguna
tarea a realizar, y en caso negativo sale. En la siguiente figura se muestra la secuencia del barrido
de programa estándar.
a43064A
INICIO DE BARRIDO
TAREAS INTERNAS TAREAS INTERNAS
E/S
HABILITADAS NO
?
SI
EXPLORACION DATOS
DE ENTRADAS DE ENTRADA
MODO
NO
RUN
?
SI
SOLUCION DE TIEMPO DE
EJECUCIÓN EXPLORACIÓN
LOGICA
DEL PROGRAMA DEL
PLC
E/S
HABILITADAS NO
?
SI DATOS
EXPLORACION DE SALIDA
DE SALIDAS
COMUNICACIONES
COMUNICACIONES DEL
PROGRAMADOR PROGRAMADOR
COMUNICACIONES COMUNICACIONES
SISTEMA DEL SISTEMA
RECONFIGURACION
PROGR. USUARIO
CALCULO DE
SUMA COMPROB. CALCULO DE LA
INICIAR EL SUMA DE
SIGUIENTE BARRIDO COMPROBACION
Según se muestra en la secuencia de barrido del PLC, en cada barrido se incluyen varios
elementos. Estos contribuyen al tiempo total de barrido, como se muestra en la siguiente tabla.
Los datos de entrada se reciben de Véanse las Tablas 2-2 y 2-3 para las contribuciones de los
Entrada de datos Nota 5
los módulos opcionales y de entrada tiempos de exploración
El tiempo de ejecución depende de la longitud del programa y del tipo
Ejecución de
Se ejecuta la lógica del usuario de instrucciones usadas en el mismo. Los tiempos de ejecución de las
programa
instrucciones están listados en el Anexo A.
Los datos de salida se envían a los Véanse las Tablas 2-2 y 2-3 para las contribuciones de los
Salida de datos 1.656
módulos de salida y opcionales tiempos de exploración
Se procesan las HHP 1.93 6.526 4.426 4.524 2.476 0.334 N/D
peticiones de
Programador 0.380 3.536 2.383 2.454 1.248 0.517 0.026
servicio
Comunicaciones
procedentes de los
del programador
dispositivos de
y del sistema
programación y de PCM2 N/D N/D N/D 3.337 1.943 0.482 0.029
los módulos
inteligentes 1
Se supervisan los slots con módulos
Reconfiguración N/D6 N/D 0.458 0.639 0.463 0.319 0.243
defectuosos y los slots vacíos
Verifica la integridad del programa
del usuario (la contribución en
Diagnóstico tiempo es el tiempo requerido por N/D7 0.083 0.050 0.048 0.031 0.010 0.022
palabra sumada y comprobada en
cada barrido) 3
2-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
1. La contribución en tiempo de la exploración del servicio de un dispositivo externo depende del modo de la ventana de
comunicaciones en la que se procesa el servicio. Si la ventana está en modo LIMITADO (LIMITED), se consumirá un
máximo de 8 milisegundos para las CPUs 311, 313, 323 y 331, y 6 milisegundos para la CPU 340 y superiores durante
esa ventana. Si la ventana está en modo EJECUTAR HASTA TERMINAR (RUN-TO-COMPLETION), se consumirá
un máximo de 50 milisegundos con esta ventana, dependiendo del número de peticiones que se presenten
simultáneamente.
2. Estas medidas fueron tomadas con el PCM físicamente presente pero no configurado y sin ninguna tarea de aplicación
ejecutándose en el PCM.
3. El número de palabras sumadas por comprobación en cada barrido puede cambiarse con el bloque de función
SVCREQ.
4. Estas medidas fueron tomadas con un programa vacío y la configuración por defecto. Los PLCs de las Series 90-30
estaban en un rack de 10 slots vacío, sin racks de expansión conectados. De igual modo, los tiempos de esta tabla
presuponen que no existe ninguna subrutina periódica activa; los tiempos serían mayores en caso de existir una
subrutina periódica activa.
5. El tiempo de entrada de datos para el PLC Micro puede determinarse del siguiente modo: 0.365ms (exploración fija) +
0.036ms (tiempo de filtro) x (tiempo total de barrido) / 0.5ms.
6. Dado que el PLC Micro tiene un grupo estático de E/S, la reconfiguración no es necesaria.
7. Dado que el programa del usuario para el PLC Micro está en memoria Flash, no se comprobará su integridad.
Tabla 2-2. Contribuciones del tiempo de exploración de E/S (en mseg) para las CPUs 35x, 36x y 37x de
las Series 90-30
CPUs de las series 35x y 36x CPUs de las series 37x
Tipo de módulo
Rack Rack de Rack Rack Rack de Rack
principal expansión remoto principal expansión remoto
Entrada digital de 8 puntos .030 .055 .206 .030 .055 .206
Entrada digital de 16 puntos .030 .055 .206 .030 .055 .206
Entrada digital de 32 puntos .043 .073 .269 .048 .075 .272
Salida digital de 8 puntos .030 .053 .197 .024 .052 .198
Salida digital de 16 puntos .030 .053 .197 .030 .052 .199
Salida digital de 32 puntos .042 .070 .259 .047 .069 .258
Combinación de entradas/salidas digitales .060 .112 .405 .052 .110 .408
Entrada analógica de 4 canales .075 .105 .396 .085 .109 .403
Salida analógica de 2 canales .058 .114 .402 .046 .101 .393
Entrada analógica de 16 canales .978 1.446 3.999 .423 .700 1.741
(intensidad o tensión)
Salida analógica de 8 canales 1.274 1.988 4.472 .873 1.492 3.635
Combinación de entradas/salidas 1.220 1.999 4.338 .862 1.487 4.103
analógicas
Contador de alta velocidad 1.381 2.106 5.221 1.142 1.808 5.234
Procesador de E/S 1.574 2.402 6.388 1.270 2.125 6.269
Interfaz Ethernet (sin conexión) .7129 2.067 3.681 .426 .795 2.302
Power Mate APM (1 eje) 1.527 2.581 6.388 1.236 2.073 6.032
Power Mate APM (2 eje) 1.807 2.864 7.805 1.539 2.439 7.369
DSM 302 * 40 AI, 6 AQ 2.143 3.315 9.527 1.801 2.963 9.275
50 AI, 9 AQ 2.427 3.732 11.092 2.075 3.373 10.840
64 AI, 12 AQ 2.864 4.317 13.138 2.441 3.931 12.881
DSM314 * 1 eje configurado 1.6 2.6 6.9 1.330 2.337 6.905
2 ejes configurados 2.2 3.8 9.9 1.888 3.148 9.917
3 ejes configurados 2.8 4.3 13.0 2.421 3.953 12.929
4 ejes configurados 3.3 5.2 15.9 2.969 4.761 15.982
2-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
* Para aplicaciones en las que las contribuciones al tiempo de exploración de DSM afecten al
funcionamiento de la máquina, podría tener que utilizar el bloque de función Do I/O y las
peticiones de servicio Suspender E/S y Acceso al estado de la placa de fondo rápida para transferir
los datos necesarios hacia y desde el módulo de movimiento sin obtener todos los datos en cada
exploración. Para detalles acerca del DSM302, consulte el Motion Mate DSM302 para PLCs de las
Series 90-30 Manual del usuario, GFK1464. Para detalles acerca del DSM314, consulte el Motion
Mate DSM314 para PLCs de las Series 90-30 Manual del usuario, GFK1742. Nota: El DSM314
sólo operará con las CPUs 350, 352, 360, 363, 364 y 374 y sólo con firmware de CPU versión
10.00 o posterior.
Tabla 2-3. Contribuciones del tiempo de exploración de E/S (en mseg) para las CPU311 hasta CPU341
de las Series 90-30
Modelo de CPU
Tipo de módulo 331 340/341
311/313 Rack Rack de Rack Rack Rack de Rack
/323 principal expansión remoto principal expansión remoto
Entrada digital de 8 puntos .076 .054 .095 .255 .048 .089 .249
Entrada digital de 16 puntos .075 .055 .097 .257 .048 .091 .250
Entrada digital de 32 puntos .094 .094 .126 .335 .073 .115 .321
Salida digital de 8 puntos .084 .059 .097 .252 .053 .090 .246
Salida digital de 16 puntos .083 .061 .097 .253 .054 .090 .248
Salida digital de 32 puntos .109 .075 .129 .333 .079 .114 .320
Combinación de e/s de 8 puntos .165 .141 .218 .529 .098 .176 .489
Entrada analógica de 4 canales .151 .132 .183 .490 .117 .160 .462
Salida analógica de 2 canales .161 .138 .182 .428 .099 .148 .392
Contador de alta velocidad 2.070 2.190 2.868 5.587 1.580 2.175 4.897
Power Mate APM (1 eje) 2.330 2.460 3.175 6.647 1.750 2.506 5.899
Power Mate APM (2 ejes) 3.181 3.647 4.497 9.303 2.154 3.097 7.729
DSM 302 * 40 AI, 6 AQ 3.613 4.081 5.239 11.430 2.552 3.648 9.697
50 AI, 9 AQ 4.127 4.611 5.899 13.310 2.911 4.170 11.406
64 AI, 12 AQ 4.715 5.276 6.759 15.747 3.354 4.840 13.615
GCM sin dispositivos .041 .054 .063 .128 .038 .048 .085
8 disp. de 64 ptos. 11.420 11.570 13.247 21.288 9.536 10.648 19.485
GCM+ sin dispositivos .887 .967 1.164 1.920 .666 .901 1.626
32 disp. de 64 pts. 4.120 6.250 8.529 21.352 5.043 7.146 20.052
PCM 311 no configurado, o N/D 3.350 N/D N/D 1.684 N/D N/D
sin tarea de aplic.
leer 128 %R tan N/D 4.900 N/D N/D 2.052 N/D N/D
rápido como sea
posible
ADC 311 N/D 3.340 N/D N/D 1.678 N/D N/D
Entrada analógica de 16 canales 1.370 1.450 1.937 4.186 1.092 1.570 3.796
(intensidad o tensión)
I/O Link sin dispositivos 1.910 2.030 1.169 1.925 .678 .904 1.628
maestro 16 dispositivos de 6.020 6.170 8.399 21.291 4.992 6.985 20.010
64 puntos
I/O Link 32 puntos .206 .222 .289 .689 .146 .226 .636
esclavo 64 puntos .331 .350 .409 1.009 .244 .321 .926
* Para aplicaciones en las que las contribuciones al tiempo de exploración de DSM
afecten al funcionamiento de la máquina, podría tener que utilizar el bloque de función
Do I/O y las peticiones de servicio Suspender E/S y Acceso al estado de la placa d
fondo rápida para transferir los datos necesarios hacia y desde el módulo de
movimiento sin obtener todos los datos en cada exploración. Para detalles acerca del
DSM302, consulte el Motion Mate DSM302 para PLCs de las Series 90-30 Manual del
usuario, GFK1464. Nota:El DSM314 no es soportado por las CPUs 311 hasta 341.
2-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Contribución en tiempo
Componente
Cálculo Sin Con HHP Con
del barrido
programador Logicmaster
Ejecución del 1000 x 0.4µs* + 200 x 89µs** + 18.2ms 18.2ms 18.2ms 18.2ms
programa
Servicio del 0.4ms + tiempo del programador + 0.6ms 0ms 4.524ms 2.454ms
programador
1. Tareas internas
La parte de tareas internas del barrido realiza todas las tareas necesarias para preparar el comienzo
del mismo. Si el PLC está en el modo BARRIDO CONSTANTE, el barrido se retarda hasta que
transcurra el tiempo de barrido necesario. Si ya ha transcurrido el tiempo necesario, se activa el
contacto OV_SWP %SA0002, y el barrido continúa sin retardo. Después, los valores del
temporizador (centésimas, décimas y segundos) son actualizados calculando la diferencia desde el
comienzo del barrido anterior y el tiempo del nuevo barrido. Con objeto de no perder precisión, el
comienzo real del barrido se registra en incrementos de 100 microsegundos. Cada temporizador
tiene un campo residual que contiene el número de incrementos de 100 microsegundos que han
transcurrido desde la última vez que se incrementó el valor del temporizador.
2. Exploración de entradas
La exploración de las entradas se produce durante la parte de la exploración de entradas del
barrido, justo antes de la solución lógica. Durante esta parte del barrido, todos los módulos de
entrada de las Series 90-30 son explorados y sus datos almacenados en la memoria %I (entradas
digitales) o %AI (entradas analógicas), según corresponda. Los datos de entrada globales recibidos
por un módulo de comunicaciones Genius (GCM), un módulo de comunicaciones ampliado Genius
(GCM+) o un controlador de bus Genius (GBC) son almacenados en la memoria %G.
Los módulos son explorados por orden de dirección de referencia ascendente, comenzando por
cualquier módulo Genius instalado, después los módulos de entrada digitales, y por último los
módulos de entradas analógicas.
Si la CPU está en el modo STOP y está configurada para no explorar las E/S en el modo STOP, se
salta la exploración de las entradas.
2-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
realiza dos tareas principales: (1) solución/ejecución de la lógica del programa y (2) actualización
de las memorias de salida %Q, %AI y %AQ. (Los módulos de salida, sin embargo, no se actualizan
hasta que no se produce la exploración de las salidas). En general, la lógica de contactos se
soluciona de izquierda a derecha y de arriba a abajo, aunque esta dirección puede ser
temporalmente modificada por llamadas de subrutinas o saltos. La solución de la lógica finaliza
cuando aparece la instrucción END o cuando se alcanza la instrucción por defecto END OF
PROGRAM LOGIC.
Las CPUs 313 y superiores disponen de un coprocesador de secuencias de instrucciones (ISCP)
que ejecuta las instrucciones booleanas, y un microprocesador 80C188,80386 o AMD SC 520
ejecuta el temporizador, contador y los bloques de funciones. En las CPUs Modelo 311 y 90-20 , el
80C188 ejecuta todas las instrucciones de temporizador, contador y bloques de funciones. En el
Micro, el procesador H8 ejecuta todos los bloques booleanos y de funciones.
En el Anexo A se encuentra una lista de los tiempos de ejecución para cada función de
programación.
4. Exploración de salidas
Las salidas se exploran durante la fase de exploración de salidas del barrido, a continuación de la
solución de la lógica. Las salidas se actualizan usando los datos procedentes de la memoria %Q
(para salidas digitales) y %AQ (para salidas analógicas), según corresponda. Si dispone de un
módulo de comunicaciones Genius o un controlador de bus Genius configurado para transmitir
datos globales, entonces los datos procedentes de la memoria %G se envían al GCM, GCM+ o
GBC. Las exploraciones de salidas de las Series 90-20 y Micro incluyen sólo salidas digitales.
Durante la exploración de salidas, todos los módulos de salida de las Series 90-30 se exploran en
orden de dirección de referencia ascendente. La exploración de salidas finaliza cuando todos los
datos de salida se han enviado a todos los módulos de salida de las Series 90-30.
Si la CPU está en el modo STOP y el parámetro IPScan-Stop de la pantalla de configuración de la
CPU se ha configurado como NO, la exploración de salidas se salta.
Precaución
Si el parámetro IPScan-Stop de la pantalla de configuración de la CPU se ha
configurado como YES, las salidas de palabra real pueden activarse (ON)
incluso aunque el PLC esté en modo STOP, ya que el PLC escribirá los
valores actuales de las tablas de salida en los módulos de salida durante la
exploración de salidas.
Esta fase del barrido esta dedicada a la comunicación con el programador. Si hay un programador
acoplado, la CPU ejecuta la ventana de comunicaciones del programador. La ventana de
comunicaciones del programador no se ejecutará si no existe un programador acoplado, ni módulo
para configurar en el sistema. En cada barrido sólo se configura un módulo.
Se proporciona soporte para el programador portátil y para otros programadores que se puedan
conectar al puerto serie y utilicen el protocolo Series Ninety Protocol (SNP). También se
proporciona soporte para las comunicaciones con módulos opcionales inteligentes.
Nota
El límite de tiempo para la ventana de comunicaciones es de 6 milisegundos para
las CPUs 340 y superiores y de 8 milisegundos para los modelos 311, 313, 323 y
331.
INICIO a45659
PROGRAMADOR
PROGRAMADOR ESTADO PORTÁTIL
ACOPLADO ACOPLADO ACOPLADO
PROGRAMADOR
ESTADO ESTADO
ANTERIOR NO ANTERIOR ACOPLADO
ACOPLADO ACOPLADO
? NO ?
ACOPLADO
NO PETICIÓN TECLA NO
PROGRAMADOR ABANDONAR AJUSTE PARA PULSADA
OPERACIÓN PROGRAMADOR ?
? EN PROCESO PORTÁTIL
SI SI
PETICIÓN DE PROCESO AJUSTE PARA ENVIAR TECLA DEL PROCESO
PROTOCOLO PANTALLA
SERIES 90 INICIAL
ENVIAR NUEVA PANTALLA
STOP
2-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Esta es la parte del barrido donde se procesan las peticiones de comunicaciones procedentes de los
módulos opcionales inteligentes, tales como PCM o DSM (véase el diagrama de flujo). El servicio
a las peticiones se efectúa en base al orden de llegada. Sin embargo, ya que los módulos opcionales
inteligentes se muestrean de una manera circular ningún módulo opcional inteligente tiene
prioridad sobre ningún otro.
En el modo por defecto Ejecutar hasta terminar, la longitud de la ventana de
comunicaciones está limitada a 50 milisegundos. Si un módulo opcional inteligente efectúa una
petición que requiere más de 50 milisegundos de proceso, la petición se reparte en varios barridos
de modo que ninguno de ellos quede afectado en más de 50 milisegundos.
a43066
INICIO
HAY
NO
PETICIONES
EN FILA
?
SI
PROCESAR LA PETICIÓN
NO TIEMPO LIMITE
TEMPORIZADOR
VENTANA
?
SI
MUESTREO NO
PARADO
?
SI
REINICIAR MUESTREO
STOP
7. Reconfiguración
Durante esta parte del barrido, la CPU comprueba la alineación actual del hardware con respecto a
la alineación de hardware configurada. Slots que está configurados para un módulo pero que se
encuentran físicamente vacíos, o slots que contienen módulos defectuosos, no serán explorados por
la CPU (es decir, la CPU no leerá ningún dato de los mismos, ni enviará ningún dato de salida a
dichos módulos o slots). Durante la reconfiguración, si la CPU detecta que un slot donde
previamente se había identificado un módulo defectuoso, contiene ahora un módulo correcto, o que
un módulo configurado se ha añadido físicamente al PLC, comenzará a explorar dicho módulo.
La reconfiguración permite a la CPU realizar lo siguiente:
• Reconocer un cambio autorizado que se haya realizado en la configuración.
• Ignorar datos de entrada potencialmente corrompidos o inexactos procedentes de módulos
defectuosos o ausentes.
• Evitar el envío de datos de salida que pudieran corromperse a causa de un módulo de salida
defectuoso.
2-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
No hay manera de que los módulos opcionales inteligentes (IOM), tales como el PCM,
interrumpan la CPU cuando necesitan servicio. La CPU debe efectuar el muestreo (comprobación
periódica) de cada módulo opcional inteligente relativo a peticiones de servicio. Este muestreo
tiene lugar asíncronamente de modo no visible durante el barrido (véase el diagrama de flujo
inferior).
Cuando se efectúa el muestreo de un módulo opcional inteligente y se envía una petición de
servicio a la CPU, la petición es colocada a la espera para su procesamiento durante la ventana de
comunicaciones del sistema.
a43067
INICIO
TODOS
IOMS SI
EXPLORADOS
?
NO
NO PETICIÓN
RECIBIDA
?
SI
PETICIÓN A FILA
2-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Precaución
Si el parámetro IPScan-Stop de la pantalla de detalles de la CPU se ha
configurado como YES, las salidas de palabra real pueden activarse (ON)
incluso aunque el PLC esté en modo STOP, ya que el PLC escribirá los
valores actuales de las tablas de salida en los módulos de salida durante la
exploración de salidas.
Nota
Si el modo de la ventana del sistema se cambia a Limitado, los módulos
opcionales, tales como PCM o GBC que se comunican con el PLC mediante la
ventana del sistema tendrán un impacto menor en el tiempo de barrido, pero la
respuesta a sus peticiones será más lenta.
2-18 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Interruptor con llave en las CPUs de las Series 35x, 36x y 37x:
cambio de modo y protección de la memoria Flash
Todas las CPUs 350—374 disponen de un interruptor con llave (las CPUs 311-341 no); sin
embargo, algunas versiones de firmware de la CPU no soportan todas las funciones de interruptor
con llave. En esta sección se exponen dichas diferencias. Observe que los interruptores con llave
en algunas de estas CPUs poseen la etiqueta ON/RUN y OFF/STOP, y otras la etiqueta ON y OFF.
Independientemente del etiquetado, todos estos interruptores con llave funcionan como se describe
a continuación.
Esta función cableada y no configurable puede utilizarse para evitar que la memoria Flash sea
modificada por personas no autorizadas (personas que carecen de la llave). Cuando el interruptor
con llave se encuentra en la posición ON, no se puede escribir en la memoria Flash. Sólo se puede
escribir en la memoria Flash cuando el interruptor está en OFF. Esta función de interruptor con
llave está siempre activa, independientemente de cómo se definan las dos funciones configurables
siguientes.
Run/Stop (configurable)
Esta función configurable se introdujo en el firmware de CPU versión 7.00. Se configura mediante
el parámetro Interruptor R/S en la pantalla de configuración de la CPU. El parámetro del
Interruptor R/S está configurado como Deshabilitado por defecto. Si el parámetro del
Interruptor R/S se configura como Habilitado, se puede parar el PLC girando el interruptor con
llave a OFF, y arrancar el PLC girando el interruptor a ON (si no existen fallos). Si existen fallos,
podrá ocurrir lo siguiente:
• Si el PLC no tiene un fallo fatal, al girar el interruptor con llave de OFF a ON el PLC
pasará al modo run, y la luz RUN se encenderá de forma permanente, pero las tablas de
fallos no se borrarán.
• Si el PLC tiene un fallo fatal, al girar el interruptor con llave de OFF a ON la luz RUN
parpadeará durante cinco segundos y el PLC no pasará a modo run. Esta luz parpadeante
indica la presencia de uno o más fallos fatales en la tabla de fallos. Puede intentar borrar los
fallos de la tabla de fallos girando de nuevo el interruptor con llave de OFF a ON durante el
periodo de cinco segundos. (Si el periodo de cinco segundos ha transcurrido, al girar el
interruptor con llave de OFF a ON se iniciará otro periodo de cinco segundos.) So los fallos
no se borran por este método, deberá solucionar las causas de los fallos fatales antes de
poder reanudar la operación. Véase el Capítulo 3 para más detalles sobre fallos.
2-20 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
El tamaño de la memoria de usuario de los controladores programables de las Series 90-30 está
listada en la siguiente tabla.
Tamaño de memoria de usuario
Modelos de CPU Memoria de usuario
(Kbytes)
CPU311 6
CPU313, CPU323 12
CPU331 16
CPU340 32
CPU341 80
CPU350 80 (versión 9.00 y
posteriores)
32 (anterior a la versión
9.00)
CPU351, CPU352, 240 (versión 9.00 y
CPU360, CPU363, posteriores)
CPU364, CPU374 80 (anterior a la versión
9.00)
Comenzando con las CPUs de firmware versión 9.00, los tamaños de las memorias %R, %AI y
%AQ para las CPUs 351, 352, 360, 363, 364 y 374 son configurables. (Para detalles, consulte el
manual Software de programación Logicmaster 90™ para las Series 90™-30/20/Micro Manual
del usuario, GFK-0466K o posterior, o el manual del usuario de su software de programación).
Un programa para el autómata programable de las Series 90-20 puede tener un tamaño de hasta 2
KB para una CPU Modelo 211, y el número máximo de escalones permitidos por bloque lógico
(principal o subrutina) es 3000. Para los PLCs de las Series 90-30 el tamaño máximo de bloque es
80 kilobytes para bloques C y 16 kilobytes para bloques LD y SFC; sin embargo, en un bloque
SFC, algunos de los 16 KB se utilizan para el bloque de datos interno. Como se muestra en la
siguiente figura, la lógica del programa de usuario es ejecutada repetidamente por el PLC mientras
éste está en modo Run normal.
a45660A
Leer entradas
Ejecutar lógica
del programa
Escribir salidas
Consulte en el Manual de instalación y hardware del autómata programable de las Series 90-30,
GFK-0356, o en el Manual del usuario del autómata programable de las Series 90-20, GFK-0551,
el listado de tamaños de programas y límites de referencia para cada modelo de CPU.
Todos los programas tienen una tabla de declaración variable que lista las variables y descripciones
de referencia que se hayan asignado en el programa del usuario.
El editor de declaración de bloque lista los bloques de subrutina declarados en el programa
principal.
2-22 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Bloques de subrutina
Un programa puede “llamar” a bloques de subrutina durante su ejecución. Una subrutina debe
declararse a través del editor de declaración de bloques antes de que una instrucción CALL
(llamar) pueda utilizarse para esa subrutina. Para cada bloque lógico en el programa se permite un
máximo de 64 declaraciones de bloques de subrutina en el programa y 64 instrucciones CALL. El
tamaño máximo de un bloque de subrutina es de 16 KB o 3000 escalones, pero el programa
principal y todas las subrutinas deben encajar dentro de los límites de tamaño de la lógica para ese
modelo de CPU.
Nota
Los bloques de subrutina no están disponibles en los PLCs de las Series 90-20 o
Micro.
a45661
SUBRUTINA
2
PROGRAMA SUBRUTINA
3
SUBRUTINA
4
Un bloque de subrutina puede llamarse repetidas veces a medida que se ejecuta el programa. La
lógica que necesite repetirse varias veces en un programa puede introducirse en un bloque de
subrutina. Las llamadas se harían entonces a ese bloque de subrutina para tener acceso a la lógica.
De este modo se reduce el tamaño total del programa.
a45662
PROGRAMA SUBRUTINA
2
Además de llamar a los bloques de subrutina desde el programa, éstos pueden ser llamados desde
otros bloques de subrutina. Un bloque de subrutina puede llamarse incluso a sí mismo.
a45663
Subrutina
2
Programa Subrutina
4
Subrutina
3
Sin embargo, el PLC sólo permitirá ocho llamadas anidadas antes de indicar un fallo de
“Desbordamiento de pila de la aplicación” y que el PLC pase al modo STOP/Fault
(Parada/Fallo). El anidamiento de nivel de llamadas cuenta el programa como nivel 1.
|
|%I0004 %T0001
|——| |—————————————————————————————————————————————————————————————————————( )—
| ______________
|%I0006 | |
|——| |—————| CALL ASTRO |—
| | (SUBRUTINA) |
| |______________|
|
|%I0003 %I0010 %Q0010
|——| |—————| |—————————————————————————————————————————————————————————————( )—
|
Este ejemplo muestra la instrucción CALL (llamar) de subrutina tal como aparecerá en la pantalla
de lógica de contactos.
2-24 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Programa principal
Escalón 1
Escalón 2
Escalón 3 Flujo del programa
Escalón 4, llamar subrutina 1
Escalón 5 Subrutina 1
Escalón 6 Escalón 1
Escalón 7 Escalón 2
…
Retorno
Fin
Subrutinas periódicas
La versión 4.20 o posteriores de las CPUs 340 y superiores soportan subrutinas periódicas.
Observe las siguientes restricciones:
1. Los bloques de función de temporizador (TMR, ONDTR y OFDTR) no se ejecutarán
correctamente dentro de una subrutina periódica. Un bloque de función DOIO dentro de una
subrutina periódica cuyo rango de referencia incluye referencias asignadas a un Módulo E/S
inteligente (HSC, APM, DSM, Genius, etc.) hará que la CPU pierda la comunicación con el
módulo. Los contactos FST_SCN y LST_SCN (%S1 y %S2) tendrán un valor indeterminado
durante la ejecución de la subrutina periódica. Una subrutina periódica no puede llamar o ser
llamada por otras subrutinas.
2. El estado latente para la subrutina periódica (es decir, el intervalo máximo entre el tiempo que
la subrutina periódica debiera haberse ejecutado y el tiempo en que realmente se ejecuta)
puede ser alrededor de 0.35 milisegundos si no hay ningún módulo PCM, CMM o ADC en el
rack principal. Si en el rack principal hay un módulo PCM, CMM o ADC —incluso si no está
configurado o usado—el estado latente puede ser casi de 2.25 milisegundos. Por esta razón, no
se recomienda el uso de la rutina periódica con productos basados en PMC.
Referencias de usuario
Los datos usados en un programa de aplicación se almacenan como referencias de registro
digitales.
Nota
Todas las referencias de registro se retienen durante un ciclo de
desconexión/conexión de la CPU.
2-26 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Tipo Descripción
%S El prefijo %S representa las referencias de estado del sistema. Estas referencias se usan para
tener acceso a datos especiales del PLC, como temporizadores, información de exploración e
información de fallos. Las referencias del sistema incluyen las referencias %S, %SA, %SB y
%SC.
%S, %SA, %SB y %SC pueden usarse en cualquier contacto.
%SA, %SB y %SC pueden emplearse para bobinas retentivas –(M)–.
%S puede usarse como argumento de entrada o salida de cadena de bits o de palabras a
funciones y bloques de función.
%SA, %SB y %SC pueden usarse como argumentos de entrada o salida de cadenas de bits o de
palabras a funciones y bloques de función.
%G El prefijo %G representa las referencias de datos globales. Estas referencias se utilizan para
acceder a los datos compartidos entre varios PLCs. Las referencias %G pueden usarse en
contactos y bobinas retentivas porque la memoria %G siempre es retentiva. %G nunca puede
usarse en bobinas no retentivas.
* El carácter retentivo depende del tipo de bobina. Para más información consulte la “Capacidad retentiva de datos” en
la página siguiente.
Alias
El usuario puede asignar, opcionalmente, un alias a una dirección de referencia. Un alias es útil
porque puede proporcionar información al usuario sobre la finalidad o función de la dirección. Por
ejemplo, en un PLC instalado en una fábrica, la bobina de salida %Q0001 se utiliza para transmitir
energía a un relé de reóstato del motor que controla una bomba física, a la que los empleados dan
el nombre de “Bomba número 1”. Asignando el alias BOMBA1 a %Q0001 se le puede facilitar la
tarea de reconocer la finalidad de %Q0001 a un empleado que esté realizando un diagnóstico de
fallos del sistema.
Los alias deben comenzar por una letra y tener una longitud de uno a siete caracteres. Con el fin
de distinguir las direcciones de memoria (referencias) de los alias, se utiliza el signo de porcentaje
(%) al comienzo de la dirección de memoria. Por ejemplo, el PLC considerará M1 como un alias,
pero %M1 será considerado como una dirección de memoria. Para más información sobre los
alias, consulte el manual GFK-0466 (manual del usuario de Logicmaster para el PLC de las Series
90-30).
Transiciones y overrides
Las referencias de usuario %I, %Q, %M y %G llevan asociados bits de transición y de override.
Las referencias %T, %S, %SA, %SB y %SC llevan asociados sólo bits de transición. La CPU
utiliza bits de transición para los contadores y las bobinas de transición. Observe que los
contadores no usan la misma clase de bits de transición que las bobinas. Los bits de transición para
contadores se almacenan dentro de la referencia de localización.
En las CPUs Modelo 331 y superiores, los bits de override pueden configurarse. Cuando éstos se
configuran, las referencias asociadas no pueden modificarse desde el programa o desde el
dispositivo de entrada; sólo pueden cambiarse mediante comando desde el programador. Las CPUs
Modelos 323, 321, 313 y 311y las CPUs Micro no soportan referencias digitales de override.
2-28 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Tipos de datos
Tabla 2-6. Tipos de datos
Tipo Nombre Descripción Formato de datos
INT Entero con Los enteros con signo usan localizaciones
signo de datos de memoria de 16 bits y están Registro 1
representados en notación de complemento S| (posiciones 16 bits)
de 2. (El bit 16 es el bit de signo.) El
16 1
rango válido de un tipo de datos INT es –
32,768 hasta +32,767.
DINT Entero con Los enteros con signo de doble precisión
signo de se almacenan en posiciones de memoria de Registro 2 Registro 1
doble datos de 32 bits (realmente dos posiciones
S|
precisión consecutivas de memoria de 16 bits) y se
representan en notación de complemento 32 17 16 1
de 2. (El bit 32 es el bit de signo.) El (Valor complemento a dos)
rango válido de un tipo de datos DINT es
–2,147,483,648 hasta +2,147,483,647.
BIT Bit El tipo de datos Bit es la unidad más
pequeña de memoria. Tiene dos estados, 1
ó 0. Una cadena de BITs puede tener la
longitud N.
BYTE Byte El tipo de datos Byte tiene un valor de 8
bits.
El intervalo válido es de 0 hasta 255 (0
hasta FF en hexadecimal).
WORD Palabra El tipo de datos Palabra emplea 16 bits
consecutivos de memoria de datos; pero,
Registro 1
en lugar de los bits en la posición de datos (posiciones 16 bits)
que representan un número, los bits son
independientes entre sí. Cada bit 16 1
representa su propio estado binario (1 ó
0), y los bits no hay que considerarlos
juntos para que representen un número
entero. El intervalo válido de valores de
palabra es 0 hasta FFFF.
Nota
Los bits %S son bits de sólo lectura; no escriba en estos bits. Se puede, sin
embargo, escribir en los bits %SA, %SB y %SC.
A continuación se listan las referencias disponibles de estados del sistema que pueden utilizarse en
un programa de aplicación. Al introducir la lógica, puede usarse tanto la referencia, como el alias.
Consulte el Capítulo 3, “Explicaciones y corrección de fallos,” para descripciones más detalladas
de los fallos e información acerca de su corrección. No se pueden utilizar estos alias especiales
para nombrar otras referencias de memoria.
2-30 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
2-32 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Otras funciones son más complejas. Pueden tener varios lugares donde se introducirá la
información (datos de los parámetros) que va a ser utilizada por la función.
El bloque de función ilustrado a continuación es la instrucción de multiplicación (MUL). Sus
partes son típicas de muchos bloques de funciones. Sin embargo, el número y tipo de parámetros
usados puede variar ampliamente entre los diferentes tipos de bloques de funciones. La parte
superior del bloque de función muestra el nombre de la función. También puede mostrar el tipo de
datos, en este caso, entero con signo.
Muchas funciones del programa (instrucciones) permiten seleccionar el tipo de datos para la
función después de seleccionar la función. Por ejemplo,el tipo de datos para la función MUL
podría cambiarse a entero con signo de doble precisión (D_INT). Al principio de este capítulo se
proporciona información adicional sobre los tipos de datos.
MUL
INT
??????? I1 Q ???????
??????? I2
2-34 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
%AI0001 I2
Cada línea que sale por el lado derecho del bloque de función representa una salida. Las salidas
pueden ser digitales o analógicas. Si son analógicas, el valor es colocado en un registro
(referencia). En el ejemplo anterior, la salida OK del bloque de función es digital y controla la
bobina %Q0001. Su salida Q, sin embargo, retiene el valor resultante de la operación matemática,
colocándolo en un registro, en este ejemplo %R0002.
Cuando los signos de interrogación aparecen en el lado izquierdo de un bloque de función, se
introducirá bien el mismo dato, la posición de referencia donde se ha encontrado el dato, o una
variable que represente la posición de referencia donde se ha encontrado el dato. Cuando los
signos de interrogación aparecen en el lado derecho de un bloque de función, se introducirá
generalmente una posición de referencia para el dato que va a salir mediante el bloque de función o
una variable que represente la posición de referencia para el dato que va a salir mediante el bloque
de función.
MUL
INT
??????? I1 Q ???????
??????? I2
La mayoría de los bloques de función no cambian los datos de entrada; en su lugar, utilizan los
datos de entrada en una operación y colocan el resultado de la misma en una referencia de salida.
Para funciones que operan en grupos de direcciones de memoria (referencias), se puede seleccionar
una longitud para la función. En el bloque de función siguiente, el operando LEN especifica el
número de palabras de entrada a mover (3 en este ejemplo).
??????? I1 Q ???????
LEN
00003
El temporizador, contador, BITSEQ y las funciones ID requieren una dirección para la localización
de tres palabras (registros) que almacenen el valor actual, el valor predefinido y una palabra de
control o “instancia” de la función. La primera palabra de las tres palabras consecutivas aparece en
pantalla debajo del bloque de función, indicada en la figura siguiente como “(Dirección).”
ONDTR
(Habilitar) Q
1.00s
(Reset) R
??????? PV
(Dirección)
2-36 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Flujo de energía
Habilitar que sale de la
lógica instrucción
%Q0001
MUL
(Habilitar) INT (OK)
%R0123 I1 Q %R0124
CONST
0002 I2
Nota
Si se utiliza el software de programación Logicmaster, los bloques de función no
pueden ser directamente enlazados a la guía izquierda de energía. Puede utilizar
%S7, el bit ALW_ON (siempre on) con un contacto abierto enlazado a la guía de
energía para llamar a una función en cada barrido.
La energía fluye fuera del bloque de función en la parte superior derecha. Puede pasarse a otra
lógica del programa o a una bobina (opcional). Los bloques de función dejan pasar energía cuando
se ejecutan satisfactoriamente.
Existen dos secuencias de conexión posibles en el PLC de las Series 90-30; una conexión en frío y
una conexión en caliente. La CPU utiliza normalmente la secuencia de conexión en frío. Sin
embargo, en un PLC Modelo 331 o superior, si el tiempo que transcurre entre una desconexión y la
siguiente conexión es de menos de cinco segundos, se utiliza la secuencia de conexión en caliente.
Conexión
Una conexión en frío consta de la siguiente secuencia de sucesos. La secuencia de conexión en
caliente se salta el paso 1.
1. La CPU ejecutará un autodiagnóstico. Esto incluye la comprobación de una porción de la
RAM mantenida por pila para determinar si la RAM contiene o no datos válidos.
2. Si existe una memoria EPROM, EEPROM o Flash y la opción de conexión PROM en la
PROM especifica que debe usarse el contenido de la PROM, el contenido de la PROM se
copia en la memoria RAM. Si no existe EPROM, EEPROM o Flash, la memoria RAM
permanece igual y no se sobrescribirá con el contenido de la PROM.
3. La CPU interroga cada slot en el sistema para determinar qué tarjetas están presentes.
4. La configuración del hardware se compara con la del software para asegurar que son iguales.
Las discrepancias detectadas se consideran fallos y activan una alarma. Por ejemplo, si un
módulo está especificado en la configuración del software pero en la configuración real del
hardware existe un módulo diferente, esta condición es un fallo y se activa una alarma.
5. Si no hay ninguna configuración de software, la CPU utilizará su configuración por defecto.
6. La CPU establece el canal de comunicaciones entre ella y cualquier módulo inteligente.
7. En el paso final de la ejecución, el modo del primer barrido se determina en función de la
configuración de la CPU. La figura 2-5 en la página siguiente muestra la secuencia de
decisión para la CPU cuando ésta decide si copiar de la PROM o efectuar la conexión en el
modo STOP o RUN.
Nota
Los pasos 2 hasta el 7 anteriores no conciernen al PLC Micro de la Serie 90. Para
más información acerca de las secuencias de conexión y desconexión para el
Micro, consulte la sección “Secuencias de conexión y desconexión” del Capítulo
5, “Operación del sistema,” En el Manual del usuario del PLC Micro de la Serie
90 (GFK-1065).
2-38 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
a45680
1 VERDA-
TECLAS
DERO
*
HHP BORRAR
CLR M T TODO
FALSO
2
VERDADERO USD FALSO
PRESENTE Y
VALIDO
3 USD
4 URAM
FALSO FALSO
PRG SRC = PRG SRC =
PROM PROM
5 USD
FALSO FALSO TR
REG SRC =
PROM
12 VERDA- 13
URAM USD
DERO
VERDA- PRG SRC =
NO PRESENTE
DERO PROM
6 VERDA- VERDA- 7
TECLAS DERO TECLAS FALSO FALSO
DERO
HHP MODO STOP HHP
LD NOT LD NOT
FALSO 14
FALSO VERDA-
TECLAS
8 9 DERO
MODO STOP
HHP
COPIAR CFG,PRG COPIAR
Y REGS DE NOT RUN
PRG Y CFG DE
USD A URAM USD A URAM FALSO
15 VERDA-
URAM
DERO
MODO PU = MODO RUN
10 RUN
PRG o CFG FALSO
SUMA COMPR FALSO
MAL
16 VERDA-
TR DERO
Borrar todo el proceso BATT BAJA MODO STOP
*
BORRAR
TODO BORRAR
TODO FALSO
19 17 VERDA-
URAM DERO
BORRAR PRG, CFG,
MODO PU = MODO STOP
Y REGS
STOP
FALSO
18
MODO STOP
PU MODO ES IGUAL
A DESCONEXION
configuración se borran y se establecen los valores por defecto, y todos los registros de usuario se
borran.
TÉRMINOS DEL DIAGRAMA DE FLUJO:
PRG = Programa de usuario (PRG SRC = Fuente del programa)
CFG = Configuración de usuario
REGS = Registros de usuario (referencias %I, %Q, %M, %G, %R, %AI y %AQ).
USD = Dispositivo de almacenamiento de usuario, un dispositivo EPROM, EEPROM o Flash.
URAM = Ram de usuario no volátil que contiene PRG, CFG y REGS.
HHP = Programador portátil
PU = Conexión
CLR = Borrar
BATT = Pila
TEXTO COMPLETO DEL DIAGRAMA DE FLUJO:
(1) ¿Se han pulsado las teclas <CLR> y <M_T> del HHP (Programador portátil) durante la
conexión para borrar toda la URAM?
(2) ¿Está el USD (dispositivo de almacenamiento del usuario) presente y es válida la
información en el USD?
(3) ¿Está el parámetro PRG SRC en el USD configurado a Prom que significa cargar PRG
(lógica del programa) y CFG (configuración) del dispositivo USD?
(4) ¿Está el parámetro PRG SRC en URAM configurado a Prom que significa cargar PRG y
CFG del dispositivo USD?
(5) ¿Está el parámetro REG SRC en USD configurado a Prom que significa cargar REGS
(registros) del dispositivo USD?
(6 y 7)¿Se han pulsado las teclas <LD> y <NOT> en el HHP durante la conexión para que no se
carguen PRG, CFG y REGS del USD?
(8) Copiar PRG, CFG y REGS del USD a la URAM.
(9) Copiar PRG y CFG del USD a la URAM.
(10) ¿Son las sumas de comprobación de PRG o CFG que se acaban de cargar del USD no
válidas?
(11) ¿Está la URAM corrompida? Puede deberse a que se ha realizado la desconexión sin tener
la pila acoplada o con la pila baja. También puede deberse a la actualización del firmware.
(12) ¿Está el parámetro PRG SRC en URAM configurado a Prom que significa cargar PRG y
CFG del dispositivo USD?
(13) ¿Está el USD presente? Esta comprobación sólo se refiere a las CPUs 311-341. Se
presupone que el USD está presente en las CPUs 350-364 y 374.
(14) ¿Se han pulsado las teclas <NOT> y <RUN> del HHP durante la conexión para efectuar una
conexión incondicional en modo Stop?
(15) ¿Se ha configurado el parámetro PWR UP en URAM a RUN?
(16) ¿Está la pila baja?
(17) ¿Se ha configurado el parámetro PWR UP en URAM a STOP?
(18) Ponga el modo de conexión igual que estaba el modo de desconexión.
(19) Borrar PRG, CFG y REGS.
2-40 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Nota
La primera parte del diagrama de la página anterior no se refiere al PLC Micro
de la Serie 90. Para más información acerca de las secuencias de conexión y
desconexión para el Micro, consulte la sección “Secuencias de conexión y
desconexión” del Capítulo 5, “Operación del sistema,” En el Manual del usuario
del PLC Micro de la Serie 90 (GFK-1065).
Desconexión
La desconexión del sistema se produce cuando la fuente de alimentación detecta que la corriente
AC de entrada ha caído en más de un ciclo de conexión o que la salida de la fuente de alimentación
de 5 voltios ha caído a menos de 4.9 voltios de DC.
Los relojes y temporizadores proporcionados por los PLCs de las Series 90-30 PLC incluyen un
reloj de tiempo transcurrido, un reloj de la hora del día (Modelos 331, 340/341, 350-374 y el Micro
de 28 puntos), un temporizador watchdog y un temporizador de barrido constante. Tres tipos de
bloques de función de temporizador incluyen un temporizador de retardo a la conexión, un
temporizador de retardo a la desconexión y un temporizador de retardo a la conexión retentivo
(también denominado temporizador watch clock). Cuatro contactos de bloque de tiempo se
conectan y desconectan cíclicamente a intervalos de 0.01 segundo, 0.1 segundo, 1.0 segundo y 1
minuto.
2-42 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
el reloj TOD si el interruptor de llave de la CPU está en la posición ON. Observe que las funciones
de protección con llave sólo se refieren a las CPUs 350—374 (otras CPUs no poseen el interruptor
con llave).
El reloj de la hora del día está diseñado para realizar transiciones de mes a mes y de año a año.
Compensa automáticamente los años bisiestos hasta el año 2079.
Temporizador watchdog
El PLC de las Series 90-30 está diseñado para captar condiciones de fallos catastróficos que dan
como resultado un barrido extraordinariamente largo. El valor del temporizador para el
temporizador watchdog es de 200 milisegundos para las CPUs 311-341, y de 500 milisegundos
para las CPUs 350—374; este es un valor fijo que no puede ser cambiado. El temporizador
watchdog parte siempre de cero al comienzo de cada barrido.
Para las CPUs del Modelo 331 e inferiores de las Series 90-30, si se sobrepasa el valor del tiempo
límite del watchdog, el LED OK se apaga; la CPU se pone en reset y se desconecta completamente;
y las salidas pasan al estado por defecto. No es posible la comunicación en forma alguna, y los
microprocesadores de todas las tarjetas se paran. Para recuperarse, debe efectuarse un ciclo de
desconexión/conexión en el rack que contiene la CPU. En las CPUs 90-20, Micro Series 90 y
Series 90-30 340 y superiores, si se excede el tiempo límite del temporizador watchdog la CPU se
reinicializa, ejecuta su lógica de conexión, genera un fallo de watchdog y cambia su modo a
STOP.
Nota
Esta función sólo está disponible en las CPUs 331 o superiores de las
Series 90-30.
a43071
X
T XXXXX SEC
X/2 X/2
SEC SEC
2-44 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
La seguridad de los PLCs de las Series 90-30, Series 90-20 y PLCs Micro está diseñada para evitar
cambios no autorizados en el contenido de un PLC. Existen cuatro niveles de seguridad disponibles
en el PLC. El primer nivel, que está siempre disponible, proporciona sólo la capacidad de leer los
datos del PLC; no se permiten cambios en la aplicación. Los otros tres niveles tienen acceso a cada
nivel protegido por una contraseña.
Cada nivel de protección más elevado permite capacidades de cambio mayores que los de los
niveles inferiores. Los niveles de protección se acumulan de manera que las autorizaciones
otorgadas a un nivel son una combinación de ese nivel, más todos los niveles inferiores. Los
niveles y sus autorizaciones son:
Nivel de
protección Descripción
Nivel 1 Puede leerse cualquier dato excepto las contraseñas. Esto incluye todas las memorias de
datos (%I, %Q, %AQ, %R, etc.), tablas de fallos y todos los tipos de bloques del programa
(datos, valores y constantes).
No se puede modificar ningún valor en el PLC.
Nivel 2 Este nivel permite escribir accesos a las memorias de datos (%I, %R, etc.).
Nivel 3 Este nivel permite escribir accesos al programa de aplicación en modo STOP solamente.
Nivel 4 Este el nivel por defecto para los sistemas que no tienen establecidas contraseñas. El nivel
por defecto para un sistema con contraseñas es el nivel desprotegido más alto. Este nivel,
el más alto, permite leer y escribir accesos a todas las memorias, así como contraseñas en
los modos RUN y STOP. (Los datos de configuración no pueden modificarse en modo
RUN.)
Contraseñas
Existe una contraseña para cada nivel de protección en el PLC. (No puede establecerse ninguna
contraseña para el acceso al nivel 1.) Cada contraseña puede ser única; sin embargo, la misma
contraseña puede usarse para más de un nivel. Las contraseñas tienen una longitud de uno hasta
cuatro caracteres ASCII. sólo pueden introducirse o cambiarse con el software de programación o
el programador portátil.
Un cambio de nivel de protección permanece vigente mientras las comunicaciones entre el PLC y
el programador estén intactas. No necesitan tener ninguna actividad, pero el enlace de las
comunicaciones no debe romperse. Si durante 15 minutos no hay comunicación, el nivel de
protección vuelve al nivel desprotegido más alto.
Al efectuarse la conexión del PLC, el software de programación solicita desde el estado de
protección de cada nivel de protección del PLC. El software de programación solicita entonces al
PLC acceso al nivel desprotegido más alto, dando al programador, de ese modo, acceso al nivel
desprotegido más alto sin tener que solicitar ningún nivel en particular. Cuando el programador
portátil se conecta al PLC, el PLC revierte al nivel desprotegido más alto.
Bloqueo/desbloqueo de subrutinas
Los bloques de subrutinas pueden ser bloqueados y desbloqueados mediante la función de bloqueo
de bloques del software de programación. Se dispone de dos tipos de bloqueo:
Tipo de Descripción
bloqueo
Ver Una vez bloqueada, no se puede usar el zoom en esa subrutina.
Editar Una vez bloqueada, no se puede editar la información en esa subrutina.
Una subrutina de ver o editar previamente bloqueada puede desbloquearse en el editor de
declaración de bloques, a menos que esté permanentemente bloqueada en ver o editar.
Se puede efectuar una función de buscar o buscar y reemplazar en una subrutina de ver bloqueada.
Si el objetivo de la búsqueda se encuentra en una subrutina de ver bloqueada, en pantalla aparece
uno de los mensajes siguientes, en lugar de la lógica:
Encontrado en bloque bloqueado <nombre_bloque> (Continuar/Salir), o
2-46 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Precaución
Los bloques permanentes difieren de los BLOQUEOVER y BLOQUEOEDITAR
regulares en que una vez seleccionados no pueden eliminarse.
Una vez que se ha seleccionado BLOQUEO EDITAR PERMANENTE, éste sólo puede cambiarse
a BLOQUEO VER PERMANENTE. El BLOQUEO VER PERMANENTE no puede cambiarse a
ningún otro tipo de bloqueo.
Los sistemas de E/S del PLC proporcionan una interfaz entre el PLC de las Series 90-30 y el
equipo y dispositivos proporcionados por el usuario. Los módulos de E/S de las Series 90-30 están
directamente enchufados en los slots de las placas base de las Series 90-30. El número de módulos
de E/S soportados depende del modelo de CPU:
• Las CPUs modelos 350—374 soportan hasta 79 módulos de E/S. Estas CPUs soportan hasta
ocho racks, que incluyen el rack de la CPU más un total de siete racks de expansión y/o racks
remotos.
• Las CPUs modelos 331, 340 y 341 soportan hasta 49 módulos de E/S. Estas CPUs soportan
hasta cinco racks, que incluyen el rack de la CPU más un total de cuatro racks de expansión
y/o racks remotos.
• Las CPUs modelos 311 y 313 (placas base de 5 slots) soportan hasta 5 módulos de E/S de las
Series 90-30. La CPU modelo 323 (placa base de 10 slots) soporta hasta 10 módulos de E/S
de las Series 90-30. Estas tres CPUs no soportan racks de expansión o remotos.
La siguiente figura muestra la estructura de E/S del PLC de las Series 90-30.
Sistema de E/S del PLC
RAM MEMORIA a43072
DE APLICACIÓN CACHE
% AI %I
% AQ
%T
%R
%G
%S
EXPLORADOR %Q
DATOS
CONFIGURACIÓN E/S DE E/S
%M
16 BITS 1 BIT
PLACA POSTERIOR
SERIES 90-30
MODULOS
MÓDULO MODULO MODULO GENIUS
ENTRADA SALIDA E/S
SERIES
DIGITAL DIGITAL ANALOGICAS
MODELO 30 MODELO 30 MODELO 30 90-30
(GCM y GBC)
BUS
GENIUS
GBC GBC GBC
GENIUS
SERIES SERIES SERIES
SEIS 90-30 GLOBAL
CINCO
2-48 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Nota
La figura mostrada más arriba es específica para la estructura de E/S 90-30. Los
módulos inteligentes y opcionales no forman parte de la exploración de E/S;
éstos utilizan la ventana de comunicaciones del sistema. Para información sobre
de la estructura E/S 90-20, consulte el Manual del usuario del PLC de las Series
90™-20 (GFK-0551). Para información acerca de la estructura E/S del PLC
Micro, consulte el Manual del usuario del PLC de las Series 90™ (GFK-1065).
2-50 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
de alimentación externa de modo que, aunque el PLC no tenga suministro, los módulos de salidas
analógicas continúen operando en su estado seleccionado por defecto.
Datos de diagnóstico
Los bits de diagnóstico están disponibles en la memoria %S que indicará la pérdida de un módulo
de E/S o una discrepancia en la configuración de E/S. La información de diagnóstico no está
disponible para puntos de E/S individuales. En el Capítulo 3 encontrará más información sobre el
tratamiento de fallos, “Explicaciones y corrección de fallos.”
Datos globales
El PLC de las Series 90-30 soporta compartir muy rápidamente los datos entre múltiples CPUs
utilizando los datos globales de Genius. El Controlador de bus Genius, IC693BEM331 en la CPU
versión 5 y posterior, y el Módulo de comunicaciones Genius ampliado, IC693CMM302, pueden
emitir hasta 128 bytes de datos a otros PLCs u ordenadores. Se pueden recibir hasta 128 bytes de
cada uno de los hasta 30 controladores Genius que puede haber en la red. Los datos pueden ser
emitidos o recibidos en cualquier tipo de memoria, no únicamente bits globales %G.
Comunicaciones de Ethernet
La CPU Modelo 364 (versión 9.0 y posteriores) soporta la conexión a una red Ethernet a través de
uno (pero no de ambos) de los puertos integrados de Ethernet. Se proporcionan los puertos AAUI y
10BaseT. La CPU Modelo 374 soporta la conexión a una red Ethernet a través de los puertos
10BaseT/100BaseTx integrados de dúplex completo autonegociado.
Las dos CPU364 y CPU374 soportan los Datos Globales de Ethernet (EGD), que se asemejan a los
Datos Globales de Genius en que permiten a un dispositivo (el productor) transferir datos a uno o
más dispositivos (los consumidores) en la red. Los EGD no son soportados por el software
Logicmaster 90 (se requiere un programador basado en Windows para los PLCs de la Series 90.)
2-52 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2
Configuración y programación
Se llama configuración al proceso de asignar direcciones lógicas, así como otras características, a
los módulos de hardware del sistema. Puede ser realizado antes o después de la programación,
utilizando el software de programación o el programador portátil; sin embargo, se recomienda
realizar la configuración en primer lugar. Consulte el Manual del usuario de su software de
programación para detalles sobre cómo crear, transferir, editar e imprimir programas. Los capítulos
4 hasta el 12 describen las instrucciones de programación que se pueden utilizar para crear
programas de lógica de contactos para los PLCs de las Series 90-30 y Series 90-20.
Este capítulo sirve de ayuda para la localización de fallos de los sistemas de PLC de las Series 90-
30, 90-20 y Micro. Se explica la descripción de los fallos, que aparecen en la tabla de fallos del
PLC, y las categorías de fallos, que aparecen en la tabla de fallos de E/S.
La explicación de cada fallo en este capítulo lista la descripción del fallo para la tabla de fallos del
PLC o la categoría del fallo para la tabla de fallos de E/S. Localice la descripción del fallo o la
categoría del fallo de la entrada en la tabla de fallos correspondiente visualizada en la pantalla de su
programador. Debajo está la descripción de la causa del fallo junto con instrucciones para
corregirlo.
GFK-0467M-SP 3-1
3
Los fallos se producen en los sistemas de PLC de las Series 90-30, Series 90-20, o Series 90 Micro
cuando se dan ciertas condiciones o anomalías que afectan a la operación y a las prestaciones del
sistema. Estas condiciones, tales como la pérdida de un módulo de E/S o del rack, pueden afectar a
la capacidad del PLC para controlar una máquina o un proceso. O, estas condiciones pueden sólo
actuar como una alerta, tal como una señal de pila baja, que indica que la pila que protege la
memoria debe ser sustituida. Sin embargo, algunas condiciones notificadas a la tabla de fallos no
son notificaciones de fallos. Por ejemplo, si deseara añadir un nuevo módulo al PLC, éste será
listado en la tabla de fallos de E/S como “Adición de un módulo de E/S.”
Procesador de alarmas
La condición o avería en si misma se denomina fallo. Cuando la CPU recibe un fallo y lo procesa
recibe el nombre de alarma. El firmware de la CPU que manipula estas condiciones se llama
Procesador de alarmas. La interfaz de usuario para el Procesador de alarmas se realiza a través del
software de programación. Cualquier fallo detectado se registra en una tabla de fallos y se visualiza
bien en la pantalla de la tabla de fallos del PLC o en la pantalla de la tabla de fallos de E/S, según
corresponda.
Clases de fallos
Los PLCs de las series 90-30, 90-20, y Micro detectan varias clases de fallos. Estos incluyen
averías internas, averías externas y averías de funcionamiento.
Nota
Para información específica sobre el tratamiento de fallos del PLC Micro,
consulte el Manual del usuario del PLC Micro de las Series 90 (GFK-1065).
3-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3
Atributo Descripción
Tabla de fallos afectada Tabla de fallos de E/S
Tabla de fallos del PLC
Acción del fallo Fatal
Diagnóstica
Informativa
Tabla de fallos
Para registrar los fallos se mantienen dos tablas de fallos en el PLC, la tabla de fallos de E/S para
registrar los fallos relacionados con el sistema de E/S y la tabla de fallos del PLC para registrar
todos los demás fallos. La siguiente tabla lista los grupos de fallos, las acciones de sus fallos, las
tablas de fallos afectadas y el “nombre” para los puntos %S digitales del sistema que han sido
afectados.
Cuando se detecta un fallo, la CPU usa la acción del fallo para ese fallo. Las acciones de fallo no
son configurables en el PLC de las Series 90-30, Series 90-20, o Micro de las Series 90.
| ov_swp Light_01
|——] [————————————————————————————————————————————————————————————————————( )—
|
|%I0359 ov_swp
|——] [————————————————————————————————————————————————————————————————————(R)—
|
3-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3
Los fallos se almacenan en el PLC, de manera que si el software de programación está en el modo
FUERA DE LÍNEA, no se visualizan fallos en esta tabla de fallos. Si el software de programación
está en el modo EN LÍNEA o MONITOR, se visualizan los datos de fallos de E/S. En el modo EN
LÍNEA, se pueden borrar los fallos, si bien esta función puede estar protegida por contraseña.
Una vez borrados, los fallos que todavía existan no se registran otra vez en el tabla, a menos que
no se efectúe un ciclo de desconexión/conexión o se almacene una nueva configuración .
3-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3
Cada explicación de fallo contiene una descripción del fallo e instrucciones para corregirlo.Muchas
descripciones de fallos tienen múltiples causas. En estos casos, el código de error, visualizado con
la información adicional del fallo, se utiliza para distinguir las diferentes condiciones de fallo que
comparten la misma descripción. El código de error lo constituyen los dos primeros dígitos
hexadecimales en el quinto (por la izquierda) grupo de números, como se muestra en el siguiente
ejemplo.
Algunos fallos se pueden producir porque ha fallado la memoria de acceso aleatorio (RAM) en la
tarjeta de la CPU del PLC. Estos mismos fallos pueden ocurrir también porque se haya
desconectado la alimentación del sistema y la tensión de la pila es (o era) insuficiente mantener el
contenido de la memoria. Para evitar una duplicación excesiva de las instrucciones cuando la
memoria corrompida pueda ser una causa de error, la corrección simplemente indica:
Efectuar las correcciones por memoria corrompida.
Esto significa:
1. Si se ha desconectado la alimentación del sistema, debe sustituir la pila. La tensión de la pila
puede ser insuficiente para mantener el contenido de la memoria.
2. Debe sustituir la tarjeta de la CPU del PLC. Puede que el circuito impreso de la tarjeta de la
CPU del PLC esté fallando.
La siguiente tabla permite encontrar rápidamente la explicación de un fallo determinado del PLC
en esta sección. Cada entrada está listada tal como aparece en la pantalla del programador.
3-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3
Código de error 1, 42
Nombre Reinicialización soft de módulo opcional fallida
Descripción CPU del PLC incapaz de restablecer las comunicaciones con el módulo opcional
después de intentar la reinicialización soft (como pulsar el botón Reset).
Corrección: (1) Repita el procedimiento de reinicialización soft recomendada para este
módulo.
(2) Sustituya el módulo opcional.
(3) Desconecte el sistema. Asegúrese de que el módulo está correctamente
fijado en el rack y que todos los cables están correctamente conectados y
colocados.
(4) Compruebe o sustituya los cables.
Código de error Todos los demás
Nombre Avería del módulo durante la configuración
Descripción El software de operación del PLC genera este error cuando un módulo falla
durante la conexión o almacenamiento de la configuración.
Corrección: (1) Desconecte el sistema. Sustituya el módulo situado en el rack y el slot
.
El grupo de fallos Discordancia en la configuración ocurre cuando el módulo que ocupa un slot
es diferente del especificado en el fichero de configuración. La acción del fallo es Fatal.
Código de error 1
Nombre Discordancia en la configuración del sistema
Descripción El software de operación del PLC genera este fallo cuando el módulo que ocupa
un slot no es del mismo tipo que el que el fichero de configuración indica que
debería estar en ese slot, o cuando el tipo de rack configurado no coincide con el
rack presente.
Corrección: Identifique la discordancia y reconfigure el módulo o el rack.
Código de error 6
Nombre Discordancia en la configuración del sistema
Descripción Es semejante al código de error 1 en cuanto que este fallo ocurre cuando el
módulo que ocupa un slot no es del mismo tipo que el que el fichero de
configuración indica que debería estar en ese slot, o cuando el tipo de rack
configurado no coincide con el rack presente.
Corrección: Identifique la discordancia y reconfigure el módulo o el rack.
Código de error 18
Nombre Hardware no soportado
Descripción Un módulo PCM o del tipo PCM está presente en el sistema de la CPU 311, 313
ó 323, o en un rack de expansión o remoto.
Corrección: Corrija la situación físicamente extrayendo el módulo PCM o del tipo PCM o
bien instale una CPU que soporte este módulo. Nota: Estos módulos deben
residir únicamente en una rack de la CPU y sólo en una CPU que los soporte.
Código de error 26
Nombre Módulo ocupado, configuración todavía no aceptada por el módulo
Descripción El módulo no puede aceptar la nueva configuración en este momento porque está
ocupado con un proceso diferente.
Corrección: Permita al módulo finalizar la operación actual y vuelva a almacenar la
configuración.
Código de error 51
Nombre Función END ejecutada del diagrama de función secuencial (SFC)
Descripción La posición de la función una función END en la lógica SFC o en una lógica
llamada por SFC provoca este fallos.
Corrección: Elimine la función END de la lógica SFC o de la lógica llamada por SFC.
3-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3
El grupo de fallos Avería del software del módulo opcional ocurre cuando hay una avería del
software no recuperable en un módulo PCM o ADC. La acción de fallo para este grupo es Fatal.
El grupo de fallos Avería de la suma de comprobación del programa se produce cuando la CPU
del PLC detecta condiciones de error en los bloques del programa recibido por el PLC (descargado
por el software de programación). También ocurrre cuando la CPU del PLC detecta errores de
suma de comprobación durante la comprobación de la memoria en la conexión o durante la
comprobación no prioritaria en modo RUN. La acción de fallo para este grupo es Fatal.
El grupo de fallos Señal de pila baja se produce cuando la CPU del PLC detecta una pila baja en
la fuente de alimentación o un módulo, tal como el PCM, informa de una condición de pila baja. La
acción de fallo para este grupo es Diagnóstico.
Código de error 0
Nombre Señal de pila averiada
Descripción La pila de la CPU (u otro módulo que contenga una pila) está agotada.
Corrección: Sustituya la pila. No desconecte la alimentación del rack.
Código de error 1
Nombre Señal de pila baja
Descripción Una pila en la CPU, u otro módulo tiene una señal baja.
Corrección: Sustituya la pila. No desconecte la alimentación del rack.
El grupo de fallos Tiempo de barrido constante excedido se produce cuando la CPU del PLC
opera en el modo BARRIDO CONSTANTE, y detecta que el barrido ha excedido al temporizador
de barrido constante. Los datos adicionales del fallo contienen el tiempo real del barrido en los dos
primeros bytes y el nombre del programa en los ocho bytes siguientes. La acción de fallo para este
grupo es Diagnóstico.
Fallo de aplicación
El grupo de fallos Fallo de aplicación se produce cuando la CPU del PLC detecta un fallo en el
programa de usuario. La acción del fallo para este grupo es Diagnóstica, excepto cuando se trata de
un error de Excedida la pila de llamadas a subrutina, en cuyo caso es Fatal.
Código de error 7
Nombre Excedida la pila de llamadas a subrutina
Descripción Las llamadas a subrutina están limitadas a una profundidad de 8. Una subrutina
puede llamar a otra subrutina que, a su vez, puede llamar a otra subrutina hasta
que se alcance un nivel de 8 llamadas.
Corrección: Modifique el programa de modo que la profundidad de llamadas de subrutina no
exceda de 8.
Código de error 1B
Nombre Petición de comunicaciones no procesada debido a limitaciones en la memoria del
PLC
Descripción Las peticiones de comunicaciones sin espera puede colocarse en fila más
rápidamente de lo que pueden ser procesadas (por ej., una por barrido). En una
situación como esta, cuando las peticiones de comunicaciones se acumulan hasta
el punto de que el PLC tiene menos de una cantidad de memoria mínima
disponible, la petición de comunicaciones resultará fallida y no se procesará.
Corrección: Emita menos peticiones de comunicaciones, o si no reduzca la cantidad de
correspondencia que se está intercambiando en el sistema.
Código de error 5A :
Nombre Solicitada la interrupción de usuario
Descripción El software de operación del PLC (bloques de función) genera esta alarma
informativa cuando la petición de servicio #13 (interrupción de usuario) se
ejecuta en el programa de aplicación.
Corrección: No se requiere ninguna. La alarma es sólo informativa.
3-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3
Código de error 1
Nombre RAM de usuario corrompida en la conexión
Descripción El software de operación del PLC genera este error cuando detecta la RAM
corrompida en la conexión.
Corrección: (1) Vuelva a cargar el fichero de configuración, programa de usuario y las
referencias (si las hay).
(2) Sustituya la pila en la CPU del PLC.
(3) Sustituya la tarjeta de memoria de expansión en la CPU del PLC.
(4) Sustituya la CPU del PLC.
Código de error 2
Nombre Detectado código de operaciones booleanas ilegal
Descripción El software de operación del PLC genera este error cuando detecta una
instrucción deficiente en el programa de usuario.
Corrección: (1) Restaure el programa de usuario y las referencias (si las hay).
(2) Sustituya la tarjeta de memoria de expansión en la CPU del PLC.
(3) Sustituya la CPU del PLC.
El grupo de fallos Avería de acceso por contraseña se produce cuando la CPU del PLC recibe
una petición para cambiar a un nuevo nivel de protección y la contraseña incluida en la petición no
es válida para ese nivel. La acción de fallo para este grupo es Informativa.
3-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3
Código de error 13
Nombre Error del software de operación del PLC
Descripción El software de operación del PLC genera este error cuando se producen ciertos
problemas del software de operación del PLC. Estos errores no deberían
producirse en productos ya listos para el mercado; normalmente sólo se
encuentran durante el proceso de desarrollo del firmware en fábrica.
Corrección: (1) Visualice la tabla de fallos del PLC en el programador. Póngase en contacto
con el Servicio de GE Fanuc, proporcionándole toda la información
contenida en la entrada del fallo.
(2) Efectúe las correcciones por memoria corrompida.
Código de error 14, 27
Nombre Memoria del programa del PLC corrompida
Descripción El software de operación del PLC genera estos errores cuando se producen ciertos
problemas del software de operación del PLC. Estos errores no deberían
producirse en productos ya listos para el mercado; normalmente sólo se
encuentran durante el proceso de desarrollo del firmware en fábrica.
Corrección: (1) Visualice la tabla de fallos del PLC en el programador. Póngase en contacto
con el Servicio de GE Fanuc, proporcionándole toda la información
contenida en la entrada del fallo.
(2) Efectúe las correcciones por memoria corrompida.
Código de error 27 hasta 4E
Nombre Error del software de operación del PLC
Descripción El software de operación del PLC genera estos errores cuando se producen ciertos
problemas del software de operación del PLC. Estos errores no deberían
producirse en productos ya listos para el mercado; normalmente sólo se
encuentran durante el proceso de desarrollo del firmware en fábrica.
Corrección: Visualice la tabla de fallos del PLC en el programador. Póngase en contacto con
el Servicio de GE Fanuc, proporcionándole toda la información contenida en la
entrada del fallo.
Código de error 4F
Nombre Comunicaciones fallidas
Descripción El software de operación del PLC (procesador de petición de servicio) genera este
error cuando intenta obedecer a una petición que requiere de la comunicación con
la placa posterior y recibe una respuesta denegada.
Corrección: (1) Compruebe si hay actividad anormal en el bus.
(2) Sustituya el módulo opcional inteligente al que iba dirigida la petición.
Código de error 50, 51, 53
Nombre Errores de la memoria del sistema
Descripción El software de operación del PLC genera estos errores cuando su petición de un
bloque de memoria del sistema es denegada por el administrador del sistema
porque no hay memoria disponible o contiene errores.
Corrección: (1) Visualice la tabla de fallos del PLC en el programador. Póngase en contacto
con el Servicio de GE Fanuc, proporcionándole toda la información
contenida en la entrada del fallo.
2 Efectúe las correcciones por memoria corrompida.
Código de error 52
Nombre Comunicaciones de la placa posterior fallidas
Descripción El software de operación del PLC (procesador de petición de servicio) genera este
error cuando intenta obedecer a una petición que requiere de la comunicación con
la placa posterior y recibe una respuesta de correspondencia rechazada.
Corrección: (1) Compruebe si hay actividad anormal en el bus.
(2) Sustituya el módulo opcional inteligente al que iba dirigida la petición.
(3) Compruebe la conexión correcta del cable paralelo del programador.
3-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3
La tabla de fallos de E/S presenta los datos de los fallos en tres clasificaciones:
• Categoría del fallo
• Tipo de fallo
• Descripción de fallo
Los fallos descritos en la página siguiente tienen una categoría de fallo, pero no un tipo de fallo o
grupo de fallo.
La explicación de cada fallo contiene una descripción del fallo e instrucciones para
corregirlo.Muchas descripciones de fallos tienen múltiples causas.En estos casos, el código de
error, visualizado con la información adicional del fallo y que se obtiene pulsando CTRL-F, se
utiliza para distinguir las diferentes condiciones de fallo que comparten la misma descripción. (Para
más información sobre la utilización de CTRL-F, consulte el Anexo B, “Interpretación de las
tablas de fallos,” de este manual.) La categoría de fallo corresponde a los dos primeros dígitos
hexadecimales en el quinto grupo de números, como se muestra en el ejemplo siguiente.
La siguiente tabla permite encontrar rápidamente la explicación de un fallo determinado del E/S en
esta sección. Cada entrada está listada tal como aparece en la pantalla del programador.
Descripción El software de operación del PLC genera este error cuando detecta que un módulo
de E/S Modelo 30 ya no responde a los comandos procedentes de la CPU del
PLC, o cuando el fichero de configuración indica que un módulo de E/S debe
estar ocupando un slot y no existe ningún módulo en ese slot.
Corrección: (1) Sustituya el módulo.
(2) Corrija el fichero de configuración.
(3) Visualice la tabla de fallos del PLC en el programador. Póngase en contacto
con el Servicio de GE Fanuc, proporcionándole toda la información
contenida en la entrada del fallo.
Descripción El software de operación del PLC genera este error cuando un módulo de E/S que
se había averiado vuelve a funcionar.
Corrección: (1) No es necesaria ninguna acción si el módulo se ha desmontado o sustituido,
o se ha efectuado un ciclo de desconexión/conexión del rack remoto.
(2) Actualice el fichero de configuración o extraiga el módulo.
Descripción El software de operación del PLC genera este error cuando detecta un módulo de
E/S del Modelo 30 en un slot que el fichero de configuración indice que debe
estar vacío.
Corrección: (1) Extraiga el módulo si está en un slot erróneo.
(2) Actualice y restaure el fichero de configuración para incluir el módulo extra
si debe encontrarse en ese lugar.
3-18 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Capítulo Funciones de relé
4
Este capítulo explica el uso de contactos, bobinas y enlaces en los escalones de la lógica de
contactos.
Función Página
Bobinas y bobinas negadas. 4-2
Contactos normalmente abiertos y normalmente 4-1
cerrados.
Bobinas retentivas y retentivas negadas. 4-4
Bobinas de transición positiva y negativa. 4-5
Bobinas SET y RESET. 4-6
Bobinas retentivas SET y RESET. 4-7
Enlaces horizontales y verticales. 4-7
Bobinas y contactos de continuación 4-8
GFK-0467M-SP 4-1
4
4-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
4
Ejemplo
El siguiente ejemplo muestra un escalón con 10 elementos que poseen los alias (véase en el
Capítulo 2 la información sobre los alias) desde E1 hasta E10. La bobina E10 está ACTIVADA
cuando las referencias E1, E2, E5, E6 y E9 están ACTIVADAS y las referencias E3, E4, E7 y E8
están DESACTIVADAS.
|
| E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
|——| |—————| |—————|/|—————|/|—————| |—————| |—————|/|—————|/|—————| |—————( )—
|
Bobina —( )—
Una bobina ACTIVA una referencia digital mientras recibe flujo de energía. Es no retentiva; por
lo tanto, no puede utilizarse con referencias de estado del sistema (%SA, %SB, %SC o %G) o
referencias Genius globales (%G).
Ejemplo
En este ejemplo, la bobina E3 está ACTIVADA cuando la referencia E1 está ACTIVADA y la
referencia E2 está DESACTIVADA.
|
| E1 E2 E3
|——| |—————|/|—————————————————————————————————————————————————————————————( )—
|
Ejemplo
En este ejemplo, la bobina E3 está ACTIVA cuando la referencia E1 está DESACTIVADA.
|
| E1 E2
|——| |—————————————————————————————————————————————————————————————————————(/)—
|
| E2 E3
|——| |—————————————————————————————————————————————————————————————————————( )—
|
4-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
4
Ejemplo
En este ejemplo, cuando la referencia E1 pasa de OFF a ON, las bobinas E2 y E3 reciben flujo de
energía, activando E2 durante un barrido de la lógica. Cuando E2 pasa de ON a OFF, el flujo de
energía de retira de E2 y E3, activando la bobina E3 durante un barrido.
|
| E1 E2
|——| |—————————————————————————————————————————————————————————————————(↑)—
|
| E1 E3
|——| |———————————————————————————————————————(↓)—
|
Ejemplo
En el siguiente ejemplo, la bobina representada por E1(S) se ACTIVA si E2 se ACTIVA. Incluso
si E2 se DESACTIVA, la bobina E1 permanece ACTIVADA hasta que la bobina E1(R ) recibe
energía de E3.
Nota: Si E2 y E3 estuvieran ACTIVADAS al mismo tiempo, la bobina E1 estaría
DESACTIVADA. Esto se debe a que los escalones se exploran de arriba hacia abajo, de modo que
el estado de la bobina reset en el segundo escalón es el último que se escribirá en la tabla de salida.
Si se invirtiese el orden de los escalones, la bobina set sería la última en ser explorada, de modo
que E1 estaría ACTIVADA si E2 y E3 estuvieran ACTIVADAS al mismo tiempo.
|
| E2 E1
|——| |———————————————————————————————————————————————————————————————————(S)—
|
|
|
|
| E3 E1
|——| |———————————————————————————————————————————————————————————————————(R)—
|
|
|
|
Nota
Cuando el nivel de comprobación de una bobina se configura como
INDIVIDUAL, puede utilizar una referencia %M o %Q específica con sólo una
bobina, pero puede utilizar dicha referencia con una bobina SET y una bobina
RESET simultáneamente.Cuando el nivel de comprobación de la bobina es
AVISO MULTIPLE o MULTIPLE, cada referencia puede utilizarse con
múltiples bobinas, bobinas SET y bobinas RESET.Cuando se hace un uso
múltiple, podría activarse una referencia bien mediante una bobina SET, o una
bobina normal y podría desactivarse mediante una bobina RESET, o una bobina
normal.
4-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
4
Enlaces
Los enlaces horizontales y verticales, que aparecen como líneas rectas en la pantalla, se usan para
conectar elementos de una línea de la lógica de contactos entre funciones. Su finalidad es la de
llevar a cabo el flujo de la lógica (“energía”) desde la izquierda a la derecha en una línea de lógica.
Nota
No se puede utilizar un enlace horizontal para conectar una función o bobina a la
línea de energía izquierda. Puede, sin embargo, utilizar %S7, el bit del sistema
ALW_ON (siempre on) con un contacto abierto enlazado a la línea de energía
para llamar a una función en cada barrido.
Ejemplo
En el siguiente ejemplo se utilizan varios enlaces:
• Los enlaces horizontales conectan el contacto E2 con el contacto E5, y el contacto E5 con la
bobina E1.
• Los enlaces verticales conectan el contacto E8 a un lado del contacto E6, el contacto E9 a un
lado del contacto E7, y el lado derecho de los contactos E7/E9 a la unión de los contactos E2
y E5.
Enlaces horizontales
E2 E5 E1
E3 E6 E7
E8 E9
Enlaces verticales
4-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Capítulo Temporizadores y contadores
5
Habilitar ONDTR Q
0.10s
Reset R
Valor PV
predefinido
%R00100
GFK-0467M-SP 5-1
5
Nota
Asegúrese de que la dirección del bloque de tres palabras no es utilizada en
ninguna otra parte de su programa (el uso duplicado de la misma se denomina
“solapamiento”). Logicmaster no comprueba ni le avisa si los bloques registrados
están solapados. Los temporizadores y contadores no funcionarán correctamente
si se solapan sus bloques de tres palabras.
La palabra de control (la tercera palabra en el bloque de tres palabras) almacena el estado de las
entradas booleanas y las salidas de su bloque de función asociado, como se muestra en el siguiente
formato:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reservado
Reservado
Entrada reset
Entrada habilitar,
ejecución previa
Q (salida estado
tempr/contador)
EN (entrada habilitar)
Los bits 0 hasta 11 están reservados por el PLC para mantener la precisión de los temporizadores;
estos bits (0 hasta 11) no se utilizan para bloques de función de contadores.
Nota
Preste atención si utiliza la misma dirección para el parámetro de entrada del
valor predefinido (PV) de la función que para la segunda palabra en el bloque de
tres palabras. Si PV no es una constante, se le asigna normalmente una dirección
de la memoria distinta de la de la segunda palabra. Algunos programadores
eligen la dirección de la segunda palabra para la entrada del valor predefinido
(PV), utilizando por ejemplo %R0102 cuando el bloque de tres palabras
comienza con %R0101. Esto permite cambiar el PV en la aplicación mientras el
temporizador o el contador están en funcionamiento. Las aplicaciones pueden
leer la primera palabra (CV) o la tercera palabra (Control), pero no pueden
escribir en estos valores, ya que si se escribe en ellos la función no se ejecutará.
5-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5
ONDTR
Un temporizador de retardo de conexión retentivo (ONDTR) incrementa su cómputo mientras
recibe flujo de energía y detiene su valor cuando se interrumpe el flujo de energía. El tiempo puede
contarse en décimas de segundo (la selección por defecto), centésimas de segundo o milésimas de
segundo. El intervalo va de 0 hasta +32,767 unidades de tiempo: por tanto, el intervalo de
temporización es de 0.001 hasta 3,276.7 segundos. El estado de este temporizador es retentivo
cuando se produce un corte de corriente; en el arranque no se produce una reinicialización
automática.
Cuando el ONDTR recibe flujo de energía por primera vez, comienza a acumular tiempo (valor
actual). Cuando este temporizador se encuentra en la lógica de esquema de contactos, se actualiza
su valor actual.
Nota
Si durante un barrido de la CPU está habilitado el mismo temporizador múltiples
veces con idéntica dirección de referencia, los valores actuales de los
temporizadores será los mismos.
Cuando el valor actual es igual o superior al valor predefinido PV, se activa la salida Q. Mientras
el temporizador continúa recibiendo flujo de energía, continúa acumulando tiempo hasta que se
alcanza el valor máximo. Una vez se ha alcanzado el valor máximo, se conserva y la salida Q
permanece activada independientemente del estado de la entrada habilitar.
a42931
HABILITAR
RESET
A B C D E F G H
Cuando se detiene el flujo de energía hacia el temporizador, el valor actual deja de aumentar y se
retiene. La salida Q, si está activada, permanecerá activada. Cuando la función recibe de nuevo
flujo de energía, el valor actual aumenta de nuevo, comenzando por el valor retenido. Cuando reset
R recibe flujo de energía, el valor actual se reinicializa a cero y la salida Q se desactiva. En los
PLCs de las series 35x, 36x y 37x, si habilitar de ONDTR está en nivel bajo, PV = 0 y reset R
recibe flujo de energía, la salida estará en nivel bajo. Sin embargo, en los PLCs 311–341, en estas
mismas condiciones, la salida estará en nivel alto.
Habilitar Q
ONDTR
0.10s
Valor PV
predefinido
Dirección del
bloque de
tres palabras
Parámetros
Parámetro Descripción
Dirección del La función ONDTR utiliza tres palabras consecutivas (registros) de memoria %R para
bloque de tres almacenar lo siguiente:
palabras • • Valor actual (CV) = palabra 1.
• • Valor predefinido (PV) = palabra 2.
• • Palabra de control = palabra 3.
5-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5
Ejemplo
En este ejemplo, se utiliza un temporizador de retardo de desconexión retentivo para producir una
salida (%Q0011) que se activa 8.0 segundos después de que se active %Q0010 y se desactiva en el
momento en que se desactiva %Q0010. Esto es debido a que cuando %Q0010 se desactiva, su
contacto normalmente cerrado pasa flujo de energía a la entrada reset (R). El valor de tiempo de
8.0 segundos se obtiene multiplicando el valor PV (80) por el valor del tiempo base (0.1s).
| _____
| %Q0010 | | %Q0011
|——| |———|ONDTR|———————————————————————————————————————————————————————————( )—
| | 0.1s|
| %Q0010 | |
|——|/|———|R |
| | |
| | |
| CONST —|PV |
| +00080 |_____|
|
| %R0004
TMR
La función de temporizador de retardo de conexión simple (TMR) incrementa su cómputo de
tiempo mientras recibe flujo de energía y se reinicializa a cero cuando se detiene el flujo de
energía. El tiempo puede contarse en décimas de segundo (la selección por defecto), centésimas de
segundo o milésimas de segundo. El intervalo va de 0 hasta +32,767 unidades de tiempo, por tanto
el intervalo de temporización es de 0.001 hasta 3,276.7 segundos. El estado de este temporizador
es retentivo cuando se produce un corte de corriente; en el arranque no se produce una
reinicialización automática.
Cuando el TMR recibe flujo de energía por primera vez, el temporizador comienza a acumular
tiempo (valor actual). El valor actual se actualiza cuando se encuentra en la lógica con el fin de
reflejar el tiempo total transcurrido que ha estado habilitado el temporizador desde que se
reinicializó por última vez.
Nota
Si durante un barrido de la CPU está habilitado el mismo temporizador múltiples
veces con idéntica dirección de referencia, los valores actuales de los
temporizadores será los mismos.
El valor de tiempo transcurrido del temporizador (CV - valor actual) continúa acumulándose
mientras la lógica habilitar permanezca activada. Cuando el valor actual (CV) es igual o superior al
valor predefinido (PV), la función comienza a pasar flujo de energía hacia la derecha. El
temporizador continúa acumulando tiempo hasta que se alcanza el valor máximo (32,767 unidades
de tiempo). Cuando la entrada habilitar pasa de ON a OFF, el temporizador deja de acumular
tiempo y el valor actual se reinicializa a cero.
a42933
HABILITAR
A B C D E
Habilitar Q
TMR
0.10s
Tiempo
base
Valor PV
predefinido
Dirección del
bloque de
tres palabras
5-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5
Parámetros
Parámetro Descripción
Dirección del La función TMR utiliza tres palabras consecutivas (registros) de memoria %R para
bloque de tres almacenar lo siguiente:
palabras • • Valor actual (CV) = palabra 1.
• • Valor predefinido (PV) = palabra 2.
• • Palabra de control = palabra 3.
Ejemplo
En el siguiente ejemplo, se usa un temporizador TMR para controlar el periodo de tiempo que la
bobina DWELL (tiempo de espera) está activada. El proceso de temporización comienza cuando el
contacto DO_DWL normalmente abierto (momentáneo) se activa, lo cual activa la bobina
DWELL. Un contacto DWELL mantiene la bobina DWELL activada (“encerrojada”) cuando el
contacto DO_DWL se abre; de igual modo, otro contacto DWELL habilita el temporizador.
Cuando el temporizador alcanza su valor preseleccionado de medio segundo, la bobina REL se
activa. El contacto REL, normalmente cerrado, se abre interrumpiendo la condición de encerrojada
de la bobina DWELL, que se desactiva. El contacto DWELL de la entrada habilitar del
temporizador se abre, lo cual interrumpe el flujo de energía al temporizador, reinicializa su valor
actual y desactiva la bobina REL. A continuación, el circuito está listo para otra activación del
contacto DO_DWL.
|
| DO_DWL REL DWELL
|——| |——+——|/|—————————————————————————————————————————————————————————————( )—
| |
| DWELL |
|——| |——+
| _____
| DWELL | | REL
|——| |———| TMR |———————————————————————————————————————————————————————————( )—
| | 0.1s|
| | |
| CONST —|PV |
| +00005 |_____|
|
| TMRID
5-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5
OFDT
El valor acumulado del temporizador de retardo a la desconexión (OFDT) incrementa el cómputo
de tiempo mientras está desactivado el flujo de energía o se reinicializa a cero cuando el flujo de
energía está activado. El tiempo puede contarse en décimas de segundo (la selección por defecto),
centésimas de segundo o milésimas de segundo. El intervalo va de 0 hasta +32,767 unidades de
tiempo, por tanto el intervalo de temporización es de 001 hasta 3,276.7 segundos. El estado de este
temporizador es retentivo cuando se produce un corte de corriente; en el arranque no se produce
una reinicialización automática.
Cuando el temporizador de retardo a la desconexión (OFDT) recibe por primera vez flujo de
energía, pasa la energía hacia la derecha, y el valor actual (CV) se reinicializa a cero. (El OFDT
utiliza la palabra 1 [registro] como posición de almacenamiento de CV—encontrará más
información al respecto en la sección “Parámetros” de la página siguiente.) La salida permanece
activada mientras la función recibe flujo de energía. Si la función deja de recibir flujo de energía
de la izquierda, su salida permanece activada temporalmente, y el temporizador comienza a
acumular tiempo en el valor actual; una vez que el valor acumulado alcanza el valor predefinido, la
salida se desactiva.
Nota
Si durante un barrido de la CPU está habilitado el mismo temporizador múltiples
veces con idéntica dirección de referencia, los valores actuales de los
temporizadores será los mismos.
A B C D E F G H
Habilitar Q
OFDT
0.10s
Tiempo
base
Valor PV
predefinido
Dirección del
bloque de
tres palabras
Parámetros
Parámetro Descripción
Dirección del El temporizador OFDT utiliza tres palabras consecutivas (registros) de memoria %R
bloque de tres para almacenar lo siguiente:
palabras • • Valor actual (CV) = palabra 1.
• • Valor predefinido (PV) = palabra 2.
• • Palabra de control = palabra 3.
5-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5
Ejemplos
En el ejemplo siguiente, un temporizador OFDT activa una bobina de salida %Q0001 siempre que
el contacto %I0001 esté cerrado. Después de abrirse %I0001, %Q0001 permanece activada
durante 2 segundos y después se desactiva.
%I0001 %Q0001
OFDT
0.10s
CONST PV
+00020
%R0019
En el siguiente ejemplo, la acción de salida se invierte por medio de una bobina de salida inversa.
En este circuito, un temporizador OFDT desactiva una bobina inversa de salida %Q0001 siempre
que el contacto %I0001 esté cerrado. Después de abrirse %I0001, %Q0001 permanece activada
durante 2 segundos y después se desactiva.
%I0001 %Q0001
OFDT
0.10s
CONST PV
+00020
%R0019
UPCTR
La función de contador incremental (UPCTR) se utiliza para contar de modo ascendente hasta un
valor designado. El intervalo de valores va de 0 hasta +32,767 unidades de cómputo. Cuando la
reinicialización (reset) del contador incremental está ACTIVADA, el valor actual de contador se
reinicializa a cero. Cada vez que la entrada habilitar pasa de OFF a ON, el valor actual se
incrementa en 1. El valor actual puede incrementarse más allá del valor predefinido PV. La salida
está ACTIVA siempre que el valor actual sea mayor o igual que el valor predefinido.
El estado del contador UPCTR es retentivo cuando se produce un corte de corriente; en el arranque
no se produce una reinicialización automática.
Habilitar UPCTR Q
Reset R
Valor PV
predefinido
Dirección del
bloque de
tres palabras
Parámetros
Parámetro Descripción
Dirección del El contador incremental UPCTR utiliza tres palabras consecutivas (registros) de
bloque de tres memoria %R para almacenar lo siguiente:
palabras • • Valor actual (CV) = palabra 1.
• • Valor predefinido (PV) = palabra 2.
• • Palabra de control = palabra 3.
5-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5
Ejemplos
Circuito del contador básico
En el siguiente ejemplo, el UPCTR incrementará su valor actual (CV) en uno cada vez que %I0001
efectúe una transición de off a on. La entrada PV configura el valor predefinido a 100. Cuando el
contador cuenta hasta 100, la bobina %Q0001 se activa. El contador seguirá contando transiciones
%I0001 más allá de su valor predefinido (de 100) bien hasta alcanzar su valor de cómputo máximo
(32, 767), o hasta que %I0020 se cierra y reinicializa el contador. %Q0001 estará activada siempre
que el valor CV sea igual o superior al valor PV.
%I0001 %Q0001
UPCTR
%I0020
R
CONST PV
+00100
%R0019
%I0012 %M0001
UPCTR
%M0001
R
CONST PV
+00100
%R0019
DNCTR
La función de contador decremental (DNCTR) se utiliza para contar en sentido descendente desde
un valor predefinido. El valor predefinido mínimo es cero; el valor actual máximo es +32,767
unidades de cómputo. El valor actual mínimo es –32,768. Cuando está reinicializado, el valor
actual del contador se configura al valor predefinido PV. Cada vez que la entrada habilitar pasa de
OFF a ON, el valor actual se decrementa en 1. La salida se ACTIVA siempre que el valor actual
sea menor o igual que cero.
El valor actual del DNCTR es retentivo cuando se produce un corte de corriente; en el arranque no
se produce una reinicialización automática.
Habilitar DNCTR Q
Reset R
Valor PV
predefinido
Dirección del
bloque de tres
palabras
Parámetros
Parámetro Descripción
Dirección del El contador decremental DNCTR utiliza tres palabras consecutivas (registros) de
bloque de tres memoria %R para almacenar lo siguiente:
palabras • • Valor actual (CV) = palabra 1.
• • Valor predefinido (PV) = palabra 2.
• • Palabra de control = palabra 3.
5-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5
Ejemplos
En este ejemplo, el contador decremental identificado como COUNTP cuenta 5000 nuevas piezas
antes de activar la salida %Q0005.
| _____
|NEW_PRT | | %Q0005
|——| |—— >DNCTR|———————————————————————————————————————————————————————————( )—
| | |
|NXT_BAT | |
|——| |———|R |
| | |
| | |
| CONST —|PV |
| +05000 | |
| |_____|
| COUNTP
|
|
| _____
|%I0003 | |
|——| |——+————————————————>UPCTR|
| | | |
|%I0001 | | |
+——| |——+ +————————+R |
| | | |
|%I0009 | | |
+——| |——————————+ CONST -+PV |
| +00005 | |
| +_____+
|
| %R0100
|
| _____
|%I0003 | |
|——| |——+—————————+MOVE_+
| | |INT |
|%I0001 | | |
+——| |——+ %R0100 -+IN Q|–%R0104
| | LEN |
| |00001|
| |_____|
|
| _____
|%I0003 | |
|——| |——+————————————————>DNCTR|
| | | |
|%I0002 | | |
+——| |——+ +————————+R |
| | | |
|%I0009 | | |
+——| |——————————+ CONST -+PV |
| +00005 | |
| +_____+
|
| %R0104
|
| _____
|%I0002 | |
|——| |——+—————————+MOVE_+
| | |INT |
|%I0003 | | |
+——| |——+ %R0104 -+IN Q|-%R0100
| | LEN |
| |00001|
| |_____|
|
5-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5
Un segundo método para realizar el seguimiento de las existencias, mostrado más abajo, utiliza las
funciones ADD y SUB que comparten un registro común, %R00201, en sus salidas. Cuando el
cómputo aumenta ($I0004 se cierra), la instrucción ADD incrementa el valor en %R00201.
Cuando el cómputo decrementa (%I0005 se cierra), la instrucción SUB decrementa el valor en
%R00201. En este caso, las bobinas de transición se utilizan para proporcionar entradas “de una
ejecución” a las funciones ADD y SUB. Si las entradas habilitar no fueran del tipo de una
ejecución, las funciones ADD y SUB se ejecutarían una vez en cada barrido en que estuvieran
habilitadas. (Las bobinas de transición no son necesarias con las funciones UPDTR y DNCTR ya
que sus entradas habilitadas poseen una función de transición integrada.) En el Capítulo 6
encontrará más detalles sobre las funciones ADD y SUB.
|
|
|%I0004 %M0001
+———| |—————————————————————————————————————————————————————————————————————(↑)—
|
|
|%I0005 %M0002
+——| |——————————————————————————————————————————————————————————————————————(↑)—
|
|
| _____
|%M0001 | |
|——| |———| ADD_|—
| | |
| | INT |
| | |—
|%R0201 —|I1 Q|—%R00201
| | |
| | |
| CONST —|I2 |
| +00001 |_____|
|
|
|
| _____
|%M0002 | |
|——| |———| SUB_|—
| | |
| | INT |
| | |
|%R0201 —|I1 Q|—%R00201
| | |
| | |
| CONST —|I2 |
| +00001 |_____|
|
Este capítulo describe las funciones matemáticas del juego de instrucciones de las Series 90-
30/20/Micro:
Nota
La división y la división por módulo son funciones similares que difieren en su
salida; la división calcula un cociente, mientras que la división por módulo
calcula un resto.
GFK-0467M-SP 6-1
6
División por La instrucción MOD sólo, puede utilizar los tipos INT y DINT (REAL no es
módulo soportado). La instrucción MOD utiliza la fórmula I1 ÷ I2 = Q. Sin embargo,
MOD produce sólo el resto de la operación de división y desprecia el cociente.
Por ejemplo, 53 dividido entre 5 = 3 (el cociente 10 se desprecia).
6-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6
El tipo de datos por defecto es el entero con signo. Para más información acerca de los tipos de
datos, consulte el Capítulo 2, Sección 2, “Organización del programa y datos/referencias del
usuario.”
Si el resultado de la operación INT o DINT excede la capacidad, la referencia de salida toma su
mayor valor posible para este tipo de datos. Para números con signo, el signo se pone para indicar
el sentido del exceso. Si el resultado de la operación no excede la capacidad (y las entradas son
números válidos), la salida ok se ACTIVA; de no ser así, se DESACTIVA. Si se utilizan enteros
con signo o de doble precisión, el signo del resultado dependerá de los signos de las entradas I1 e
I2.
Habilitar ADD OK
INT Tipo de
datos
Entrada 1 I1 Q Salida
Entrada 2 I2
Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o referencia para el primer valor utilizado en la operación.
(I1 está en el lado izquierdo de la ecuación matemática, como en I1 — I2).
I2 I2 contiene una constante o referencia para el segundo valor utilizado en la operación.
(I1 está en el lado derecho de la ecuación matemática, como en I1 — I2).
ok La salida ok se activa cuando la función se ejecuta sin desbordamiento, a no ser que se
produzca una operación no válida.
Q La salida Q contiene el resultado de la operación.
Nota
El tipo por defecto es INT para operandos de 16 bits u operandos de registro
simple. En Logicmaster, pulse F10 para cambiar la selección de los Tipos a
DINT, palabra doble de 32 bits, o REAL (sólo para las CPUs de las series 35x,
36x y 37x). Los valores INT del PLC ocupan un registro simple de 16 bits, %R,
%AI o %AQ. Los valores DINT requieren dos registros consecutivos con los 16
bits bajos en la primera palabra y los 16 bits altos con el signo en la segunda
palabra. Los valores de tipo REAL, en la CPU de las series 35x y 36x (versión
9.00 o posterior) y todas las versiones de la CPU352 y CPU37x, ocupan también
un registro doble de 32 bits con el signo en el bit alto seguido del exponente y la
mantisa.
%I0001 %Q0001
ADD
INT
%R0002 I1 Q %R0002
+00095 +00095
CONST I2
+00001
6-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6
%I0001 %M0001
%M0001 %Q0001
ADD
INT
%R0002 I1 Q %R0002
+00095 +00095
CONST I2
+00001
ADD DINT Q(32 bit) = I1(32 bit) + I2(32 bit) Número de base 10 de 8 dígitos con signo
ADD REAL* Q(32 bit) = I1(32 bit) + I2(32 bit) Número de base 10 de 7 dígitos, signo y decimal
SUB INT Q(16 bit) = I1(16 bit) – I2(16 bit) Número de base 10 de 5 dígitos con signo
SUB DINT Q(32 bit) = I1(32 bit) – I2(32 bit) Número de base 10 de 8 dígitos con signo
SUB REAL* Q(32 bit) = I1(32 bit) – I2(32 bit) Número de base 10 de 7 dígitos, signo y decimal
MUL INT Q(16 bit) = I1(16 bit) * I2(16 bit) Número de base 10 de 5 dígitos con signo
MUL DINT Q(32 bit) = I1(32 bit) * I2(32 bit) Número de base 10 de 8 dígitos con signo
MUL REAL* Q(32 bit) = I1(32 bit) * I2(32 bit) Número de base 10 de 7 dígitos, signo y decimal
DIV INT Q(16 bit) = I1(16 bit) / I2(16 bit) Número de base 10 de 5 dígitos con signo
DIV DINT Q(32 bit) = I1(32 bit) / I2(32 bit) Número de base 10 de 8 dígitos con signo
DIV REAL* Q(32 bit) = I1(32 bit) / I2(32 bit) Número de base 10 de 7 dígitos, signo y decimal
* Sólo CPUs de las series 35x y 36x, versión 9 o posterior, y todas las versiones de la CPU352 y CPU37x.
Nota
Los tipos de datos de entrada y salida deben de ser iguales en las funciones
matemáticas. Las funciones MUL y DIV no soportan un modo mixto como lo
hacen los PLCs de las Series 90-70. Por ejemplo, la MUL INT de dos entradas de
16 bits produce un producto de 16 bits, no un producto de 32 bits. Si se utiliza
MUL DINT para un producto de 32 bits ambas entradas deberán ser de 32 bits.
La DIV INT divide una I1 de 16 bits entre una I2 de 16 bits para obtener un
resultado de 16 bits, mientras que DIV DINT divide una I1 de 32 bits entre una
I2 de 32 bits para obtener un resultado de 32 bits.
Tenga cuidado para evitar los desbordamientos cuando utilice las funciones MUL y DIV. Si debe
convertir valores INT a DINT, recuerde que la CPU utiliza el complemento a 2 estándar con el
signo extendido al bit más alto de la segunda palabra (la más significativa). Debe comprobar el
signo de la palabra de 16 bits menor y extenderlo a la segunda palabra de 16 bits. Si el bit más
significativo de una palabra baja INT de 16 bits vale 0 (indicado valor positivo), mueva un 0 a la
segunda palabra. Si el bit más significativo de una palabra de 16 bits es –1 (indicando un valor
negativo), mueva un –1 o 0FFFFh (hexadecimal) a la segunda palabra. La conversión de DINT a
INT es más fácil ya que la palabra de 16 bits bajos (primer registro) es la parte INT de una palabra
DINT de 32 bits. Los 16 bits superiores o la segunda palabra deben tener un valor 0 (positivo) o –1
(negativo) o el DINT será excesivamente grande para convertirlo a 16 bits.
Ejemplo
Una aplicación común es convertir valores de entrada analógicos con una operación MUL seguida
de una operación DIV y posiblemente de una operación ADD. Una entrada analógica de 0 a ± 10
voltios colocará valores de 0 a ± 32,000 en su correspondiente registro de entrada %AI.
Multiplicando este registro de entrada mediante una función INT MUL se obtendrá como resultado
un desbordamiento, ya que una instrucción de tipo INT tiene un intervalo de entrada y salida de
32,767 hasta –32,768. Si se utiliza el valor %AI como una entrada para la función MUL DINT
tampoco será correcto, ya que la I1 de 32 bits combinará 2 entradas analógicas al mismo tiempo.
Para resolver este problema, se puede mover la entrada analógica a la palabra inferior de un registro
doble, entonces comprobar el signo y poner el segundo registro a 0 si el signo es positivo o a –1 si
es negativo. A continuación utilice el doble registro que acaba de crear con una función MUL
DINT que proporciona un resultado de 32 bits, y que puede ser utilizado con la siguiente función
DINT DIV.
Por ejemplo, la siguiente lógica puede emplearse para convertir una %AI1 de entrada de ± 10
voltios a ± 25000 unidades de ingeniería en %R5.
6-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6
Un modo alternativo, pero menos preciso, de programar este circuito utilizando las instrucciones
INT conlleva colocar primeramente la instrucción DIV, seguida de la instrucción MUL. El valor
de I2 para la instrucción DIV sería 32, y el valor de 12 para la instrucción MUL sería 25. Esto
mantiene la proporción de conversión del circuito anterior y mantiene los valores dentro del
intervalo de trabajo de las instrucciones del tipo INT. Sin embargo, la instrucción DIV desprecia
inherentemente cualquier valor de resto, de modo que cuando la salida DIV es multiplicada por la
instrucción MUL, el error introducido por el resto despreciado se multiplica. El porcentaje de error
es no lineal en todo el intervalo de valores de entrada y es mayor a menores valores de entrada.
En contraste, en el ejemplo superior, los resultados son más precisos ya que la operación DIV se
efectúa en último lugar, de modo que el resto despreciado no se multiplica. Si se necesita una
exactitud aún mayor, sustituya las instrucciones matemáticas de tipo REAL de este ejemplo, para
que el resto no sea despreciado.
Tipo de Descripción
datos
INT Entero con signo
DINT Entero con signo de doble precisión.
El tipo de datos por defecto es el entero con signo; sin embargo, puede cambiarse tras seleccionar
la función. Para más información acerca de los tipos de datos, consulte el Capítulo 2, Sección 2,
“Organización del programa y datos/referencias del usuario.”
Cuando la función recibe flujo de energía, divide el parámetro de entrada I1 entre el parámetro de
entrada I2. Estos parámetros deben ser del mismo tipo de datos. La salida Q se calcula utilizando la
fórmula:
Q = I1 - ([I1 DIV I2] * I2)
donde DIV produce un número entero. La salida Q es del mismo tipo de datos que los parámetros
de entrada I1 y I2.
OK está siempre ACTIVADA cuando la función recibe flujo de energía, a no ser que se intente
dividir entre cero. En tal caso, se DESACTIVA.
Habilitar MOD OK
INT Tipo de
datos
Entrada 1 I1 Q Salida
Entrada 2 I2
Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o una referencia para el valor que debe dividirse entre I2.
I2 I2 contiene una constante o referencia para el valor que debe dividirse entre I1.
OK La salida ok se activa cuando la función se ejecuta sin desbordamiento.
Q La salida Q contiene el resto, si lo hay, que resulta de dividir I1 entre I2. Si el valor en
I2 es un múltiplo par de I1, la salida Q será cero, indicando que no hay resto.
6-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6
Ejemplo
En el siguiente ejemplo, se están llenando automáticamente cajas con piezas. Una caja contiene
seis piezas. Este circuito determina el estado de la caja que está siendo actualmente llenada
utilizando la división de módulo. Cuando está habilitada, la función MOD divide el registro
(PIEZAS) que contiene el número de piezas producidas, entre seis. La salida (ESTADO) de la
instrucción MOD indica cuántas piezas (entre 1 y 5) han sido cargadas en la caja actual. Cuando la
caja actual está llena, la salida en Q se iguala a cero; Si la caja actual está sólo parcialmente llena,
la salida indicará el número de piezas que hay ya en la caja. Los valores del ejemplo muestran que
se han producido un total de 17 piezas y que la caja actual contiene cinco piezas. (Las otras 12
piezas llenan dos cajas.)
%I0001
MOD
INT
PIEZAS I1 Q ESTADO
+0017 +0005
CONST I2
+0006
Para determinar el número de cajas llenas, se puede usar la instrucción DIV en el siguiente circuito.
%I0001
DIV
INT
PIEZAS I1 Q CAJAS
+0017 +0002
CONST I2
+0006
Un posible problema con estos circuitos es que el registro denominado con el alias PIEZAS puede
contener sólo un máximo de 32,767 unidades. Si se desea realizar un cómputo mayor, se necesitará
lógica adicional para (1) reinicializar el registro PIEZAS antes de que alcance su valor máximo, (2)
para detectar el número de cajas llenas antes de reinicializar el registro PIEZAS y (3) para
reinicializar el registro PIEZAS cuando el registro ESTADO es cero, de modo que el cómputo
mantenga la exactitud.
Para los tipos de datos INT y DINT, sólo se obtendrá la parte entera del número resultante de la
raíz cuadrada. La parte fraccionaria se elimina. Por ejemplo, la raíz cuadrada de 2 ó 3 será 1, y la
raíz cuadrada de 5, 6, 7 ó 8 será 2.
Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9.00 o posterior, y en todas las versiones de la CPU352 y CPU37X.
El tipo de datos por defecto es el entero con signo; sin embargo, puede cambiarse tras seleccionar
la función. Para más información acerca de los tipos de datos, consulte el Capítulo 2, Sección 2,
“Organización del programa y datos/referencias del usuario.”
OK se ACTIVA si la función se realiza sin desbordamiento. Si se realiza alguna de las siguientes
operaciones no válidas, OK se DESACTIVA:
• IN < 0
• IN es un NaN (No un Número)
Habilitar SQRT OK
INT Tipo de
datos
Entrada IN Q Salida
Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
IN IN contiene una constante o una referencia para el valor cuya raíz cuadrada se desea
calcular. Si IN es menor que cero, la función no pasará flujo de energía.
ok La salida ok se activa cuando la función se ejecuta sin desbordamiento, a no ser que se
produzca una operación no válida.
Q La salida Q contiene la raíz cuadrada de IN. Sin embargo, para INT y DINT, sólo se
retendrá la parte entera del número; las partes fraccionarias serán eliminadas.
6-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6
Ejemplos
En este ejemplo, la raíz cuadrada del número entero situada en %R0008 se coloca en el registro
%R0009 siempre que %I0001 esté ACTIVADO.
%I0001
SQRT OK
INT
%R0008 IN Q %R0009
+00019 +00004
Como alternativa al ejemplo anterior, la misma función puede realizarse con una instrucción SQRT
de tipo REAL, que proporciona un resultado más exacto como se muestra en la siguiente figura.
%I0001
SQRT OK
REAL
%R0008 IN Q %R0009
+19.00000 +4.358899
π π
ASIN (IN) = ≤ Q ≤
2 2
ACOS (IN) = 0 ≤ Q ≤ π
π π
ATAN (IN) = ≤ Q ≤
2 2
_____
| |
(habilitar) —| SIN_|— (ok)
| |
| REAL|
| |
(parámetro de entrada IN) —|IN Q|— (parámetro de salida Q)
|_____|
Nota
Las funciones TRIG sólo están disponibles en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y CPU37x.
6-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6
Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
IN IN contiene el valor real constante o de referencia al que debe aplicarse la función.
ok La salida ok se activa cuando la función se ejecuta sin desbordamiento,
a no ser que se produzca una operación no válida y/o IN sea un NaN.
Q La salida Q contiene un valor trigonométrico de IN.
Ejemplo
En este ejemplo, el coseno del valor almacenado en %R0001 se coloca en %R0033.
| _____
|ALW_ON | |
|——] [—————————| COS_|—
| | |
| | REAL|
| | |
| %R0001—|IN Q|—%R0033
| | |
| +3.141500|_____| -1.000000
|
Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
IN IN contiene el valor al que debe aplicarse la operación.
ok La salida ok se activa cuando la función se ejecuta sin desbordamiento, a no ser que se
produzca una operación no válida y/o IN sea NaN o negativa.
Q La salida Q contiene el valor logarítmico/exponencial de IN.
Nota
Las funciones LOG, LN, EXP y EXPT sólo están disponibles en las CPUs de las
series 35x y 36x, versión 9 o posterior, y en todas las versiones de la CPU352 y
CPU37x.
6-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6
Nota
Cuando el valor de entrada, IN, para la función EXP es infinito negativo (-∞), la
función devuelve el valor cero, como se esperaba. En tal caso,en la CPU352 la
función no pasa flujo de energía. Para todas las demás CPUs 90-30, la función
pasa flujo de energía, aunque la salida sea cero. (El valor -∞ resulta de dividir
un valor negativo entre cero. En la pantalla de Logicmaster aparecerá como
−DESBORDAMIENTO.)
Ejemplo
En este ejemplo, el valor de %AI001, +3.000000, se eleva a la potencia de +2.500000 y el
resultado, +15.58846, se coloca en %R0001.
| _____
|ALW_ON | |
|——] [—————————|EXPT_|—
| | |
| | REAL|
| | |
| | |
| %AI0001—|I1 Q|—%R0001
| +3.000000 | | +15.58846
| | |
| | |
| CONST —|I2 |
| +2.500000 |_____|
|
Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
IN IN contiene el valor al que debe aplicarse la operación.
ok La salida ok se activa cuando la función se ejecuta sin desbordamiento, a no ser de que IN
sea una NaN.
Q La salida Q contiene el valor convertido de IN.
Nota
Las funciones de conversión a radianes sólo están disponibles en las CPUs de las
series 35x y 36x, versión 9 o posterior, y en todas las versiones de la CPU352 y
CPU37x.
6-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6
Ejemplo
En el ejemplo, +1500 se convierte a DEG y se coloca en %R0001.
| _____
|ALW_ON | |
|——] [———————————————————————————| RAD_|
| | |
| | TO_|
| | |
| | DEG |
| CONST | |
| +1500.000 —|IN Q|— %R0001
| |_____| 85943.66
Las funciones relacionales se utilizan para determinar la relación de dos valores. Este capítulo
describe las siguientes funciones relacionales:
Abreviaturas Función Descripción Página
EQ Igual que Comprueba si existe igualdad entre dos números 7-2
NE Distinto de Comprueba si existe desigualdad entre dos números 7-2
GT Mayor que Comprueba si un número es mayor que otro 7-2
GE Mayor o igual Comprueba si un número es menor o igual que otro. 7-2
que
LT Menor que Comprueba si un número es menor que otro 7-2
LE Menor o igual Comprueba si un número es menor o igual que otro. 7-2
que
RANGE Intervalo Determina si un número se encuentra dentro de un 7-4
intervalo especificado (disponible para CPUs versión
4.5 o superior).
GFK-0467M-SP 7-1
7
Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y CPU37X. El bit
del sistema %S0020 se ACTIVA cuando una función relacional que utiliza datos
reales se ejecuta satisfactoriamente. Se borra cuando una de las entradas es NaN
(no un número). El bloque de función de intervalo no acepta el tipo REAL.
El tipo de datos por defecto es el entero con signo. Para comparar enteros con signo, enteros con
signo de doble precisión o números reales seleccione el nuevo tipo de datos tras haber seleccionado
la función relacional. Para comparar datos de otros tipos o de dos tipos diferentes, utilice
primeramente la función de conversión correspondiente (descrita en el Capítulo 11, “Funciones de
conversión”) para cambiar los datos a uno de los tipos soportados.
Si los parámetros de entrada I1 e I2 coinciden con la relación especificada, la salida Q recibe flujo
de energía y se ACTIVA (1); de no ser así, se DESACTIVA (0).
_____
| |
(habilitar) —| EQ_ |
| |
| INT |
| |
(parámetro de entrada I1) —|I1 Q|— (parámetro de salida Q)
| |
| |
(parámetro de entrada I2) —|I2 |
|_____|
Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o referencia para el primer valor que se desea comparar.
(I1 está en el lado izquierdo de la ecuación relacional, como en I1 < I2).
I2 I2 contiene una constante o referencia para el segundo valor que se desea comparar.
(I1 está en el lado derecho de la ecuación relacional, como en I1 < I2).
Q La salida Q se activa cuando I1 e I2 cumplen la relación especificada.
Nota
I1 e I2 deben ser números válidos, es decir, no pueden ser NaN (No un Número).
7-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
7
Descripción ampliada
Función Descripción
Igual que Cuando está habilitada, si el valor en la entrada I1 es igual al valor en la entrada I2, la
salida Q se activa.
Distinto de Cuando está habilitada, si el valor en la entrada I1 NO es igual al valor en la entrada I2,
la salida Q se activa.
Mayor que Cuando está habilitada, si el valor en la entrada I1 es mayor que el valor en la entrada I2,
la salida Q se activa.
Mayor o igual Cuando está habilitada, si el valor en la entrada I1 es mayor o igual que el valor en la
que entrada I2, la salida Q se activa.
Menor que Cuando está habilitada, si el valor en la entrada I1 es menor que el valor en la entrada I2,
la salida Q se activa.
Menor o igual Cuando está habilitada, si el valor en la entrada I1 es menor o igual que el valor en la
que entrada I2, la salida Q se activa.
Ejemplo
En el siguiente ejemplo, dos enteros con signo de doble precisión, %R00100/101 y %R00102/103,
son comparados siempre que el contacto habilitar %I0001 esté activado. Si el valor en la entrada I1
es menor o igual que el valor en la entrada I2, la bobina %Q00002 se activará. En el siguiente
ejemplo, la bobina %Q00002 está desactivada, ya que I1 es mayor que I2.
| _____
|%I0001 | |
|——| |——————————| LE_ |
| | |
| | DINT|
| %R00100 | | %Q00002
| +0000134689—|I1 Q|————————————————————————————————————————————————————( )—
| | |
| %R00102 | |
| +0000134600—|I2 |
| |_____|
|
Nota
Esta función sólo está disponible para las CPUs versión 4.41 o posteriores.
La función RANGE opera en estos tipos de datos (el tipo REAL no es soportado para la función
RANGE):
Tipo de Descripción
datos
INT Entero con signo
DINT Entero con signo de doble precisión.
WORD Tipo de datos palabra.
El tipo de datos por defecto es el entero con signo; . sin embargo, puede cambiarse tras seleccionar
la función. Para más información acerca de los tipos de datos, consulte el Capítulo 2, Sección 2,
“Organización del programa y datos/referencias del usuario.”
Cuando la función está habilitada, el bloque de función RANGE compara el valor en el parámetro
de entrada IN con el intervalo especificado por los parámetros límite L1 y L2. Cuando el valor está
dentro del intervalo especificado por L1 y L2, inclusive, el parámetro de salida Q se ACTIVA (1).
De lo contrario, se DESACTIVA (0).
_____
| |
(habilitar) –|RANGE|
| |
| INT |
| |
(parámetro límite L1) –|L1 Q|– (parámetro de salida Q)
| |
(parámetro límite L2) –|L2 |
| |
(valor a comparar) –|IN |
|_____|
Nota
Los parámetros límite L1 y L2 representan los puntos extremos del intervalo. No
hay ninguna connotación de mínimo/máximo o alto/bajo asignada a estos
parámetros. De este modo, un intervalo deseado de 0 hasta 100 podría
especificarse asignando 0 a L1 y 100 a L2, o bien 0 a L2 y 100 a L1.
7-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
7
Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
L1 L1 contiene el punto inicial del intervalo.
L2 L2 contiene el punto final del intervalo.
IN IN contiene el valor que debe compararse con el intervalo especificado por L1 y L2.
Q La salida Q se activa cuando el valor en IN está dentro del intervalo especificado por L1
y L2, inclusive.
Ejemplo 1
En el siguiente ejemplo, se comprueba si %AI0001 está en el intervalo especificado por dos
constantes, 0 y 100.
| _____
|%I0001 | |
|——| |———+RANGE|
| | INT |
| | | %Q0002
| 100 —+L1 Q+—————————————————————————————————————————————————————————( )—
| | |
| 0 —+L2 |
| | |
|%AI0001—+IN |
| |_____|
|
Ejemplo 2
En el siguiente ejemplo, se comprueba si %AI0001 está en el intervalo especificado por dos
valores registrados.
| _____
|%I0001 | |
|——| |———+RANGE|
| | INT |
| | | %Q0002
|%R0001 —+L1 Q|—————————————————————————————————————————————————————————( )—
| | |
|%R0002 —+L2 |
| | |
|%AI0001—+IN |
| |_____|
|
7-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Capítulo Funciones de operaciones con bits
8
%R0102 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33
↑
(MSB)
Nota
El solapamiento de los rangos de las direcciones de las referencias de las entradas
y salidas puede producir resultados inesperados.
GFK-0467M-SP 8-1
8
8-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
AND y OR (WORD)
En cada exploración que se recibe energía, una función Y lógica (AND) u O lógica (OR) compara
el estado de cada bit de la cadena de bits I1 con el bit correspondiente en la cadena de bits I2,
comenzando por el bit menos significativo en cada una de ellas.
Si ambos bits comparados por la función Y lógica valen 1, se coloca un 1 en la posición
correspondiente de la cadena de salida Q. Si cualquiera o ambos bits valen 0, entonces se coloca
un 0 en la cadena Q en dicha posición.
La AND puede utilizarse para crear máscaras o pantallas en las cuales se permite el paso de sólo
determinados bits (los opuestos a 1 en la máscara), y todos los demás se configuran a 0. La función
puede utilizarse también para borrar una zona de la memoria de palabras ejecutando una función
AND de los bits de dicha zona con otra cadena de bits que se sepa que contiene todo ceros. Las
cadenas de bits I1 y I2 bit especificadas pueden solaparse.
Si cualquiera de los dos bits examinados por la función OR valen 1, se coloca un 1 en la posición
correspondiente de la cadena de salida Q. Si ambos bits valen 0, entonces se coloca un 0 en la
cadena Q en dicha posición.
La función OR es útil para combinar cadenas y para controlar numerosas salidas mediante un solo
bloque de función. Esta función es equivalente a dos contactos de relé en paralelo para cada
posición de bit en la cadena. Puede emplearse para accionar lámparas indicadoras directamente
desde estados de entradas o para superponer condiciones de parpadeo en indicadores de estado.
La función pasa el flujo de energía hacia la derecha siempre que se recibe energía.
_____
| |
(habilitar) —| AND_|— (ok)
| |
| WORD|
| |
(parámetro de entrada I1) —|I1 Q|— (parámetro de salida Q)
| |
| |
| |
(parámetro de entrada I2) —|I2 |
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o referencia para la primera palabra de la primera cadena.
I2 I1 contiene una constante o referencia para la primera palabra de la segunda cadena.
ok La salida ok se activa siempre que habilitar esté activada.
Q La salida Q contiene el resultado de la operación.
Ejemplo
En este ejemplo, siempre que se activa la entrada %I0001 se examinan las cadenas de 16 bits
representadas por los alias WORD1 y WORD2. Los resultados de la función Y lógica se colocan
en la cadena de salida RESULT.
| _____
|%I0001 | |
|——| |———| AND_|—
| | WORD|
| | |
| WORD1 —|I1 Q|—RESULT
| | |
| | |
| | |
| | |
| WORD2 —|I2 |
| |_____|
|
WORD1 (I1) 0 0 0 1 1 1 1 1 1 1 0 0 1 0 0 0
WORD2 (I2) 1 1 0 1 1 1 0 0 0 0 0 0 1 1 1 1
RESULT (Q) 0 0 0 1 1 1 0 0 0 0 0 0 1 0 0 0
8-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
XOR (WORD)
La función O exclusiva (XOR) se utiliza para comparar cada bit de la cadena de bit de la entrada I1
con el bit correspondiente en la cadena de bits de la entrada I2. Si los bits son diferentes, se coloca
un 1 en la posición correspondiente de la cadena de bits de salida.
La función O exclusiva resulta práctica para comparar con rapidez dos cadenas de bits o para
destellar un grupo de bits a un ritmo de un estado ACTIVADO por cada dos exploraciones.
En cada exploración en que XOR está habilitada, la función compara cada bit de la cadena I1 con el
bit correspondiente de la cadena I2, comenzando por el bit menos significativo de cada cadena. En
una comparación, si sólo uno es 1, entonces se coloca un 1 en la posición correspondiente en la
cadena de bits Q. La función XOR pasa el flujo de energía hacia la derecha siempre que se recibe
energía.
Si la cadena I2 y la cadena de salida comienzan por idéntica referencia, un 1 colocado en la cadena
I1 provocará que el bit correspondiente en la cadena I2 alterne entre 0 y 1, cambiando de estado en
cada exploración, siempre que se reciba energía. Pueden programarse ciclos más largos
conmutando la entrada habilitar a dos veces la frecuencia de intermitencia; para esta aplicación, la
entrada habilitar deberá activarse durante una exploración (utilice un contacto del tipo bobina de
una sola ejecución o un circuito de temporizador autorreiniciable).
_____
| |
(habilitar) —| XOR_|— (ok)
| |
| WORD|
| |
(parámetro de entrada I1) —|I1 Q|— (parámetro de salida Q)
| |
| |
| |
| |
(parámetro de entrada I2) —|I2 |
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o referencia para la primera palabra a la que se va a aplicar
XOR.
I2 I1 contiene una constante o referencia para la segunda palabra a la que se va a aplicar
XOR.
ok La salida ok se activa siempre que habilitar esté activada.
Q La salida Q contiene el resultado de aplicar la función XOR a I1 con I2.
|%M0001 | |
|——| |———| XOR_|
| | WORD|
| | |
| INTER.—|I1 Q|—ESTADO
| | |
| | |
| | |
| | |
| REFER —|I2 |
| |_____|
|
Posición de bit 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
I1 0 1 0 1 1 1 1 0 1 1 0 0 0 0 0 0
(INTERRUP-
TOR)
I2 (REFER) 0 0 0 1 1 1 1 1 1 1 0 0 1 0 0 0
Q (ESTADO) 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0
8-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
Los datos en ESTADO se pueden usar como una entrada para la función No Igual (NE), que
comparará la palabra de alias ESTADO con una constante cero. Si ESTADO no es igual a cero, la
función NE activa su salida, indicando la presencia de una alarma.
Los bits en ESTADO que son iguales a la lógica 1 pueden ser identificados con la función BPOS
(Posición de bit), que buscará los bits en ESTADO y notificará la posición (un número entre 1 y
16) del primer bit (comenzando por el bit 1) que encuentre en la lógica 1. En el ejemplo anterior, la
función BPOS dará como resultado el número 4, indicando que el cuarto bit está en la lógica 1.
Para comprobar más de un bit, se puede almacenar un registro de 4 bits, utilice la función BCLR
(Borrar bits) para borrar el bit 4, repita entonces el test BPOS para encontrar el siguiente bit igual a
la lógica 1 (bit 9 en el ejemplo anterior). Este proceso se puede repetir hasta que no se encuentren
más bits distintos de cero. Observe que las funciones BCLR y BPOS se exponen en detalle en otro
punto de este capítulo.
NOT (WORD)
La función inversión lógica NOT se utiliza para poner el estado de cada bit de la cadena de bits de
salida Q al opuesto del estado del bit correspondiente de la cadena de bits I1.
La función NOT se ejecuta y pasa flujo de energía en cada exploración en que su entrada habilitar
esté activada.
_____
| |
(habilitar) —| NOT_|— (ok)
| |
| WORD|
| |
(parámetro de entrada I1) —|I1 Q|— (parámetro de salida Q)
| |
| |
| |
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o referencia para la palabra que se va a negar.
ok La salida ok se activa siempre que habilitar esté activada.
Q La salida Q contiene la NOT (negación) de I1.
Ejemplo
En el siguiente ejemplo, siempre que la entrada %I0001 esté activada, la cadena de bits
representada por el alias NOTCAT se coloca en sentido inverso a la cadena de bits CAT, como se
muestra en la tabla de decisión lógica inferior.
| _____
|%I0001 | |
|——| |———| NOT_|—
| | WORD|
| | |
| CAT —|I1 Q|—NOTCAT
| | |
| | |
| | |
| |_____|
|
CAT 1 1 0 1 0 1 0 0 1 1 0 1 0 0 0 1
NOTCAT 0 0 1 0 1 0 1 1 0 0 1 0 1 1 1 0
8-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
La función desplazar hacia la derecha (SHR) se emplea para desplazar todos los bits de una palabra
o grupo de palabras un número especificado de posiciones hacia la derecha. Cuando se produce el
desplazamiento, el número especificado de bits se desplaza hacia afuera de la cadena de salida,
hacia la derecha. A medida que los bits se desplazan hacia afuera del extremo inferior de la
cadena, en el extremo superior se desplaza idéntico número de bits.
MSB LSB
→B1 1 1 0 1 1 1 1 1 1 1 0 0 1 0 0 0 →B2
Para cualquiera de estas funciones puede seleccionarse una longitud de cadena de 1 hasta 256
palabras. Si el número de bits a desplazar (N) es mayor que el número de bits en la matriz (LEN) *
16, o si el número de bits a desplazar es cero, entonces la matriz (Q) se llena con copias del bit de
entrada (B1), y el bit de entrada se copia en la salida B2. Si el número de bits que debe desplazarse
es cero, no se realiza ningún desplazamiento; el bloque de entradas se copia en el bloque de salidas;
y el bit de entrada B1 se copia en la salida B2.
Los bits que se van a desplazar al comienzo de la cadena se especifican mediante un parámetro de
entrada B1, que requiere un contacto a la línea de alimentación. Si como número de bit para
desplazamiento se ha especificado una longitud mayor que 1, cada uno de los bits se rellena de
idéntico valor (0 ó 1) de B1. La entrada B1 se puede controlar mediante
• Un contacto ALW_ON (%S07), que mantiene B1 permanentemente en la lógica 1.
• Un contacto ALW_OFF (%S06), que mantiene B1 permanentemente en la lógica 0.
• Un contacto de una bobina interna como %M o %Q que le permite cambiar el valor.
• Un contacto A %I que le permite cambiar el valor desde un contacto de entrada.
La función SHL o SHR pasa el flujo de energía hacia la derecha, a no ser que el número de bits
especificado para desplazar sea cero.
La salida Q es la copia desplazada de la cadena de entrada. Si desea desplazar la cadena de
entrada, el parámetro de salida Q debe utilizarse en idéntica posición de memoria que el parámetro
de entrada IN. Las instrucciones SHL/SHR se ejecutan en cada exploración en que su entrada
habilitar esté activada. La salida B2 mantiene el valor del último bit desplazado afuera; por
ejemplo, si cuatro bits han sido desplazados, B2 contendrá el valor (1 ó 0) del cuarto bit
desplazado.
_____
| |
(habilitar) —| SHL_|
| |
| WORD|
| |
(palabras a desplazar) |IN B2|— (último bit desplazado afuera)
| LEN |
|00001|
| |
| |
(número de bits) —|N Q|— (parámetro de salida Q)
| |
(bit desplazado adentro) —|B1 |
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando habilitar es 1, se ejecutará el desplazamiento.
IN IN contiene la dirección de la primera palabra a desplazar.
N N contiene el número de posiciones (bits) que debe desplazarse el bloque.
B1 B1 contiene el valor del bit (0 ó 1) que debe desplazarse hacia el bloque.
B2 B2 contiene el valor (0 ó 1) del último bit desplazado fuera del bloque.
Q La salida Q contiene la primera palabra del bloque desplazado.
LEN LEN es el número de palabras (1 – 256) en el bloque a desplazar.
Ejemplo
En el siguiente ejemplo, cuando la entrada %M0001 está activada, la función SHL hace una copia
de la cadena de bits en IN (de alias WORD1). A continuación, en la copia, desplaza todos los bits a
la izquierda 8 posiciones de bit (especificado por el valor en N). Los bits en las posiciones 9-16
son desplazados fuera (desechados), y los bits que estaban en las posiciones 1-8 ocupan ahora las
posiciones de bit 9-16. Las posiciones de bit 1-8, que estaban “desocupadas” cuando los bits 1-8
fueron desplazados, están llenos de unos ya que, en este ejemplo, el contacto %M0002 está cerrado,
haciendo la entrada B1 igual a la lógica 1. Por último, la palabra desplazada/llenada se escribe en
la dirección en la salida Q (de alias WORD2). La WORD1 en IN no ha cambiado. La salida B2 es
igual a cero ya que el último bit desplazado fuera tenía la lógica cero (el bit que ocupaba la
posición 9), y la bobina %M0003 está activada ya que la función se ha ejecutado correctamente y
ha producido, por tanto, flujo de energía a su salida OK.
%M0001 %M0003
OK
SHL_
WORD
WORD1 IN B2 OUTBIT
LEN
00001 Pos. bit 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
LONG.
+00008 N Q WORD2 WORD1 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1
%M0002
B1
WORD2 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
8-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la rotación.
IN IN contiene la dirección de la primera palabra a rotar.
N N contiene el número de posiciones (bits) que debe rotarse el bloque.
ok La salida ok recibe energía cuando la función de rotación está habilitada y la longitud de
rotación (en N) es mayor que cero pero no es mayor que el tamaño del bloque.
Q La salida Q contiene la primera palabra del bloque rotado.
LEN LEN es el número de palabras (1 – 256) en el bloque a rotar.
Ejemplo
En el siguiente ejemplo, siempre que la entrada habilitar %I0001 esté activada, la función ROL
hace una copia de la cadena de entrada en IN. A continuación, en la copia, rota la cadena de bits de
entrada 3 bits (especificados por el valor de la entrada N) y coloca el resultado en %R0002. Tras la
ejecución de esta función, la cadena de bits de entrada %R0001 no ha cambiado. Sin embargo, si se
desea rotar la cadena de entrada, se debe utilizar la misma dirección de referencia para IN y Q.
| _____
|%I0001 | |
|——| |———| ROL_|—
| | WORD|
| | |
| %R0001—|IN Q|—%R0002
| | |
| | LEN |
| |00001|
| | |
| CONST —|N |
| +00003 |_____|
|
%R0001:
MSB LSB
1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 ←
←
MSB LSB
1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1
8-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
BTST (WORD)
La función test de bit (BTST) se usa para verificar un bit dentro de una cadena de bits, para
determinar si dicho bit vale actualmente 1 ó 0. El resultado del test se coloca en la salida Q.
En cada barrido en que se recibe energía, la función BTST pone la salida Q en el mismo estado que
el bit especificado. Si para especificar el número de bit se emplea un registro en lugar de una
constante, el mismo bloque de función puede realizar un test de diferentes bits en barridos
sucesivos. Si el valor de BIT está fuera del intervalo especificado por la siguiente fórmula,
entonces Q se DESACTIVA.
Fórmula: 1 ≤ BIT ≤ (16 * LEN)
Se puede seleccionar una longitud de cadena de 1 hasta 256 palabras.
_____
| |
(habilitar) —| BIT_|
| |
|TEST_|
| WORD|
| |
(palabra 1 a verificar) —|IN Q|— (parámetro de salida Q)
| LEN |
|00001|
| |
(número de bits de IN) —|BIT |
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta el test de bit.
IN IN contiene la primera palabra de datos a que debe aplicarse la operación.
Bit BIT contiene el número de bits de IN que debe verificarse. El intervalo válido es (1 ≤ BIT
≤ (16 * LEN) ).
Q La salida Q está activada si el bit verificado valía 1.
LEN LEN es el número de palabras en el bloque a verificar.
Nota
Cuando se utilizan las funciones de test de bits, configuración de bits, borrar
bits o posicionamiento de bits, los bits están numerados de 1 hasta 16, NO de 0
hasta 15.
Ejemplo
En el siguiente ejemplo, siempre que la entrada habilitar %M0001 esté activada, se verifica el bit
14 en la palabra %R0001 (el bit 14 está especificado por el valor en %R0002). Dado que el bit 14
es cero en el valor mostrado para %R0001 (5C7C), la salida Q no se activa. Observe que esta
función sólo puede ser del tipo WORD; por tanto, cualquier dirección de la memoria usada en IN
aparecerá en la pantalla de Logicmaster en formato hexadecimal. Sin embargo, el valor en BIT
aparecerá en formato de entero independientemente de si se usa una constante o una dirección de
memoria.
%M0001
BIT_
TEST_
WORD %M0003
%R0001 IN Q
5C7C LEN
00001 Núm. de bit 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
%R0002 BIT %R0001 0 1 0 1 1 1 0 0 0 1 1 1 1 1 0 0
+00014
8-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
_____
| |
(habilitar) —| BIT_|— (ok)
| |
| SET_|
| WORD|
| |
(primera palabra) —|IN |
| |
| LEN |
|00001|
| |
(número de bits en IN) —|BIT |
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la operación de bits.
IN IN contiene la dirección de la primera palabra de la cadena de bits con la que se va a
operar.
Bit BIT contiene el número de bit de IN que debe activarse o borrarse.
El intervalo válido es (1 ≤ BIT ≤ (16 * LEN) ).
ok La salida ok está activada siempre que habilitar esté activada, a menos que el valor en la
entrada BIT esté fuera del intervalo válido.
LEN LEN es el número de palabras en la cadena de bits cuya dirección inicial está
configurada en IN.
Nota
Cuando se utilizan las funciones de test de bits, configuración de bits, borrar
bits o posicionamiento de bits, los bits están numerados de 1 hasta 16, NO de 0
hasta 15.
Ejemplos
Observe que las funciones activar bit y borrar bit sólo pueden ser del tipo WORD; por tanto,
cualquier dirección de la memoria usada en IN aparecerá en la pantalla de Logicmaster en formato
hexadecimal. Sin embargo, el valor en BIT aparecerá en formato de entero tanto si se usa una
constante, como una dirección de memoria.
En el siguiente ejemplo, cuando la entrada %M0001 está activada, el bit 12 (especificado en la
entrada BIT) de la cadena que comienza en la referencia %R0001 (la dirección en la entrada IN) se
pone a 1 (activado).
%M0001 %M0003
BIT_
SET_
WORD
%R0001 IN
0800 LEN
00001 Núm. de bit 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
%R0002 BIT %R0001 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
+00012
En el siguiente ejemplo, cuando la entrada %M0001 está activada, el bit 5 (el valor de la entrada
BIT) de la cadena que comienza en la referencia %R0001 (la dirección en la entrada IN) se pone a
0 (borrado).
%M0001 %M0003
BIT_
CLR_
WORD
%R0001 IN
7FEF LEN
00001 Núm. de bit 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
%R0002 BIT %R0001 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1
+00005
8-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
BPOS (WORD)
La función posición de bit (BPOS) se utiliza para localizar en una cadena de bits, un bit cuyo valor
es 1.
Cada barrido en que la función está habilitada, ésta explora la cadena de bits comenzando por IN.
Cuando la función detiene la exploración, bien se ha encontrado un bit que es igual a 1 o se ha
explorado toda la longitud de la cadena.
POS está configurada a la posición dentro de la cadena de bits del primer bit distinto de cero; POS
está puesto a cero si no se detecta ningún bit distinto de cero.
Se puede seleccionar una longitud de cadena de 1 hasta 256 palabras. La función pasa el flujo de
energía hacia la derecha siempre que habilitar esté ACTIVADA.
_____
| |
(habilitar) —| BIT_|— (ok)
| POS |
| WORD|
| |
| |
(primera palabra) —|IN |
| |
| LEN |
|00001|
| POS|— (posición de bit no-cero o 0)
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la operación de búsqueda de bits.
IN IN contiene la primera palabra de la cadena de bits a que debe aplicarse la operación.
ok La salida ok se activa siempre que habilitar esté activada.
POS La posición del primer bit distinto de cero encontrado o cero si no se encuentra un bit
distinto de cero.
LEN LEN es el número de palabras en la cadena de bits.
Nota
Cuando se utilizan las funciones de test de bits, configuración de bits, borrar
bits o posicionamiento de bits, los bits están numerados de 1 hasta 16, NO de 0
hasta 15.
Ejemplo
Observe que la función posición de bit sólo puede ser del tipo WORD; por tanto, cualquier
dirección de la memoria usada en IN aparecerá en la pantalla de Logicmaster en formato
hexadecimal. Sin embargo, el valor en POS aparecerá en formato de entero. Logicmaster muestra
los primeros 16 bits en IN en formato hexadecimal.
En el siguiente ejemplo, si %I0001 está activada, se busca en la cadena de bits que comienza en
%M0001 hasta que se encuentra un bit igual a 1, o hasta que se ha buscado en toda la cadena de
bits. La bobina %M0100 se activa. Si se encuentra un bit igual a 1, su posición dentro de la
cadena de bits se escribe en %R0002; de lo contrario el valor 0 se escribe en %R0002. En el
ejemplo mostrado, el bit 5 es la primera lógica 1 encontrada en la búsqueda (que comienza en el bit
1), de modo que el valor escrito en %R0002 es 5.
%I0001 %M0100
BIT_
POS_
WORD
%M0001 IN
6910 LEN
00001
%R0002
POS +00005
Bits %M 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Valor de bit 0 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0
8-18 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
_____
| |
(habilitar) —|MASK_|-
| |
|COMP_|
| |
| WORD|
| |
(parámetro de entrada I1) —|I1 MC|— (discordancia)
| LEN |
|00001|
| |
(parámetro de entrada I2) —|I2 Q|— (parámetro de salida Q)
| |
| |
(máscara de cadena de bits) —|M BN|— (número de bit de la última
discordancia)
| |
| |
(número de bit) —|BIT |
|_____|
Parámetros
Parámetro Descripción
habilitar Lógica de permiso para habilitar la función.
I1 Referencia de la primera cadena de bits que se desea comparar.
I2 Referencia de la segunda cadena de bits que se desea comparar.
M Referencia de la máscara para la cadena de bits.
Bit Referencia del número de bit en que debe iniciarse la siguiente comparación.
MC Va a lógica 1 durante una exploración si se ha producido una discordancia. Se puede
utilizar una bobina set en esta salida si se desea “capturar” la salida más allá de una
exploración.
Q Copia de salida de cadena de bits de máscara (M).
BN Número de bit donde se ha producido la última comparación.
LEN LEN es el número de palabras en la cadena de bits.
8-20 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
%M0201
MASK_
COMP
WORD %M0202
%M0001 I1 MC
6C6C LEN
00001
%M0017 I2 Q %M0033
606F 000F
%M0033 M BN %R0001
000F 00000
%R0001 BIT
00000
%M Bits 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17
Entrada 2(I2) 0 1 1 0 1 1 0 1 0 1 1 0 1 1 1 1
%M Bits 48 47 46 45 44 43 42 41 40 39 38 37 36 35 35 33
Máscara 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
(M/Q)
BIT/BN (%R0001) = 0
MC (%M0202) = OFF
8-22 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8
Sin embargo, si el interruptor se abre de nuevo, por ejemplo, el operador de la máquina pulsa el
botón de parada de emergencia o abre la puerta de seguridad, la comparación enmascarada se
activa nuevamente y escribe el número del último interruptor abierto en %R0001. Esto significa
que el equipo no debe manipularse tras producirse el fallo, hasta que pueda examinarse el valor en
%R0001. Si esto no es práctico, se podría utilizar una instrucción mover adicional.
%I0001 %I0002 %I0003 %I0004 %I0005 %I0006 %I0007 %I0008 %I0009 %M0201
%M0201
MOVE_ MOVE_ MOVE_
WORD WORD WORD
CONST %M0017 CONST %M0033 CONST %R0001
IN Q FFFF FE00 IN Q FE00 0000 IN Q 0000
FFFF
LEN LEN LEN
00001 00001 00001
%M0201
MASK_
COMP
WORD %M0202
%I0001 I1 MC
01FF LEN
00001
%M0017 I2 Q %M0033
FFFF FE00
%M0033 M BN %R0001
FE00 00000
CONST BIT
00000
Las funciones de mover datos proporcionan la capacidad de movimiento de datos básicos. Este
capítulo describe las siguientes funciones de movimiento de datos:
GFK-0467M-SP 9-1
9
Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y 37x.
_____
| |
(habilitar) —|MOVE_|— (ok)
| |
| INT |
| |
(valor a mover) —|IN Q|— (parámetro de salida Q)
| |
| LEN |
|00001|
|_____|
9-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9
Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la operación de mover.
IN IN contiene el valor que debe copiarse (moverse). Para MOVE_BIT, puede utilizarse
cualquier referencia digital ; no tiene por qué estar alineada a ningún byte. Sin embargo,
un valor de 16 bits, comenzando por la dirección de referencia especificada, se visualiza
en la pantalla de Logicmaster.
ok La salida ok está activada siempre que la función esté habilitada.
Q Cuando se ejecuta la operación de mover, el valor en IN se copia en Q. Para
MOVE_BIT, puede utilizarse cualquier referencia digital ; no tiene por qué estar
alineada a ningún byte. Sin embargo, un valor de 16 bits, comenzando por la dirección
de referencia especificada, se visualiza en la pantalla de Logicmaster.
LEN LEN especifica el número de palabras o bits a mover. Para MOVE_WORD y
MOVE_INT, LEN debe estar entre 1 y 256 palabras. Para MOVE_BIT, cuando IN es
una constante, LEN debe estar entre 1 y 16 bits; de otro modo, LEN debe estar entre 1 y
256.
Nota
En las CPUs de las series 351, 352, 36x y 37x, las funciones MOVE_INT y
MOVE_WORD no soportan el solapamiento de los parámetros IN y Q, donde la
referencia IN es menor que la referencia Q. Por ejemplo, con los siguientes
valores:
IN=%R0001, Q=%R0004, LEN=5 (palabras), el contenido de %R0007 y
%R0008 será indeterminado; sin embargo, usando los siguientes valores:
Q=%R0001, IN=%R0004, LEN=5 (palabras) se obtendrán contenidos válidos.
Observe, asimismo, que sólo las CPUs de las series 35x y 36x (versión 9.00 y
posterior) y todas las versiones de la CPU35 y 37x poseen capacidad de coma
flotante y son, por tanto, las únicas CPUs de las Series 90-30 capaces de ejecutar
MOVE_REAL.
| _____
|%Q0014 | |
|——| |———|MOVE_|—
| | |
| | WORD|
| | |
|%M0001 —|IN Q|—%M0033
| | |
| | LEN |
| |00003|
| |_____|
|
| _____
|%I0003 | | %Q0001
|——| |———|MOVE_|——————————————————————————————————————————————————————————( )—
| | |
| | BIT |
| | |
| %M0001—|IN Q|—%M0100
| | |
| | LEN |
| |00003|
| |_____|
|
9-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9
Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y 37x.
La función BLKMOV tiene ocho parámetros de entrada y dos parámetros de salida. Cuando esta
función recibe flujo de energía, copia los valores constantes a posiciones consecutivas a partir del
destino especificado en la salida Q. La salida Q no puede ser la entrada de otra función del
programa.
Nota
Para BLKMOV_INT, los valores de IN1 — IN7 son indicados como decimales
con signo. Para BLKMOV_WORD, IN1 — IN7 son indicados en hexadecimal.
Para BLKMOV_REAL, IN1— IN7 son indicados en formato Real.
Parámetros
Parámetro Descripción
habilitar Cuando esta función está habilitada, se ejecuta la operación de mover bloque.
IN1— IN7 IN1 hasta IN7 contienen siete valores constantes.
ok La salida ok está activada siempre que la función esté habilitada.
Q La salida Q contiene el primer entero del bloque movido. IN1 se mueve a Q.
Nota
La capacidad de coma flotante sólo está disponible en las CPUs de las series 35x
y 36x, versión 9 o posterior, y en todas las versiones de la CPU352 y 37x. Estas
CPUs 90-30 son las únicas capaces de ejecutar BLKMV_REAL.
Ejemplo
En el siguiente ejemplo, cuando el contacto de entrada habilitar %M0201 está activado, la función
BLKMOV copia las siete constantes de entrada en las posiciones de la memoria %R0001
(especificada en la salida Q) hasta %R0007. Si la función BLKMV se ejecuta correctamente, se
activa su salida OK, la cual activa %M0202. A su vez, un contacto %M0202 habilita la función de
petición de servicio en el siguiente escalón, que utiliza %R0001 hasta %R0007 como su bloque de
parámetros. (Véanse en el Capítulo 12 las instrucciones de petición de servicio.)
%M0201 %M0202
BLKMV_
WORD
CONST
IN1 Q %R0001
0001 0001 Address Value
CONST
0000
IN2 %R0001 0001
%R0002 0000
CONST
IN3 %R0003 0000
0000
CONST %R0004 0204
IN4
0204 %R0005 0000
CONST %R0006 0000
IN5
0000 %R0007 0000
CONST IN6
0000
CONST IN7
0000
%M0202 %M0204
SVC_
REQ
CONST FNC
0046
%R0001
PARM
0001
9-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9
BLKCLR (WORD)
Utilice la función borrar bloque (BLKCLR) para llenar un bloque especificado de datos con ceros.
La función BLKCLR tiene dos parámetros de entrada y un parámetro de salida. Cuando la función
recibe flujo de energía, escribe ceros en la posición de memoria a partir de la referencia
especificada por IN. Cuando los datos deban borrarse de una memoria digital (%I, %Q, %M, %G o
%T), también se borra la información de transición asociada a las referencias. La función pasa
energía hacia la derecha.
_____
| |
(habilitar) —| BLK_|— (ok)
| CLR_|
| WORD|
| |
| |
| |
(palabra a borrar) —|IN |
| LEN |
|00001|
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, el bloque se borra.
IN IN contiene la primera palabra del bloque que se desea borrar.
ok La salida ok está activada siempre que la función esté habilitada.
LEN LEN debe estar entre 1 y 256 palabras.
Ejemplo
En el siguiente ejemplo, en la conexión se rellenan de ceros 32 palabras de la memoria %Q (512
puntos) comenzando por %Q0001.
| _____
|FST_SCN | |
|——| |———| BLK_|—
| | |
| | CLR_|
| | WORD|
| | |
| %Q0001—|IN |
| | LEN |
| |00032|
| |_____|
|
Nota
Cuando se asignan direcciones de referencia, el solapamiento de los rangos de las
direcciones de referencia de las entradas y salidas en funciones multipalabras
podría producir resultados inesperados.
La función SHFR tiene cuatro parámetros de entrada y dos parámetros de salida. La entrada reset
(R) tiene prioridad sobre la entrada de habilitar función. Cuando reset está activa, todas las
referencias que comienzan en el registro de desplazamiento (ST) hasta la longitud especificada en
LEN, se rellenan de ceros.
Si la función recibe flujo de energía y reset no está activado, cada bit o palabra del registro de
desplazamiento se desplazan a la referencia inmediata superior. El último elemento del registro de
desplazamiento se desplaza hacia Q Si Q tiene una única dirección, los datos desplazados fuera de
Q se rechazan. Sin embargo, si se asigna a IN y a Q la misma dirección, los datos será recirculados
en el registro de desplazamiento. La referencia más alta del elemento del registro de
desplazamiento de IN se desplaza al elemento vacante que comienza por ST. El contenido del
registro de desplazamiento está accesible a través del programa, ya que éste se encuentra en la
memoria direccionable.
La función pasa el flujo de energía a la derecha siempre que se reciba energía de la lógica habilitar.
La función se ejecutará una vez cada exploración mientras esté habilitada; por lo que podría ser útil
utilizar un contacto habilitar del tipo de “una sola ejecución” desde una bobina de transición si sólo
se desea desplazar una vez para un determinado cierre.
_____
| |
(habilitar) —|SHFR_|— (ok)
| |
| WORD|
| |
(reset) —|R Q|— (parámetro de salida Q)
| LEN |
|00001|
| |
| |
| |
(valor a desplazar) —|IN |
| |
| |
| |
(primer bit o palabra) —|ST |
|_____|
9-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9
Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada y la entrada R está desactivada, se efectúa el
desplazamiento. Observe que la función SHFR se ejecutará en cada exploración que esté
habilitada.
R Cuando la entrada R está activada, el registro de desplazamiento situado en ST se rellena
de ceros.
IN IN contiene el valor que debe desplazarse hacia el primer bit o palabra del registro de
desplazamiento. Para SHFR_BIT, puede utilizarse cualquier referencia digital; no tiene
por qué estar alineada a ningún byte. Sin embargo, se muestran en línea 16 bits a partir
de la dirección de referencia especificada.
ST ST contiene el primer bit o palabra del registro de desplazamiento. Para SHFR_BIT,
puede utilizarse cualquier referencia digital; no tiene por qué estar alineada a ningún
byte. Sin embargo, se muestran en línea 16 bits a partir de la dirección de referencia
especificada.
ok La salida ok está activada siempre que la entrada habilitar esté activada y la entrada R
esté desactivada.
Q La salida Q contiene el bit o palabra desplazado fuera del registro de desplazamiento.
Para SHFR_BIT, puede utilizarse cualquier referencia digital; no tiene por qué estar
alineada a ningún byte. Sin embargo, se muestran en línea 16 bits a partir de la dirección
de referencia especificada.
LEN LEN determina la longitud del registro de desplazamiento. Para SHFR_WORD, LEN
debe estar entre 1 y 256 palabras. Para SHFR_BIT, LEN debe estar entre 1 y 256 bits.
Ejemplo 1
En este ejemplo, el registro de desplazamiento opera sobre tres (LEN=3) posiciones de la memoria,
%R0002 hasta %R0004. Cuando el contacto de reset %I0002 está activo, las tres palabras del
registro de desplazamiento se ponen a cero.
Cuando el contacto %I0001 se cierra, el contacto %M0201 en la entrada habilitar de SHFR se
cierra durante una exploración. Esto desplaza los datos de %R0004 a la dirección de la salida Q,
%R0005 (el dato que estaba en %R0005 es rechazado). Los datos de %R0003 se desplazan a
%R0004; el dato de %R0002 se desplaza a %R0003, y el dato de %R0001 (IN) se desplaza a
%R0002 (ST). Este flujo de datos se muestra en la figura inferior. Si se desea, los datos pueden
ser recirculados utilizando la misma dirección en IN y Q.
%I0001 %M0201
%M0201 %M0202
SHFR_
WORD
%I0002 Flujo de datos a través de SHFR
R Q %R0005 %R0001 (IN)
LEN
00003 %R0002 (ST)
Registro de
desplaza-
%R0003 miento
%R0001 IN
(LEN=3)
%R0004
%R0002 ST
%R0005 (Q)
Rechazada
Ejemplo 2
En el ejemplo 2, el registro de desplazamiento es del tipo BIT. Con una LEN de 100, opera en
posiciones de memoria %M0001 hasta %M0100. Cuando la referencia de reset CLEAR está
activa, la función SHFR rellena de ceros desde %M0001 hasta %M0100. Cuando NXT_CYC (un
contacto de “una sola ejecución” de la bobina de transición) está activo y CLEAR está desactivado,
la función SHFR desplaza los datos de %M0001 hasta %M0100 un bit. El bit en %Q0033 se
desplaza a %M0001 mientras que el bit desplazado fuera de %M0100 se escribe en Q (%M0200).
El valor anterior de Q es rechazado.
| _____
|NXT_CYC | |
|——| |———|SHFR_|—
| | |
| | BIT |
| CLEAR | |
|——| |———|R Q|—%M0200
| | LEN |
| |00100|
| | |
| | |
| | |
| %Q0033—|IN |
| | |
| | |
| %M0001—|ST |
| |_____|
|
9-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9
BITSEQ (BIT)
La función secuenciador de bits (BITSEQ) desplaza un único bit de lógica 1 secuencialmente en un
canal circular a través de una tabla de bits. Cuando el bit es desplazado al final de la tabla, éste
vuelve al otro extremo de la tabla en el siguiente desplazamiento y continúa desde allí. La función
BITSEQ tiene cinco parámetros de entrada y un parámetro de salida.
| |
(habilitar) —| BIT_|— (ok)
| |
| SEQ |
| |
(reset) —|R |
| LEN |
|00001|
(dirección) —|DIR |
| |
| |
(número) —|STEP |
| |
| |
(dirección inicial) —|ST |
| |
|_____|
(dirección) - Introduzca aquí la dirección
inicial.
Entrada R (Reset)
Cuando esta entrada está activada, la función secuenciador de bits no se ejecutará.
La entrada reset (R) fuerza la entrada habilitar (EN) y siempre reinicializa el secuenciador. Cuando
R está activada, el número de pasos actual se pone en un valor especificado en el parámetro de
número STEP y todos los demás bits se ponen a cero. Si no se especifica el número STEP
(STEP=0), el paso se pone a bit 1 y todos los demás bits se ponen a 0.
Cuando EN está activado y R no está activado, el bit a que apunta el número de paso actual se
borra. El número de paso actual se incrementa o decrementa en base al parámetro DIR (dirección).
A continuación, el bit a que apunta el nuevo número de paso se pone a 1.
Entrada STEP
• Cuando el número de paso se incrementa y sale del intervalo de (1 ≤ número de paso
≤ LEN), se pone nuevamente a 1.
• Cuando el número de paso se decrementa y sale del intervalo de (1 ≤ número de paso
≤ LEN), se pone a LEN.
El parámetro ST es opcional. Si no se utiliza (se deja igual a su valor por defecto cero), la función
BITSEQ opera como se ha descrito anteriormente, excepto que no se pone o borra ningún bit.
Básicamente la función BITSEQ simplemente incrementa el número de paso actual hasta llegar a
su límite permitido.
Cuando se programa un secuenciador de bits con Logicmaster, se debe introducir una dirección
inicial para estas tres palabras (registros) directamente debajo del gráfico que representa la función
(véase el ejemplo en la siguiente página).
La palabra de control almacena el estado de las entradas y salidas lógicas de sus bloques de función
asociados, como se muestra en el siguiente formato:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R es erv a d o
R es erv a d o
O K ( e n tr a d a e s t a d o )
E N ( e n t r a d a h a b ilit a r )
Nota
Los bits 0 hasta 13 no se usan en el bloque de control. Observe también, que los bits deben
introducirse de 1 hasta 16, NO de 0 hasta 15 en el parámetro STEP.
9-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9
Parámetros
Parámetro Descripción
dirección La dirección es la posición del paso actual del secuenciador de bits, la longitud y los
últimos estados de habilitar y ok.
habilitar Cuando la función está habilitada, si no estaba habilitada en el barrido previo y si R no
está activada, se ejecuta el desplazamiento de secuencia de bits.
R Cuando R está activada, el número de paso del secuenciador de bits se configura al valor
definido en STEP (valor por defecto = 1), y el secuenciador de bits se rellena de ceros,
excepto el bit de número de paso actual.
DIR Cuando DIR está activada, el número de paso del secuenciador de bits se aumenta antes
del desplazamiento. De no ser así, se decrementa.
STEP Cuando R está activada, el número de pasos se asigna a este valor.
ST ST contiene la primera palabra del secuenciador de bits.
ok La salida ok está activada siempre que la función esté habilitada.
LEN LEN debe estar entre 1 y 256 bits.
Nota
La comprobación de la bobina para la función BITSEQ comprueba los 16 bits
desde el parámetro ST, aun cuando LEN sea menor que 16.
Ejemplo
En el siguiente ejemplo, el secuenciador de bits opera en los bits %M0011 (especificado en la
entrada ST) hasta %M0022 (dado que LEN es igual a doce). Su bloque de control de tres palabras
se almacena en los registros %R0010, %R0011 y %R0012. Cuando %I0002 (en la entrada R) está
activada, el secuenciador se reinicializa, lo que significa que el bit para el paso tres (especificado en
la entrada STEP) se pondrá a lógica uno y todos los demás bits se pondrán a cero.
Cuando %I0001 pasa a lógica 1 (con %I0002 desactivado), el bit para el paso número tres se borra
y el bit para el paso número 4 se activará si DIR está activada, o bien se activará el bit para el paso
número 2 si DIR está desactivada.
%I0001 %M0100
BIT_
%I0002 SEQ
R
LEN
%I0003 00012
DIR
Bits %M 22 21 20 19 18 17 16 15 14 13 12 11
CONST Núm. de paso 12 11 10 9 8 7 6 5 4 3 2 1
STEP
00003 0 0 0 0 0 0 0 0 0 1 0 0
%M0011 ST
Dirección de desplazamiento mostrada para DIR=ACTIVADA
%R0010
9-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9
COMMREQ
Utilice la función petición de comunicaciones (COMMREQ) si el programa necesita comunicarse
con un módulo inteligente, tal como un Módulo de Comunicaciones Genius o un Módulo
Coprocesador Programable.
Nota
La información presentada en las páginas siguientes muestra el formato general
de la función COMMREQ. Necesitará información adicional para programar
COMMREQ para cada tipo de dispositivo. Los requisitos de programación para
cada módulo que usa la función COMMREQ están descritos en la documentación
del módulo.
Bloque de comando
El bloque de comando proporciona información al módulo inteligente de destino. Contiene el
número de comando que se va a ejecutar, así como los datos que se van a transferir.
La dirección del bloque de comando está especificada en la entrada IN de la función COMMREQ.
Esta dirección puede estar en un área de memoria orientada a palabra (%R, %AI o %AQ). La
longitud del bloque de comando depende del tipo de módulo de destino de COMMREQ y de la
cantidad de datos que se van a enviar.
Parámetros
Parámetro Descripción
habilitar Mientras la entrada habilitar esté activada, la petición de comunicaciones se realiza una
vez por exploración. Si no se desea enviar la COMMREQ múltiples veces, la entrada
habilitar deberá ser un contacto de una bobina de transición.
IN IN contiene la dirección inicial de la primera palabra del bloque de comando.
SYSID SYSID contiene el número de rack (byte más significativo) y el número de slot (byte
menos significativo) del módulo destino.
TASK TASK contiene el identificador de tarea del proceso en el módulo destino.
FT La salida FT (fallo) se activa si se ha detectado un error en el procesamiento de la
función COMMREQ:
Nota
La COMMREQ de las Series 90-30 no tiene salida OK.
9-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9
Ejemplo
En el siguiente ejemplo, cuando la entrada habilitar %I0001 está activada, un bloque de comando
que comienza en %R0100 (especificado en la entrada IN) es enviado a la tarea de comunicaciones
1 (entrada TASK = 1) en el módulo situado en el rack 0, slot 8 (SYSID=0008) del PLC. Si se
produce un error durante el procesamiento de COMMREQ, la salida fallo (FT) se activa, lo cual
activa %M0100.
Observe que la dirección en la entrada IN especifica la dirección inicial del bloque de comando.
Asimismo, el número hexadecimal en SYSID especifica el número de rack y slot del módulo
destino; el byte alto corresponde al número de rack y el byte bajo al número de slot. Por tanto, el
SYSID de 0008 en el ejemplo corresponde al rack 00 y slot 08, como se muestra. El rack 0 (cero)
corresponde siempre al rack principal o rack de la CPU, de modo que si el módulo destino era un
rack de expansión o un rack remoto, el byte alto de SYSID contendrá un número distinto de cero
que corresponde al número del rack configurado donde está situado el módulo destino.
%I0001
COMM_
REQ
%M0100
%R0100 IN FT
LEN
00001
CONST
SYSID
0008
CONST
TASK
00001
El tipo de datos por defecto es el entero con signo. El tipo de datos puede cambiarse tras
seleccionar la función de tabla de datos específicos en el software de lógica de contactos. Para
comparar datos de otros tipos o de dos tipos diferentes, utilice primeramente la función de
conversión correspondiente (descrita en el Capítulo 11, “Funciones de conversión”) para cambiar
los datos a uno de los tipos de datos listado más arriba.
GFK-0467M-SP 10-1
10
Números de índice
Cada elemento de datos de una tabla posee un número de referencia llamado número de índice, que
es automáticamente asignado por el PLC. El número de índice indica la posición del elemento de
datos en la tabla. Los elementos de datos están numerados en orden ascendente, empezando por la
dirección de memoria más baja de la tabla, a la que se ha asignado el número de índice uno.
Por ejemplo, la siguiente tabla de tipo palabra tiene una dirección inicial de %R0105. Tiene diez
elementos de datos, cuyos números de índice son 1 hasta 10.
Número
Dirección de índice
%R0105 1
%R0106 2
%R0107 3
%R0108 4
%R0109 5
%R0110 6
%R0111 7
%R0112 8
%R0113 9
%R0114 10
Utilice la función mover tabla para copiar un número especificado de elementos de datos desde una
tabla origen a una tabla destino. Cada tabla relacionada en una instrucción mover tabla posee igual
número de elementos de datos. La función mover tabla permite que las posiciones
correspondientes implicadas en el movimiento sean diferentes en las tablas origen y destino. Por
10-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
10
ejemplo, tres elementos de datos, que comienzan en el índice 5 en la tabla origen, pueden copiarse
a tres elementos de datos en la tabla destino que comiencen en el índice 7.
La función ARRAY_MOVE tiene cinco parámetros de entrada y dos parámetros de salida.
Cuando la función está habilitada, el número de elementos de datos en el indicador del contador
(N) son copiados de la tabla de entrada comenzando por la posición de índice especificada en la
entrada SNX. Los elementos de datos se escriben en la tabla de salida comenzando por la posición
de índice especificada en DNX. El operando LEN especifica el número de elementos que
constituyen cada tabla.
Para ARRAY_MOVE_BIT, cuando la memoria orientada a palabras se selecciona para los
parámetros de la dirección inicial de la tabla de origen y/o de la tabla destino, el bit menos
significativo de la palabra especificada es el primer bit de la tabla. El valor indicado en la pantalla
del Logicmaster contiene 16 bits, independientemente de la longitud de la tabla.
Los índices de una instrucción ARRAY_MOVE tienen por base 1. Cuando se utiliza una
instrucción ARRAY_MOVE, no puede hacerse referencia a ningún elemento que esté fuera de las
tablas origen o destino (especificadas por su dirección inicial y su longitud).
La salida ok recibe flujo de energía a no ser que se produzca una de las siguientes situaciones:
• Habilitar está DESACTIVADA.
• (N + SNX – 1) es mayor que LEN. Esta fórmula es usada por el PLC para asegurar que no se
considere ningún elemento fuera de la tabla origen.
• (N + DNX – 1) es mayor que LEN. Esta fórmula es usada por el PLC para asegurar que no se
considere ningún elemento fuera de la tabla destino.
• SNX o DXN = 0.
_____
| |
(habilitar) —|ARRAY|— (ok)
| |
|MOVE_|
| |
| BIT |
| |
(dirección de la tabla origen) —|SR DS|— (dirección de la tabla destino)
| LEN |
|00001|
(índice de la tabla origen) —|SNX |
| |
| |
(índice de la tabla destino) —|DNX |
| |
| |
(elementos a transferir ) —|N |
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la operación mover tabla.
SR SR contiene la dirección inicial de la tabla origen. Para ARRAY_MOVE_ BIT, puede
utilizarse cualquier referencia; no tiene por qué estar alineada a ningún byte. Sin
embargo, 16 bits, comenzando por la dirección de referencia especificada, se visualizan
en la pantalla de Logicmaster.
SNX SNX contiene el índice en la tabla origen del primer elemento de datos que va a
copiarse.
DNX DNX contiene el índice en la tabla destino del primer elemento de datos que va a
copiarse.
N El número de elementos de datos que va a copiarse.
ok La salida ok se activa siempre que habilitar esté activada.
DS DR contiene la dirección inicial de la tabla destino. Para ARRAY_MOVE_ BIT, puede
utilizarse cualquier referencia; no tiene por qué estar alineada a ningún byte. Sin
embargo, se muestran en línea 16 bits a partir de la dirección de referencia especificada.
LEN LEN especifica el número de elementos que comienza en SR y DS que componen cada
tabla.
10-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
10
Ejemplo 1
En este ejemplo, las dos tablas son del tipo INT con una longitud de 10 elementos (enteros),
especificada por LEN=10. Sus direcciones iniciales están especificadas en SR y DS. Cuando el
contacto habilitar %M0201 está activado, cinco elementos de datos (especificados por N=5) son
copiados de la tabla origen a la tabla destino. Los cinco elementos de datos copiados de la tabla
origen comienzan con el número de índice 3, ya que SNX=3. Las posiciones copiadas en la tabla
destino comienzan por el número de índice 5, ya que DNX=5. Así %R0003 hasta %R0007 de la
tabla origen son leídos y después copiados en %R0104 hasta %R0108 de la tabla destino.
%M0201 %M0202
ARRAY
MOVE_
INT Tabla origen Tabla destino
%R0001 SR DS %R0100 %R0001 %R0100
LEN %R0002 %R0101
00010 %R0003 %R0102
CONST SNX %R0004 %R0103
+00003 %R0005 %R0104
CONST DNX %R0006 %R0105
+00005 %R0007 %R0106
CONST N %R0008 %R0107
+00005 %R0009 %R0108
%R0010 %R0109
Ejemplo 2
En este ejemplo, las dos tablas son del tipo BIT con una longitud de 10 elementos (bits),
especificada por LEN=10. Sus direcciones iniciales están especificadas en SR y DS. Cuando el
contacto habilitar %M0201 está activado, cuatro elementos de datos (especificados por N=4) son
copiados de la tabla origen a la tabla destino. Los cuatro elementos de datos copiados de la tabla
origen comienzan con el número de índice 4, ya que SNX=4. Las posiciones copiadas en la tabla
destino comienzan por el número de índice 2, ya que DNX=2. Así, %M0012 hasta %M0015 de la
tabla origen son leídos y después copiados en %Q0023 hasta %Q0026 de la tabla destino.
%M0201 %M0202
ARRAY
MOVE_
BIT Tabla origen Tabla destino
%M0009 SR DS %Q0022 %M0009 %Q0022
LEN %M0010 %Q0023
00010 %M0011 %Q0024
CONST SNX %M0012 %Q0025
+00004 %M0013 %Q0026
CONST DNX %M0014 %Q0027
+00002 %M0015 %Q0028
CONST N %M0016 %Q0029
+00004
%M0017 %Q0030
%M0018 %Q0031
Ejemplo 3
En este ejemplo, las dos tablas son del tipo BIT con una longitud de 20 elementos 20 (bits),
especificada por LEN=10. Sus direcciones iniciales están especificadas en SR y DS. Cuando el
contacto habilitar %M0201 está activado, doce elementos de datos 12 (especificados por N=12) son
copiados de la tabla origen a la tabla destino. Los doce elementos de datos copiados de la tabla
origen comienzan con el número de índice 6, ya que SNX=6. Las posiciones copiadas en la tabla
destino comienzan por el número de índice 8, ya que DNX=8. Así %R0001, bit 6 hasta %R0002,
bit 1 de la tabla origen son leídos y después copiados en %R0100, bit 8 hasta %R0101, bit 3 de la
tabla destino.
%M0201 %M0202
ARRAY
MOVE_
BIT Tabla origen Tabla destino
%R0001 SR DS %R0100 %R0001, bit 1 %R0100, bit 1
LEN %R0001, bit 2 %R0100, bit 2
00020 %R0001, bit 3 %R0100, bit 3
CONST SNX %R0001, bit 4 %R0100, bit 4
00006 %R0001, bit 5 %R0100, bit 5
CONST DNX %R0001, bit 6 %R0100, bit 6
00008 %R0001, bit 7 %R0100, bit 7
CONST N %R0001, bit 8 %R0100, bit 8
00012
%R0001, bit 9 %R0100, bit 9
%R0001, bit 10 %R0100, bit 10
%R0001, bit 11 %R0100, bit 11
%R0001, bit 12 %R0100, bit 12
%R0001, bit 13 %R0100, bit 13
%R0001, bit 14 %R0100, bit 14
%R0001, bit 15 %R0100, bit 15
%R0001, bit 16 %R0100, bit 16
%R0002, bit 1 %R0101, bit 1
%R0002, bit 2 %R0101, bit 2
%R0003, bit 3 %R0101, bit 3
%R0003, bit 4 %R0101, bit 4
10-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
10
Funciones de búsqueda
Utilice la función buscar apropiada, entre las listadas a continuación, para buscar todos los valores
de la tabla para esa determinada operación.
Cada función tiene cuatro parámetros de entrada y dos parámetros de salida. Cuando la función
recibe energía, se realiza la búsqueda en la tabla comenzando en (AR + entrada NX). Esta es la
dirección inicial de la tabla (AR) más el índice dentro de esa tabla (entrada NX).
La búsqueda continúa hasta que se encuentra el elemento de tabla del objeto buscado (IN) o hasta
que se alcanza el final de la tabla. Si se encuentra un elemento de tabla, se ACTIVA el parámetro
de salida (FD) y el parámetro de salida (salida NX) se configura a la posición relativa de este
elemento dentro de la tabla. Si no se encuentra ningún elemento de tabla antes de llegar al final de
éste, se DESACTIVA el parámetro de salida (FD) y se pone a cero el parámetro de salida (salida
NX).
Los valores válidos de la entrada NX van de 0 a LEN- 1. NX debe configurarse a cero para iniciar
la búsqueda en el primer elemento. Este valor aumenta en uno en el momento de la ejecución. Por
este motivo, los valores de NX de salida van de 1 hasta LEN. Si el valor de la entrada NX está
fuera de rango, (< 0 o ≥ LEN), su valor se pone al valor por defecto de cero.
_____
| |
(habilitar) —|SRCH_|
| |
| EQ_ |
| |
| WORD|
| |
(dirección inicial) —|AR FD|—
| LEN |
|00001|
(entrada índice) —|NX NX|— (salida índice)
| |
| |
(objeto de la búsqueda) —|IN |
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la operación.
AR AR contiene la dirección inicial de la tabla donde se va a buscar (tabla destino).
Entrada NX Entrada NX contiene un número de índice (en la tabla destino) donde ha de comenzar la
búsqueda.
IN IN contiene el objeto que se va a buscar.
Salida NX Si se encuentra el objeto de la búsqueda, si posición en la tabla (su número de índice) se
escribirá aquí.
FD Esta salida se activa para indicar que el objeto buscado ha sido encontrado en la tabla.
LEN LEN especifica el número de elementos que comienza en AR que componen la tabla
buscada. Pueden ser 1 hasta 32,767 bytes o palabras.
10-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
10
Ejemplo 1
La función SRCH_EQ (tipo INT) en este ejemplo busca el bloque de memoria que comienza en
%R0001 (especificado en AR) y continúa hasta %R0010 (LEN=10). El valor que se va a buscar,
definido en IN, es +16566. La entrada NX, con un valor de 3, indica que la búsqueda ha de
comenzar en el cuarto elemento de datos en la tabla, ya que el valor de NX se incrementa en 1
cuando se ejecuta la función.
Cuando el contacto habilitar %M0201 está activado, la función SRCH_EQ busca en la tabla
especificada, comenzando por el número de índice 4, un valor igual al valor en IN, +16566.
Encuentra este valor en %R0007, que tiene un número de índice de 7, de modo que escribe el
número 7 en la salida NX en %R0100. También activa la salida FD, que indica que ha encontrado
el objeto buscado en la tabla. Observe que aunque la dirección %R0002 también contiene el valor
buscado +16566, este elemento de datos no estaba incluido en la búsqueda ya que el valor 3 del
parámetro de la entrada NX especifica que la búsqueda comience por el cuarto elemento de datos,
que es %R0004.
%M0201 %M0202
SRCH_
EQ_
INT
TABLA DESTINO
%R0001 AR FD Número de índice Dirección Valor
LEN 1 %R0001 00000
00010 2 %R0002 +16566
CONST NX NX
3 %R0003 +12345
%R0100
00003 4 %R0004 +32000
00007
5 %R0005 +07870
%R0100 6 %R0006 -00550
IN
+16566
7 %R0007 +16566
8 %R0008 -12343
9 %R0009 +00058
10 %R0010 +19238
Ejemplo 2
La tabla de este ejemplo comienza en %AI0001 (especificado en AR) y continúa hasta %AI0016
(LEN=16). El valor que se va a buscar, definido en IN, es 00000. La entrada NX, con un valor
inicial de 0, indica que la búsqueda ha de comenzar en el primer elemento de datos en la tabla, ya
que el valor de NX se incrementa en 1 cuando se ejecuta la función.
Cuando %M0200 se cierra por primera vez, la función ejecuta su primera búsqueda, comenzando
por el elemento de datos 1, de un valor igual al valor en IN, 00000. Encuentra este valor en
%AI0003, que tiene un número de índice de 3, de modo que escribe el número 3 en la salida NX y
la entrada NX, las cuales tienen la dirección de referencia de %R0001. También activa la salida
FD, que indica que ha encontrado el objeto buscado en la tabla.
Cuando %M0200 se cierra por segunda vez, el valor de la entrada NX, que ahora es 3, se
incrementa en 1, de modo que la segunda búsqueda comienza en el cuarto elemento de la tabla,
%AI0004. El valor objetivo de 00000 se ha encontrado ahora en %AI0007, el séptimo elemento de
datos, de modo que el número 7 se escribe en %R0001. Cada búsqueda consecutiva sigue este
modelo, hasta la quinta búsqueda, en la que no se encuentra ningún objeto. Dado que no se
encuentra ningún objeto, se escribe un 0 en %R0001, que asegurará que la búsqueda comience al
inicio de la tabla la próxima vez que ésta se inicie.
La búsqueda Resultado de
comienza en el la búsqueda
Búsqueda nº elemento de datos (en %R0001)
1 1 3
2 4 7
3 8 11
4 12 15
5 16 0
%M0200 %M0201
%M0201 %M0202
SRCH_
EQ_
TABLA DESTINO
INT Número de índice Dirección Valor
%AI0001 AR FD 1 %AI0001 00100
2 %AI0002 +16566
LEN
00016 3 %AI0003 00000
%R0001 %R0001 4 %AI0004 +32000
NX NX
00000 00000 5 %AI0005 +07870
6 %AI0006 -00550
CONST 7 %AI0007 00000
IN
00000 8 %AI0008 -12343
9 %AI0009 +00058
10 %AI0010 +19238
11 %AI0011 00000
12 %AI0012 +16566
13 %AI0013 +12345
14 %AI0014 +32000
15 %AI0015 00000
16 %AI0016 -00550
10-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Capítulo Funciones de conversión
11
Utilice las funciones de conversión para convertir un elemento de datos de un tipo de número a
otro. Numerosas instrucciones de programación, tales como las funciones matemáticas deben
utilizarse con datos de un tipo determinado. Esta sección describe las siguientes funciones de
conversión:
GFK-0467M-SP 11-1
11
—>BCD-4 (INT)
La función convertir a BCD-4 se usa para entregar el dato BCD de cuatro dígitos equivalente a un
valor entero con signo. El dato original no es modificado por esta función. Los datos pueden
convertirse a datos BCD para accionar LEDs codificados en BCD o valores preseleccionados para
dispositivos externos tales como contadores rápidos.
Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. Esta función transfiere el flujo de energía cuando se recibe
energía a no ser que la conversión especificada diese como resultado un valor fuera del intervalo 0
hasta 9999.
Habilitar INT_ OK
A_
BCD4
Valor a convertir IN Q Valor convertido
Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la conversión.
IN IN contiene una referencia para el valor entero que debe convertirse a BCD-4.
ok La salida ok se activa cuando la función se ejecuta sin error.
Q La salida Q contiene la forma BCD-4 del valor original que hay en IN.
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.
Ejemplo
En el siguiente ejemplo, siempre que la entrada %I0002 está activada y no existen errores, el entero
disponible en la posición de entrada %M0017 hasta %M0032 se convierte a cuatro dígitos BCD y
el resultado se almacena en las posiciones de memoria %Q0033 hasta %Q0048. La bobina
%M0032 se activa para verificar si la conversión ha sido correcta.
| _____
|%I0002 | | %M0032
|——| |———| INT_|———————————————————————————————————————————————————————————( )—
| | TO_ |
| | |
| | BCD4|
| %M0017—|IN Q|—%Q0033
| |_____|
|
11-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
11
Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y CPU37x.
Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. Esta función transfiere siempre el flujo de energía cuando se
recibe energía a no ser que los datos estén fuera de los límites.
Habilitar BCD4_ OK
A_
INT
Valor a convertir IN Q Valor convertido
Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la conversión.
IN IN contiene una referencia para convertir a número entero el valor en BCD-4, REAL o
Constante.
ok La salida ok se activa siempre que esté activada la entrada habilitar, a no ser que el dato
esté fuera de límites o sea del tipo NaN (No un Número).
Q La salida Q contiene la forma de entero del valor original en IN.
| _____ _____
|%I0002 | | | |
|——| |———|BCD4_|————————————————| ADD_|—
| | | | |
| | TO_ | | INT |
| | | | |
| | INT | | |
| PIEZAS -|IN Q|- %R0001 %R0001 |I1 Q|- TOTAL
| |_____| | |
| EJECUTANDO-|I2 |
| | |
—————
%M0100 %M0101
REAL_
A_
INT
%R0101 %R0200
+378.9462
IN Q +00379
11-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
11
—>DINT (REAL)
La función convertir a entero con signo de doble precisión se utiliza para obtener el entero con
signo de doble precisión equivalente al dato real. El dato original no es modificado por esta
función.
Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y CPU37x.
Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. Esta función transfiere siempre el flujo de energía cuando se
recibe energía a no ser que el valor real esté fuera de los límites.
_____
| |
(habilitar) —| REAL|— (ok)
| |
| TO_ |
| |
| DINT|
valor a convertir) —|IN Q|— (parámetro de salida Q)
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la conversión.
IN IN contiene una referencia para el valor que debe convertirse a entero de doble precisión.
ok La salida ok se activa siempre que habilitar esté activado, a no ser que el valor real esté
fuera de límites.
Q Q contiene la forma de entero con signo de doble precisión del valor original en IN.
Nota
Es posible que se produzca una pérdida de precisión al convertir de REAL a
DINT ya que el REAL tiene 24 bits significativos.
Ejemplo
En el siguiente ejemplo, siempre que la entrada habilitar %M0100 esté activa, el valor real en la
posición de entrada %R0101 se convierte a un entero con signo de doble precisión y el resultado se
coloca en la posición %R0200. Observe que durante la conversión, el número real se redondea al
entero más próximo. Si la parte decimal de un número real es 0.5 o mayor, el entero resultante se
redondea al valor de 1. Si la parte decimal de un número real es menor de 0.5, esta parte decimal
se rechaza y el número entero no se redondea. En el ejemplo inferior, el valor real 7890.542 se
redondea al valor entero doble 7891.
Si no se desea el redondeo, utilice la función REAL_TRUN_DINT, que trunca la parte decimal de
un número real, independientemente de su valor, durante la conversión.
%M0100 %M0101
REAL_
A_
DINT
%R0101 %R0200
+7890.542
IN Q +0000007891
11-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
11
Nota
Esta función sólo está disponible en las CPUs de las series 35x y 36x, versión 9 o
posterior, y en todas las versiones de la CPU352 y CPU37x.
_____
| |
(habilitar) —| INT_|— (ok)
| |
| TO_ |
| |
| REAL|
(valor a convertir) —|IN Q|— (parámetro de salida Q)
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la conversión.
IN IN contiene la referencia para un valor entero que debe convertirse a real.
ok La salida ok se activa cuando la función se ejecuta sin error.
Q Contiene la forma REAL del valor original en IN.
%M0100 %M0101
INT_
A_
REAL
%R0101 %R0200
IN Q
+07891 +7891.000
%M0100 %M0101
DINT_
A_
REAL
%R0101 %R0200
IN Q
+1234567891 +1234568000.
11-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
11
—>WORD (REAL)
La función convertir a palabra (WORD) se utiliza para obtener el equivalente en palabra del dato
real. El dato original no es modificado por esta función.
Nota
Esta función sólo está disponible en las CPUs de las series 35x, 36x y 37x.
Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. La función transfiere el flujo de energía cuando recibe energía a
no ser que la conversión especificada diese como resultado un valor fuera de los límites 0 hasta
FFFFh.
_____
| |
(habilitar) —| REAL|— (ok)
| |
| TO_ |
| |
| WORD|
(valor a convertir) —|IN Q|— (parámetro de salida Q)
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la conversión.
IN IN contiene la referencia para el valor que debe convertirse a WORD.
ok La salida ok se activa cuando la función se ejecuta sin error.
Q La salida Q contiene la forma de entero sin signo del valor original en IN.
| _____ _____
|%I0002 | | | |
|——| |———|REAL_|————————————————|RANGE|—
| | | | |
| | TO_ | | WORD|
| | | | |
| | WORD| | | %Q0001
| %R0001—|IN Q|-%R0003 HI_LIM-|L1 Q|———( )————
| |_____| | |
| | |
| LOW_LIM-|L2 |
| | |
| | |
| %R0003-|IN |
| —————
11-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
11
Nota
Las CPUs de las series 35x y 36x (versión 9.00 o posterior y todas las versiones
de la CPU352) y 37x son las únicas CPUs de las Series 90-30 con capacidad de
coma flotante; por tanto, la función TRUN no es aplicable en otras CPUs 90-30.
Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. Para la CPU 352, la función transfiere el flujo de energía cuando
se recibe energía, a no ser que la conversión especificada diera como resultado un valor fuera de los
límites o IN fuera NaN (No un Número). Para todas las demás CPUs de las series 35x y 36x/37x, la
función no pasa energía.
_____
| |
(habilitar) —|REAL_|— (ok)
| |
|TRUN_|
| |
| INT |
(valor a convertir) —|IN Q|— (parámetro de salida Q)
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la conversión.
IN In contiene una referencia para el valor real que se desea truncar.
ok La salida ok se activa cuando la función se ejecuta sin error, a no ser que el valor esté fuera
de límites o IN sea NaN (No un Número).
Q Q contiene el valor INT o DINT truncado del valor original en IN.
Nota
Es posible que se produzca una pérdida de precisión al convertir de REAL a
DINT ya que el REAL tiene 24 bits significativos.
%M0100 %M0101
REAL_
TRUN_
INT
%R0101 %R0200
IN Q
+5432.765 +05432
Ejemplo 2 – Truncar real a entero doble con bobina de salida para CPU352
En el siguiente ejemplo, el valor en %R0101 es truncado (la parte decimal se rechaza) y el valor
entero doble resultante +0000005432 se coloca en %R0200. . Si se hubiera usado una CPU352,
%M0101 se habría activado indicando una conversión correcta. Si se usa cualquier otra CPU 35x,
36x o 37x, no se produce flujo de energía en la salida OK, de modo que no se programará ninguna
bobina de salida.
%M0100 %M0101
REAL_
TRUN_
DINT
%R0101 %R0200
IN Q
+5432.765 +0000005432
11-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Capítulo Funciones de control
12
Este capítulo describe las funciones de control que pueden utilizarse para limitar la ejecución del
programa y para modificar la manera en que la CPU ejecuta el programa de aplicación. Consulte el
Capítulo 2, sección 1, “Resumen del barrido del PLC”, para más información sobre el barrido de la
CPU.
Función Descripción Página
CALL Hace que la ejecución del programa vaya a un bloque de subrutina especificado. 12-2
DOIO Durante un barrido, escanea inmediatamente un rango especificado de entradas y salidas. (Todas las 12-3
entradas o salidas en un módulo se escanean si cualquier posición de referencia en ese módulo está
incluida en la función DO I/O. No se realizan actualizaciones parciales del módulo de E/S.)
Opcionalmente, puede colocarse una copia de la E/S explorada en la memoria interna, en lugar de los
puntos de entrada reales.
SER El registro de sucesos secuenciales, recoge una serie de muestras. Un bloque de control de función 12-10
contiene la configuración suministrada por el usuario de la ejecución del bloque de función,
configuración de la muestra y parámetros de operación.
END Proporciona un fin temporal de la lógica. El programa ejecuta desde el primer escalón hasta el último 12-26
escalón o la instrucción END, lo que se encuentre primero. Esta instrucción es útil para fines de
depuración de errores, pero no está permitida en la programación SFC (véase la Nota de la página 12-
10).
MCR Programa un relé de control maestro. Un MCR hace que todos los escalones entre el MCR y su 12-27
y ENDMCR subsiguiente se ejecuten sin flujo de energía. El software Logicmaster 90-30/20/Micro
MCRN soporta dos formas de la función MCR, una forma anidada (MCRN) y una forma no anidada (MCR).
ENDMCR Indica que la lógica siguiente se va a ejecutar con flujo normal de energía. El software Logicmaster 90- 12-33
y 30/20/Micro soporta dos formas de la función ENDMCR, una forma anidada (ENDMCRN) y una
ENDMCRN forma no anidada (ENDMCR).
JUMP Hace que la ejecución del programa salte a una posición determinada (indicada por una LABEL, véase 12-34
y más abajo) de la lógica. El software Logicmaster 90-30/20/Micro soporta dos formas de la función
JUMPN JUMP, una forma no anidada (JUMP) y una forma anidada (JUMPN).
LABEL Especifica la ubicación destino de una instrucción JUMP (salto). El software Logicmaster 90- 12-36
y 30/20/Micro soporta dos formas de la función LABEL, una forma no anidada (LABEL) y una forma
LABELN anidada (LABELN).
COMMENT Coloca un comentario (explicación de escalón) en el programa. Tras la programación de la instrucción, 12-37
se puede introducir el texto ampliando mediante “zoom” la instrucción (use la tecla F10 para el zoom).
SVCREQ Solicita un servicio especial del PLC. (Véase la lista de peticiones de servicio en la página 12-39.) 12-39
PID Proporciona dos algoritmos de control del lazo cerrado PID (proporcional/integral/derivada): 12-74
• Algoritmo PID ISA estándar (PIDISA).
• Algoritmo de término independiente (PIDIND).
GFK-0467M-SP 12-1
12
CALL (LLAMADA)
La función llamada hace que la ejecución del programa pase al bloque de subrutina especificado.
————————————————
| |
-| CALL ??????? |-
| |
| (SUBRUTINA) |
| |
————————————————
Cuando la función llamada recibe flujo de energía, hace que la exploración pase inmediatamente al
bloque de subrutina especificado y lo ejecute. Después de terminar el bloque de subrutina
especificado, el control vuelve al escalón de la lógica inmediatamente siguiente a la instrucción de
llamada.
Ejemplo
En el siguiente ejemplo, la instrucción CALL está programada para llamar a la subrutina
denominada ROTAR cuando el contacto %I0006 está activado. (Observe que antes de poder
introducir el nombre de una subrutina en la instrucción CALL, el nombre de la subrutina debe
existir ya en la tabla de declaraciones de bloques.) Situando el cursor dentro de la instrucción
CALL, puede pulsar F10 para ampliar la subrutina y ver la lógica de la misma. Una vez que se ha
llamado a la subrutina, la ejecución del programa se desviará a la subrutina, que se ejecutará hasta
terminar, a continuación la ejecución del programa pasará al escalón que sigue al que realizó la
llamada. En el ejemplo inferior, la subrutina se llama del segundo escalón, de modo que cuando
finaliza la ejecución de la subrutina, la exploración del programa se reanudará en el tercer escalón.
|
|%I0004 %T0001
|——| |—————————————————————————————————————————————————————————————————————( )—
|
| ————————————————
| | |
|%I0006 | CALL ROTAR |-
|——| |———————| (SUBRUTINA) |
| | |
| | |
| ————————————————
|
|%I0003 %I0010 %Q0010
|——| |——+——| |—————————————————————————————————————————————————————————————( )—
| |
|%I0001 |
|——| |——+
|
Nota
Los PLCs Micro no aceptan subrutinas; por tanto, la función CALL no es
apropiada para usarla con un PLC Micro.
12-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Nota
La función DOIO sólo puede ser utilizada con un módulo GCM avanzado
(IC693CMM302) en sistemas con CPUs de versión 9.0 o posterior.
La función pasa el flujo de energía hacia la derecha siempre que se recibe energía, a no ser que:
• No todas las referencias del tipo especificado se encuentren dentro de los límites
seleccionados.
• La CPU no pueda manejar correctamente la lista temporal de E/S creadas por la función.
• El intervalo especificado incluya módulos de E/S asociados a un fallo “Pérdida de E/S".
_____
| |
(habilitar) —|DO_IO|— (ok)
| |
| |
| |
(dirección inicial) —|ST |
| |
| |
(dirección final) -|END |
| |
| |
—|ALT |
|_____|
Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta una exploración limitada de entradas
o salidas.
ST ST es la dirección inicial de un grupo de puntos de entrada o salida o palabras a los que
se va a efectuar el servicio.
END END es la dirección final del grupo de puntos de entrada o salida o palabras a los que se
va a efectuar el servicio.
ALT Para la exploración de entradas, ALT especifica la dirección para almacenar los valores
de puntos de entradas exploradas/palabras. Para la exploración de salidas, ALT
especifica las direcciones de que se han de obtener los valores de puntos de
salida/palabras. Para las CPUs Modelo 331 y posteriores, el parámetro ALT puede tener
un efecto sobre la velocidad de la ejecución del bloque de función DOIO (véase la Nota
inferior y la sección sobre la función DO I/O avanzada para las CPUs 331 y posteriores
más adelante en este capítulo). Si la función ALT no se utiliza, esta entrada deberá
dejarse en blanco; si se programa un valor constante de 0 para ALT, la CPU puede
experimentar errores de tiempo límite de watchdog.
ok La salida ok se activa cuando la exploración de entrada o salidas concluye normalmente.
Nota
Una función DOIO avanzada está disponible para las CPUs Modelo 331 y posteriores. En la
función DOIO avanzada, el parámetro ALT puede usarse para introducir el número de slot de un
módulo de entrada o salida digital único en el rack principal. Esta función DOIO avanzada se
ejecutará en 80 microsegundos, en lugar de los 236 microsegundos requeridos cuando la DOIO es
programada sin el parámetro ALT. No se realiza ninguna comprobación de error para prevenir el
solapamiento de direcciones de referencia o discordancias del tipo de módulo. Para más detalles
véase la sección “Función DO I/O avanzada” más adelante en este capítulo.
12-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Ejemplo de entrada 1
En el siguiente ejemplo, cuando la entrada habilitar %M0001 se ACTIVA, las referencias %I0001
(especificada en ST) hasta %I0064 (especificada en END) se exploran y %Q0001 se activa. Una
copia de las entradas exploradas se coloca en la memoria interna desde la referencia %M0001
(especificada en ALT) hasta %M0064. Debido a que una posición alternativa estaba especificada
en ALT, la tabla de entradas %I no se actualiza mediante DO_IO. Esta forma de la función puede
utilizarse para comparar los valores actuales de los puntos de entrada con los valores de los puntos
de entrada anteriores (es decir, con sus valores al comienzo de la exploración de la solución de la
lógica).
|
| _____
|%M0001 | | %Q0001
|——| |———|DO_IO|—————————————————————————————————————————————————————————( )-
| | |
| | |
|%I0001 -|ST |
| | |
| | |
|%I0064 -|END |
| | |
| | |
|%M0001 —|ALT |
| |_____|
|
Ejemplo de entrada 2
En el siguiente ejemplo, cuando la entrada habilitar %M0001 está ACTIVADA, las referencias
%I0001 (especificada en ST) hasta %I0064 (especificada en END) se exploran y %Q0001 se
activa. Debido a que no se ha especificado ninguna posición de memoria alternativa en ALT, los
valores de entrada explorados son utilizados por DO_IO para actualizar la tabla de entrada desde la
referencia %I0001 a %I0064. Esta forma de la función permite explorar y actualizar los puntos de
entrada más de una vez durante la parte de la solución de la lógica del barrido de la CPU. Observe
que cuando no se utiliza la entrada ALT, debe dejarse en blanco, como se ha indicado. No ponga
un cero en la entrada ALT ya que producirá errores del temporizador watchdog.
|
| _____
|%M0001 | | %Q0001
|——| |———|DO_IO|—————————————————————————————————————————————————————————( )-
| | |
| | |
|%I0001 -|ST |
| | |
| | |
|%I0064 -|END |
| | |
| | |
| —|ALT |
| |_____|
|
Ejemplo de salida 1
En el siguiente ejemplo, cuando la entrada habilitar %M0001 esta ACTIVADA, los valores de los
canales de salidas analógicas %AQ001 (especificada en ST) hasta %AQ004 (especificada en END)
se escriben en las referencias %R0001 (especificada en ALT) hasta %R0004 respectivamente, y
%Q0001 se activa. Debido a que la posición alternativa %R0001 fue especificada en ALT, los
valores en %AQ001 hasta %AQ004 no son escritos en los módulos de salidas analógicas por la
DO_IO.
|
| _____
|%M0001 | | %Q0001
|——| |———|DO_IO|—————————————————————————————————————————————————————————( )-
| | |
| | |
|%AQ001 -|ST |
| | |
| | |
|%AQ004 -|END |
| | |
| | |
|%R0001 —|ALT |
| |_____|
|
12-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Ejemplo de salida 2
En el siguiente ejemplo, cuando la entrada habilitar %M0001 está ACTIVADA, los valores en las
referencias %AQ001 hasta %AQ004 son escritos en los canales de salidas analógicas %AQ001
hasta %AQ004 en los correspondientes módulos de salidas analógicas, y %Q0001 se activa. La
función DO_IO actualiza los módulos de salidas analógicas ya que en ALT no se ha especificado
ninguna posición de memoria alternativa. Observe que cuando no se utiliza la entrada ALT, debe
dejarse en blanco, como se ha indicado. No ponga un cero en la entrada ALT ya que producirá
errores del temporizador watchdog.
|
| _____
|%M0001 | | %Q0001
|——| |———|DO_IO|—————————————————————————————————————————————————————————( )-
| | |
| | |
|%AQ001 -|ST |
| | |
| | |
|%AQ004 -|END |
| | |
| | |
| —|ALT |
| |_____|
|
La versión avanzada de la función DO I/O (DOIO) está disponible para la versión 4.20 o
posteriores de las CPUs Modelo 331 y posteriores. Esta versión avanzada de la función DOIO sólo
puede utilizarse en un módulo de entrada digital simple o en un módulo de salida digital de 8
puntos, 16 puntos o 32 puntos.
El parámetro ALT identifica el slot en el rack principal del módulo objeto. Por ejemplo, un valor
constante de 2 en ALT indica que el módulo en el slot 2 es el módulo objeto. Los parámetros ST y
END definen el rango de la memoria sobre el que actúa la función.
Nota
La única comprobación asociada al bloque de la función DOIO avanzada es una
comprobación básica del estado del módulo objeto.
La función DOIO avanzada sólo se aplica a los módulos situados en un rack de CPU modular. Por
tanto, el parámetro ALT debe estar entre 2 y 5 para un rack de 5 slots o entre 2 y 10 para un rack de
10 slots.
Las referencias iniciales (ST) y finales (AND) deben ser bien %I, o %Q. Estas referencias
especifican la primera y última referencia para las que se ha configurado el módulo. Por ejemplo, si
un módulo de entrada de 16 puntos se configura en %I0001 hasta %I0016 en el slot 7 de un rack
principal (CPU) de 10 slots, el parámetro ST debe ser %I0001, el parámetro END debe ser %I0016
y el parámetro ALT debe ser 10, como se muestra a continuación:
|
| _____
|%M0001 | | %Q0001
|——| |———|DO_IO|———————————————————————————————————————————————————————————( )-
| | |
| | |
|%I0001 -|ST |
| | |
| | |
|%I0016 -|END |
| | |
| | |
| 7 —|ALT |
| |_____|
|
12-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
La siguiente tabla compara los tiempos de ejecución de un bloque de función DOIO normal para un
módulo de entrada/salida digital de 8 puntos, 16 puntos o 32 puntos con aquellos del bloque de
función DOIO avanzada.
El bloque de función SER tiene una salida y tres entradas: habilitar, reset (R) y activador (T).
| _____
|%T0003 | | %M0003
|——| |———| SER_|——————————————————————————————————————————————————————————( )—
| | |
| | |
|%T0001 | |
|——| |———|R |
| | |
|%T0002 | |
|——| |———|T |
| |_____|
|
| %R0100
12-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Como se muestra a continuación, los canales 8, 16, 24 ó 32 pueden configurarse, de modo que cada
canal represente un punto digital. Además, se pueden especificar hasta 1024 muestras.
32 1
Parámetros
Parámetro Descripción
habilitar Siempre que la función esté habilitada y la entrada reset desactivada, el bloque de
función SER recoge una muestra de todos los canales configurados.
R Cuando la entrada reset recibe flujo de energía, la función SER se reinicializa
independientemente del estado de la entrada habilitar. El búfer de muestras, offset de
muestra de activación, hora de activación y offset de muestra actual se ponen a cero. El
bloque de función permanece en el estado reset hasta que se retira el flujo de energía de
la entrada reset. La salida OK se desactiva mientras el estado reset está activo. Cuando
se retira el flujo de energía de la entrada reset, se reanuda el muestreo.
T Si se selecciona el modo de entrada activador y el bloque de función está habilitado,
cuando la entrada activador se activa, la SER pasa al estado activador. La hora de
activación, el offset de muestra activadora y la muestra de datos son registrados.
La muestra activadora se registrará independientemente del número de muestras
tomadas. Una vez activado, el registro de sucesos continúa el muestreo hasta satisfacer el
número de muestras tras la activación, momento en el que deja de recoger muestras hasta
que el flujo de energía llega a la entrada reset.
Si el modo activador se pone en búfer completo, la señal activadora será ignorada.
Para más información sobre la configuración del modo activador, véase “Bloque de
control de función” en la página 12-12.
Referencia La tabla de bloque de control de función de 78 palabras comienza en esta referencia. El
inicial bloque de control de función define la ejecución del bloque de función, la configuración
de muestras y los parámetros de operación. Para más detalles, véase “Bloque de control
de función” en la página 12-12
ok La salida ok está activada cuando se satisfacen las condiciones de activación
(especificadas por el parámetro de modo activación), y todo el muestreo está completo.
La salida continúa recibiendo flujo de energía independientemente del estado de la salida
habilitar hasta que reset recibe flujo de energía.
12-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
12-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Operación SER
Si la función SER está habilitada durante la exploración, lee los puntos de muestra configurados y
los coloca en una lista circular. Después de que se ha tomado el número configurado de muestras,
la salida se activa. La transición de la salida puede usarse para registrar la hora en que se ha tomado
la última muestra o para iniciar un muestreo adicional. (Véase “Modos de muestreo.”)
El bloque de función SER debe estar en reset (habilite el flujo de energía a la entrada reset) antes de
comenzar el muestreo. Efectuando reset se inicializa el área de bloque de datos. Si el estado del
bloque de función no es reset, se ejecutará con los valores actuales en el bloque de datos,
ocasionando que el offset de muestra actual sea incorrecto y haya datos no válidos en el bloque de
datos.
12-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
El bloque de control del bloque de función SER es explorado cada vez que el bloque de función se
ejecuta en los estados Reset, Activo o Activado. Si modifica un parámetro de configuración en el
bloque de control durante la ejecución del programa, la modificación tendrá efecto la próxima vez
que se explore el bloque de función SER asociado con ese bloque de control. Si se encuentra un
error, la operación se interrumpe y el bloque de función pasa al estado de error correspondiente.
Debe corregir el error y reinicializar el bloque de función (habilite el flujo de energía de la entrada
reset) para comenzar de nuevo el muestreo.
Si selecciona un módulo de entrada para ser explorado, el PLC no verificará que el módulo es un
módulo de entrada digital, o que las descripciones de canal asociadas al módulo tienen longitudes y
offset válidos basados en el tamaño del módulo. Debe preparar correctamente el muestreo de un
módulo de entrada. A pesar de que múltiples descripciones de canal pueden corresponder a un
módulo de entrada, el módulo sólo será explorado una vez por ejecución del bloque de función.
El bloque de función SER puede colocarse en el programa lógico normal del usuario o dentro de
una subrutina periódica. Si se coloca en un programa lógico del usuario, la resolución del intervalo
entre exploraciones es la resolución del tiempo de exploración, el cual puede variar dependiendo
del número y tipo de funciones activas en una exploración determinada. Si se coloca en una
subrutina de interrupción, el intervalo puede definirse tan pequeño como 1ms, y la resolución se
podrá repetir con 1ms con pequeña fluctuación.
El tiempo de ejecución de un bloque de función con una subrutina periódica de 1ms puede
consumir hasta el 50% de los recursos de la CPU. No se deberá planificar la ejecución de más de
dos funciones SER dentro de una subrutina periódica de 1ms.
Modos de muestreo
El modo de muestreo SER es determinado por los parámetros del modo activador (Palabra 2 en el
bloque de control de función) y el número de muestras tras la activación (Palabra 10). Deberá
interpretar el contenido del búfer de muestras basándose en cómo ha configurado estos parámetros.
La siguiente tabla resume cómo se determinan los modos de muestreo.
Modo Palabra 2 Palabra 10
Preactivación 0 0
Media 0 Desde 1 hasta (número de muestras – 1)
activación
Posactivación 0 Igual al número de muestras (especificada en Palabra 9)
Búfer 1 Palabra 10 y la señal de entrada de activación son
completo ignoradas
Si se recogen más muestras que las configuradas en el número de muestras (Palabra 9) antes de que
se cumpla la condición del número de muestras tras la activación, el búfer se “enrrolla”, lo que
significa que la SER vuelve al comienzo del búfer y sobrescribe las muestras iniciales.
Cuando el activador pasa por primera vez de desactivado a activado, la hora del activador se coloca
en una posición configurada.
Preactivación
Recoge muestras continuamente hasta que de detecta el activador.
Para configurar este modo, ponga la Palabra 10 al valor 0, de modo que cuando se active la señal
del activador, el muestreo se detenga y se genere una marca de la hora. (Todas las muestras son
recogidas antes de la activación.)
Habilitar – comienza el
muestreo Muestra 1 Muestra 513
Muestra 2 Muestra 514
Muestra 3 Muestra 515
Muestra 4 Muestra 516
Media activación
Recoge muestras continuamente hasta que se alcanza el número de muestras tras la
activación.
Para configurar este modo, ponga la Palabra 10 a un valor entre 1 y el (número de muestras – 1).
Cuando la señal de activador se activa, el muestreo continúa hasta que se alcanza el número
configurado. En el siguiente ejemplo, el número de muestras tras la activación es 12. Cuando
finalice el muestreo, el búfer contendrá 500 muestras de preactivación y 12 muestras de
posactivación.
12-18 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Habilitar – comienza el
muestreo Muestra 1 Muestra 513
Muestra 2 Muestra 514
Muestra 3 Muestra 515
El muestreo se detiene Muestra 4 Muestra 516
cuando se alcanza el
Número de muestras Muestra 5 Muestra 517
tras la activación (12) Muestra 6
Cuando el búfer está lleno,
las nuevas muestras
sobrescriben las iniciales.
Muestra 506
Muestra 507
Activador - SER genera la
marca de la hora y continúa Muestra 508
el muestreo Muestra 509
Muestra 510
Muestra 511
Figura 12-2. Ejemplo de muestreo SER de media activación (para 512 muestras)
Posactivación
Recoge muestras continuamente hasta que se alcanza el número de muestras.
Para configurar este modo, ponga la Palabra 10 a un valor igual al número de muestras (Palabra 9).
Cuando la señal de activador se activa, el muestreo continúa hasta que se alcanza el número
configurado. (Nota: Todas las muestras son recogidas después de la activación.)
Habilitar – comienza el
muestreo Muestra 1 Muestra 513
Muestra 2 Muestra 514
Muestra 3 Muestra 515
Formato BCD
Nº de palabra de bloque de Contenido Formato de
datos (Byte alto/Byte bajo) indicación sugerido
Palabra 2 Mes/Año Hex (MMYY)
Palabra 3 Horas/Día del mes Hex (HHDD)
Palabra 4 Segundos/Minutos Hex (SSMM)
Palabra 5 No usada Todo ceros
Formato POSIX
Nº de palabra de bloque de Contenido Formato de
datos indicación sugerido
Palabras 2 y 3 Número de segundos Dint
desde el 1 de Enero, 1970
Palabras 4 y 5 Número de nanosegundos Dint
en el siguiente segundo
Ejemplo
Las dos tablas siguientes muestran como se indicaría la hora de activación del 3 de Noviembre de
1998 a las 8:34:05.010 a.m. en los formatos BCD y POSIX en un bloque de datos que comienza en
%R0201 (Palabra 0).
12-20 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Ejemplo de SER
A continuación se muestra la relación de la instrucción de la lógica de contactos, el bloque de
control en la memoria del PLC y el módulo de entrada afectado del PLC. El bloque de control se
ha configurado como se ha descrito en la Tabla 12-1.
%I0016 %M0100
SER
%M0002
R
%M0050
T
PLC Series 90-30, Rack 0
Fuente CPU
%R0100 de
alimen-
tación
Número de slot: 1 2 3 4 5 6 7 8 9 10
Bloque de control
Palabra #Dirección Valor Descripción
0 %R0100 0 Palabra de estado
1 %R0101 0 Datos adicionales de estado
2 %R0102 0 Modo activador (0 = entrada activador)
3 %R0103 0 Formato hora de activación (0 = BCD)
4 %R0104 0 Reservado
5 %R0105 0 Reservado
6 %R0106 0 Reservado
7 %R0107 0 Reservado
8 %R0108 24 Bits por canal
9 %R0109 512 Tamaño de búfer de muestras
10 %R0110 12 Número de muestras tras la activación
11 %R0111 4 Especifica módulo de entrada en slot 4
12 %R0112 8 Tipo de memoria bloque de datos (%R)
%R0201
13 %R0113 200 Offset memoria bloque de datos (201)
14 %R0104
Descripciones de canal
Bloque de datos
Palabra # Dirección Valor Descripción
0 %R0201 0 Número offset muestra actual
1 %R0202 0 Número offset muestra de activación
2 %R0203 0 Mes y año (MMYY)
3 %R0204 0 Hora y día (HHDD)
4 %R0205 0 Segundos y minutos (SSMM)
5 %R0206 0 No usada
6 %R0207
Búfer de muestras (tamaño especificado en
Palabra 9 de Bloque de Control)
12-22 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
El offset de la muestra actual es 59, lo que significa que la muestra número 59 es la última colocada
en el búfer de muestras. Con 3 bytes por muestra, el offset actual está en 59 * 3 = 177 bytes o el bit
alto del registro 89. Dado que las condiciones de activación no se han cumplido, la muestra de
activación y la hora de activación son 0 y la salida no está activada. El búfer de muestras contiene
512 muestras donde 59 es la muestra más reciente y 60 es la muestra más antigua.
12-24 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
%R00207 es el primer registro en el bloque de datos que actualmente tiene los datos de entrada
medidos. Observe que su valor entero (-21855) no tiene mucho significado en este contexto; sin
embargo, colocando el cursor en %R00207, su valor es indicado en binario cerca de la parte
superior de la pantalla. Utilizando este formato binario, puede determinar los estados de los bits
configurados en la parte de las descripciones de los canales del bloque de control.
Los registros %R00203 hasta %R00205 proporcionan la hora y la fecha, en formato de 24-horas,
como 16:06 (y 57 segundos) el 15 de Mayo de 2001.
%R00207
Representado en
binario
END (FIN)
La función END proporciona un fin de lógica temporal. El programa se ejecuta desde el primer
escalón hasta el último escalón o hasta la función END, lo que se encuentre primero.
La función END finaliza incondicionalmente la ejecución del programa. No puede haber nada
después de la función de fin del circuito. No se ejecuta ninguna lógica más allá de la función END
y el control se transfiere al comienzo del programa para el siguiente barrido. Observe que en los
escalones después de la marca END, las entradas parecerán activarse y desactivarse, pero las
salidas no serán actualizadas. Aunque esto sea normal, aparecerá como un problema si no es
evidente que la marca END precede a los escalones afectados.
La función END es útil para depurar errores ya que permite aislar una parte de la lógica. Esto lo
consigue impidiendo que se ejecute cualquier lógica que esté detrás.
El software de programación Logicmaster proporciona por defecto una marca [ FIN DE LA
LOGICA DEL PROGRAMA ] tras el último escalón de la lógica para indicar el final de la
ejecución del programa. Esta marca se utiliza si en la lógica no se ha programado ninguna función
fin de lógica.
[ END ]
Ejemplo
En el siguiente ejemplo, el escalón que contiene el contacto %I0222 y la bobina %Q0017, y los
escalones tras de él, no se ejecutarán debido a la presencia de una instrucción END.
%M0100 %M0101
[ END ]
%I0222 %Q0017
Nota
Colocando una función END en la lógica SFC o en una lógica llamada por la
lógica SFC produce un fallo “Función END ejecutada por acción de SFC” en las
CPUs versión 7 o posteriores. (En CPUs de versiones anteriores a la 7, no
funcionará correctamente, pero no generará ningún fallo.) Para más información
sobre este fallo, consulte el apartado “Discordancia en la configuración del
sistema” del Capítulo 3, Sección 2.
12-26 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Una función de relé de control maestro (MCR/MCRN) debe utilizarse con la correspondiente
función de fin de relé de control maestro (ENDMCR/ENDMCRN). Ambas funciones deben tener
el mismo nombre. La MCR/MCRN debe tener un contacto habilitar entre la misma y la línea de
alimentación. Todos los escalones entre una función MCR/MCRN habilitada y su correspondiente
función ENDMCR/ENDMCRN se ejecutan sin flujo de energía hacia las bobinas. La función
ENDMCR/ENDMCRN asociada a la MCR/MCRN hace que se reanude la ejecución normal del
programa. A diferencia de la instrucción JUMP (salto), una MCR/MCRN sólo puede producirse en
la dirección hacia adelante. Una instrucción ENDMCR/MCRN debe aparecer en el programa
después de su correspondiente función MCR/MCRN.
Los siguientes controles se imponen en la lógica controlada por una MCR/MCRN habilitada:
• Los temporizadores no incrementan o decrementan. Cualquier temporizador de tipo TMR se
reinicializa (el acumulador se pone a cero). Para un temporizador ONDTR, el acumulador se
“congela” en el valor que era el actual al habilitar MCR/MCRN.
• No se produce flujo de energía para ninguna instrucción. Las salidas normales están
desactivadas; las salidas inversas están activadas.
• Las instrucciones no actualizan sus salidas. Por ejemplo, una instrucción ADD no producirá la
suma actual en su registro de salida Q, una instrucción mover no copiará el valor de entrada
actual en su salida, el registro de desplazamiento no desplazará datos, etc. Los valores en estos
registros de salida quedarán congelados en los valores presentes cuando se habilitó
MCR/MCRN.
Nota
Cuando una MCR/MCRN recibe energía, la lógica que controla se evalúa y es
indicado el estado de contactos, pero las salidas no se activan. Si no es consciente
de que MCR/MCRN está controlando la lógica que está observando, esto puede
parecer un estado de fallo. Para indicar que un rango de lógica de contactos está
bajo el control de MCR/MCRN, Logicmaster indica una línea doble de
alimentación en la pantalla de la lógica de contactos. Esta línea doble de
alimentación aparecerá independientemente de que la MCR/MCRN esté
habilitada o no.
El software Logicmaster 90-30/20/Micro soporta dos formas de la función relé de control maestro,
una antigua, no anidada (MCR) y una más nueva, forma anidada (MCRN).
Compatibilidad de la CPU
Tipo de CPU Forma soportada
CPU311 – CPU341, versión 1 Usa sólo la forma no anidada (MCR)
CPU311 – CPU341, versión 2 y posterior Usa sólo la forma anidada (MCRN)
CPUs de las series 35x 36x y 37x Usa sólo la forma anidada (MCRN)
En la conversión de un programa de CPU340 o CPU341 para ejecutarlo en una CPU de las series
35x/36x/37x, es posible que aparezca el error “Función no soportada” (“Niveles de anidamiento
excedidos”) del Logicmaster 90. Esto puede suceder cuando el programa convertido se almacena
en una CPU 35x/36x/37x si se utilizan más de ocho niveles de anidamiento MCRN en el programa
original.
Las instrucciones MCRN son en realidad instrucciones de bloque de función en la CPU340/341, lo
cual significa que se ejecutan en el firmware de la CPU y no en el Coprocesador Booleano
integrado (BCP). El límite de anidamiento para el bloque de función estaba establecido en 256.
Este límite comprende muchos más niveles de los que normalmente va a utilizar. Cuando se
diseñaron las series 35x/36x/37x de CPUs, las instrucciones MCRN se pasaron al BCP para
mejorar las prestaciones de la CPU (Las instrucciones del bloque de función se ejecutan más
lentamente que las copias del BCP). En aquel entonces se realizó una transacción de niveles de
anidamiento y prestaciones y el BCP3 utilizado en las CPUs 35x/36x/37x fue implementado con
ocho niveles de anidamiento, que son normalmente más de los que el usuario necesita. Así,
Logicmaster 90 posibilita la ejecución de ocho niveles de anidamiento cuando se realiza la
conversión del programa, y si se utilizan más de ocho niveles, se emite un mensaje de “Niveles de
anidamiento excedidos”.
Por tanto, si tiene más de ocho niveles de anidamiento MCR en un programa CPU340/341, será
necesaria una modificación para operar en una CPU 35x/36x/37x. En su lugar se podría considerar
el uso de sentencias Jump (salto).
Anidamiento de MCRN
Una función MCRN puede colocarse en cualquier parte dentro de un programa, siempre que esté
correctamente anidada con respecto a otras MCRNs, y no esté en el rango de MCR o JUMP no
anidadas.
Si un par MCRN/ENDMCRN está anidado dentro de otro par MCRN/ENDMCRN, debe estar
completamente contenida dentro del otro par. Están permitidos hasta ocho niveles de anidamiento.
Véase el ejemplo en la página 12-31.
Puede haber múltiples funciones MCRN correspondientes a una única ENDMCRN (excepto para
las CPUs de las series 35x/36x/37x como se menciona más abajo). Cada MCRN así como la
ENDMCRN deben tener el mismo nombre. Está es análoga a la JUMP anidada, donde se pueden
tener múltiples JUMPs para la misma LABEL. Encontrará la comparación de las funciones JUMP
y MCR en la sección “Diferencias entre MCRs y Jumps” más abajo.
Nota
Use sólo una MCRN por cada ENDMCRN con las CPUs 35x, 36x y 37x.
12-28 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Operación MCR
Sólo puede haber una instrucción MCR por cada instrucción ENDMCR. El rango para las MCRs y
ENDMCRs no anidadas no puede solapar o contener el rango de cualquier otro par de
MCR/ENDMCR o cualquier otro par de instrucciones JUMP/LABEL(salto/etiqueta).Las MCRs no
anidadas no pueden estar dentro del espacio de ningún otro par JUMP/LABEL.
Parámetros
Ambas formas de la función MCR tienen los mismos parámetros. Las dos tienen una entrada
booleana habilitar EN y un nombre que identifica a la MCR. Este nombre se usa de nuevo con la
instrucción ENDMCR. Ninguna de las funciones MCR o MCRN tiene salidas; después de una
MCR no puede haber nada en un circuito.
??????? ???????
[ M* C[ R ]M o --[[MMCCRRNN]
%I0004 %M0210
add
INT
%R0001
I1
+13069 %R0010
Q
CONST +00878
I2
+00100
OPCIÓN
[ ENDMCRN ]
Con una función JUMP, no se evalúan los bloques de función entre el salto (JUMP) y la etiqueta
(LABEL), y las bobinas no se ven afectadas. En el siguiente ejemplo, cuando %I0001 está
ACTIVADA, el JUMP denominado TEST1 está habilitado. Dado que se salta la lógica entre el
salto (JUMP) y la etiqueta (LABEL), %M0210 no se ve afectada (si estaba ACTIVADA,
permanece ACTIVADA; si estaba DESACTIVADA, permanece DESACTIVADA). El estado de
los contactos tales como %M0004 y los valores de los registros usados en las entradas, tales como
%R0001, se actualizarán en la pantalla del Logicmaster, pero los registros en las salidas bajo el
control de JUMP, como %R0010, se congelarán en sus valores actuales cuando JUMP está
habilitado.
%I0001
N TEST1
%M0004 %M0210
ADD
INT
%R0001
I1
+13069 Q %R0010
CONST +00878
I2
+00100
TEST1 :
12-30 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Ejemplo 1
El siguiente ejemplo muestra una MCRN denominada “Segunda” anidada dentro de la MCRN
denominada “Primera.” Siempre que %I0002 permita el flujo de energía a la función MCRN, la
ejecución del programa continuará sin flujo de energía hacia las bobinas hasta que se alcance la
ENDMCRN asociada. Si %I0001 y %I0003 están ACTIVADAS, %Q0001 está DESACTIVADA y
%Q0003 permanece ACTIVADA.
Para facilitar la localización de fallos en los programas de contactos, una línea doble de
alimentación identifica la lógica que está dentro del rango de control de una MCR.
|
|%I0002 PRIMERA
|——| |———[ MCRN ]
|
||
||
||%I0004 SEGUNDA
||——| |———[ MCRN ]
||
||
||
||%I0001 %Q0001
||——| |————————————————————————————————————————————————————————————————————( )—
||
||
||
||%I0003 %Q0003
||——| |————————————————————————————————————————————————————————————————————(S)—
||
||
|| SEGUNDA
|+[ ENDMCRN ]
||
||
||
| PRIMERA
+[ ENDMCRN ]
|
Ejemplo 2
En el siguiente ejemplo, el primer escalón funciona con normalidad. Sin embargo, la MCRN de
nombre SKIP controla el resto de los escalones, que disponen de una línea doble de alimentación
que lo indica. En el primer escalón controlado por la MCRN, el valor acumulado del temporizador
ONDTR (%R0004) está congelado, y a pesar de que ha alcanzado su valor predefinido, su salida
(%M0200) no está activada. En el siguiente escalón, el TMR ha sido reinicializado por MCRN.
Su valor acumulado (%R0007) se mantiene a cero y su salida (%M02025) no está activada. En el
siguiente escalón, la salida de la instrucción ADD está congelada (su salida en %R0010 no es la
suma de sus entradas) y su bobina de flujo de energía (%M0210) no está activada. Observe, sin
embargo, que el estado de los contactos y los valores de los registros de entrada (como %R0001 en
la entrada I1 de la instrucción ADD) están actualizadas en pantalla dentro del área de control de
MCRN.
%I0001 %M0100
ONDTR
0.10s
%M0001
R
CONST PV
+12000
%R0001
+13069
%M0150 SKIP
[ MCRN ]
%I0002 %M0200
ONDTR
0.10s
%M0001
R
CONST PV
+12000
%R0004
+12131
%I0003 %M0205
TMR
0.10s
%M0001
R
CONST PV
+12000
%R0007
+00000
%I0004 %M0210
ADD
INT
%R0001
I1
+13069 %R0010
Q
CONST +00878
I2
+00100
SKIP
[ ENDMCRN ]
12-32 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
??????? ???????
-[ ENDMCR ] o -[ ENDMCRN ]
Ejemplo
En los siguientes ejemplos, una instrucción ENDMCR es programada para finalizar la MCR
denominada “BORRAR.”
Ejemplo de una ENDMCR no anidada
|
| BORRAR
|
|-[ ENDMCR ]
|
|
| BORRAR
|
|-[ ENDMCRN ]
|
JUMP (SALTO)
Utilice la instrucción JUMP (salto) para eludir una parte de la lógica del programa. La ejecución
del programa continúa en la etiqueta (LABEL) especificada. Cuando el salto está activo, todas las
bobinas dentro de su alcance quedan en sus estados previos. Esto incluye las bobinas asociadas a
temporizadores, contadores, cierres y relés.
El software Logicmaster 90-30/20/Micro soporta dos formas de la instrucción JUMP, una forma no
anidada y otra anidada. La forma no anidada está disponible a partir de la versión 1 del firmware
para las CPUs CPU311-CPU341, y tiene la forma ——————>>LABEL01, donde LABEL01
es el nombre de la correspondiente instrucción LABEL no anidada.
Para las instrucciones JUMPs no anidadas, sólo puede haber una única instrucción JUMP por cada
instrucción LABEL. El salto puede ser hacia adelante o hacia atrás.
El rango para las JUMPs y LABELs no anidadas no puede solapar o contener el rango de cualquier
otro par de JUMP/LABEL o cualquier otro par de instrucciones MCR/ENDMCR. Las
instrucciones JUMP no anidadas y sus LABEL correspondientes no pueden estar dentro del campo
de ningún otro par JUMP/LABEL o par MCR/ENDMCR. Además, un par MCR/ENDMCR u otro
par JUMP/LABEL no puede estar dentro del campo de un par JUMP/LABEL no anidado.
Nota
La forma no anidada de la instrucción JUMP es la única instrucción JUMP que
puede utilizarse en la versión 1 del PLC de las Series 90-30. La función JUMP
anidada puede utilizarse (y se sugiere su uso) para todas la aplicaciones nuevas.
Además, se ruega observar que las CPUs de las series 35x/36x/37x soportan sólo
saltos anidados.
12-34 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
JUMP no anidada:
JUMP anidada:
Precaución
Para evitar la creación de un lazo sin fin con instrucciones de salto hacia
atrás, un salto hacia atrás debe contener alguna manera de hacerlo
condicional.
Ejemplos
En el siguiente ejemplo, siempre que el contacto %I0001 se activa, el JUMP denominado TEST1
se habilita, y el flujo de energía se transfiere a LABEL TEST1. Dado que se salta la lógica entre el
salto (JUMP) y la etiqueta (LABEL), %M0210 no se ve afectada (si estaba ACTIVADA,
permanece ACTIVADA; si estaba DESACTIVADA, permanece DESACTIVADA). El estado de
los contactos tales como %M0004 y los valores de los registros usados en las entradas, tales como
%R0001, se actualizarán en la pantalla del Logicmaster, pero los registros en las salidas bajo el
control de JUMP, como %R0010, se congelarán en sus valores actuales cuando JUMP está
habilitado. Observe el uso de la doble línea de alimentación en la sección de la lógica situada entre
el JUMP y su LABEL.
%I0001
N TEST1
%M0004 %M0210
ADD
INT
%R0001
I1
+13069 Q %R0010
CONST +00878
I2
+00100
TEST1 :
LABEL (ETIQUETA)
La instrucción LABEL (etiqueta) funciona como destino objetivo de una instrucción JUMP (salto).
Utilice la instrucción LABEL para reanudar la ejecución normal del programa después de una
instrucción JUMP.
En un programa puede aparecer sólo una etiqueta con un nombre de etiqueta determinado. Los
programas sin un par acoplado JUMP/LABEL pueden ser creados y almacenados en el PLC, pero
no pueden ejecutarse.
El software Logicmaster 90-30/20/Micro soporta dos formas de la función LABEL, una forma no
anidada y otra anidada. Por ejemplo, la forma no anidada, LABEL01 :, debe usarse con la función
JUMP no anidada, ——————>>LABEL01; la forma anidada, LABEL01 : (anidada), debe
usarse con la función JUMP anidada, ———N——>>LABEL01.
La instrucción LABEL no tiene entradas ni salidas; además, antes o después de una etiqueta
(LABEL) no puede haber nada en un escalón.
LABEL no anidada:
???????:
???????:
LABEL anidada:
???????:(anidada)
Ejemplo
En el siguiente ejemplo, cuando JUMP TEST1 está habilitada, la exploración salta hacia adelante a
TEST1 : LABEL (anidada), lo cual significa que el escalón entre JUMP y LABEL no es explorado.
%I0001
N TEST1
%M0004 %M0210
ADD
INT
%R0001
I1
+13069 %R0010
Q
CONST +00878
I2
+00100
TEST1 : (anidada)
12-36 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
COMMENT (COMENTARIO)
Los comentarios son de utilidad para añadir explicaciones, notas, información sobre revisiones, etc.
a sus programas de contactos. El uso de los comentarios es aconsejable ya que proporcionan
valiosa información a aquellos que tengan que localizar fallos o actualizar el sistema en el futuro.
Además, dado que la memoria humana no es perfecta, los comentarios son referencias valiosas
incluso para el creador del programa de contactos.
Nota
Para conservar la memoria del PLC, las anotaciones (comentarios, alias y
descripciones) no se escriben en el PLC. Por tanto, para poder ver estas
anotaciones deberá tener una copia de la carpeta original del programa (que
incluye las anotaciones) en su ordenador. Entonces, cuando conecte su ordenador
al PLC, los enlaces a las anotaciones será automáticamente realizados por su
software de programación.
Crear un comentario
1. Cree un nuevo escalón. Un escalón COMMENT no puede contener otra lógica además de la
instrucción COMMENT.
2. Inserte COMMENT, que se encuentra en el grupo de instrucciones control.
3. Acepte el escalón pulsando la tecla Escape.
4. Mueva el cursor sobre la instrucción (* COMMENT *) que acaba de crear y pulse la tecla de
Zoom (F10) para entrar en la pantalla de editor de comentarios.
5. Introduzca el texto de su comentario. Observe que las líneas no pasan automáticamente en el
editor de comentario. Debe pulsar la tecla Intro al final de la línea para comenzar a escribir el
texto en la línea siguiente.
6. Una vez terminado, pulse Escape para salir del editor de comentario y guardarlo.
Una vez creado, el texto COMMENT puede ser leído o editado moviendo el cursor a (*
COMMENT *) y seleccionando el Zoom (F10). Los comentarios pueden también imprimirse
mediante el menú imprimir del Logicmaster.
12-38 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Parámetros
Parámetro Descripción
habilitar Cuando habilitar está activado, se ejecuta la petición de servicio.
FNC Cada tipo de petición de servicio tiene un único número de función, que debe
programarse en la entrada FNC. FNC puede contener una constante o una dirección de
referencia que contenga el número de función del servicio solicitado.
PARM PARM contiene la referencia inicial del bloque de parámetros para el servicio pedido.
ok La salida ok se activa cuando la función se ejecuta sin error.
12-40 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Ejemplo
En el siguiente ejemplo, cuando el contacto habilitar %I0001 está ACTIVADO, la función
SVCREQ número 7, especificada en la entrada FNC, se ejecuta. El bloque de parámetros de la
función comienza en %R0001 (especificado en PARM). La bobina de salida %Q0001 se
ACTIVA, si la operación se ejecuta correctamente.
| _____
|%I0001 | | %Q0001
|——| |———| SVC_|———————————————————————————————————————————————————————————( )—
| | |
| | REQ |
| | |
| CONST —|FNC |
| 00007 | |
| | |
| | |
|%R0001 —|PARM |
| |_____|
|
Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 1, comenzando por la versión 8.0.
0 dirección
ignorada dirección + 1
Para habilitar el modo de BARRIDO CONSTANTE, introduzca la función SVCREQ #1 con este
bloque de parámetros:
1 dirección
0 o el valor del dirección + 1
temporizador
Nota
Si el temporizador debe utilizar un nuevo valor, introdúzcalo en la segunda
palabra. Si no desea modificar el valor del temporizador, introduzca 0 en la
segunda palabra. Si el valor del temporizador todavía no existe, al introducir 0 la
función pone la salida OK en OFF.
Para modificar el valor del temporizador sin modificar la selección para el estado de modo de
barrido, introduzca la función SVCREQ #1 con este bloque de parámetros:
2 dirección
nuevo valor de dirección + 1
temporizador
12-42 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Para leer el estado y valor actuales del temporizador sin modificar ninguno de ellos, introduzca la
función SVCREQ #1 con este bloque de parámetros:
3 dirección
ignorada dirección + 1
Nota
Después de utilizar la función SVCREQ #1 con el bloque de parámetros de la
página anterior, las CPUs de versión 8 y superior proporcionarán los valores de
retorno 0 para el barrido normal y 1 para el barrido constante. No confunda estos
valores con los valores de entrada que se muestran a continuación.
0 = deshabilitada dirección
1 = habilitada
valor actual del dirección + 1
temporizador
Ejemplo
Este ejemplo muestra la lógica en un bloque de programa. Cuando se habilita el contacto
OV_SWP, se lee el temporizador de barrido constante, se aumenta el temporizador en dos
milisegundos y se devuelve el nuevo valor del temporizador al PLC. El bloque de parámetros se
encuentra en la memoria local en la posición %R3050. Dado que las funciones MOVE y ADD
requieren tres posiciones de contacto horizontales, la lógica del ejemplo emplea una bobina interna
digital %M0001 como posición temporal para almacenar el resultado satisfactorio de la línea del
primer escalón. En cualquier barrido en el cual no se haya activado OV_SWP, se desactiva
%M0001.
12-44 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Utilice la función SVCREQ #2 para obtener los valores del tiempo para el modo de ventana actual
para la ventana de comunicaciones con el programador y la ventana de comunicaciones con el
sistema.
Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 2, comenzando por la versión 8.0.
Ejemplo
En el siguiente ejemplo, cuando está activada la habilitación de la salida %Q0102, el sistema
operativo del PLC coloca los valores de tiempo actual de las tres ventanas en el bloque de
parámetros que comienza en la posición %R0100. Ejemplos adicionales que ilustran la función leer
los valores de la ventana están incluidos en las siguientes tres descripciones de la función SYS
REQ.
| _____
|%Q0102 | |
|——| |———| SVC_|
| | REQ |
| | |
| CONST —|FNC |
| 0002 | |
| | |
| %R0100—|PARM |
| |_____|
|
12-46 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 3, comenzando por la versión 8.0.
La función SVCREQ #3 pasará flujo de energía hacia la derecha a menos que se seleccione un
modo distinto de 0 (Limitado), 1 (Constante) o 2 (Ejecutar hasta terminar).
El bloque de parámetros tiene una longitud de una palabra.
Para deshabilitar la ventana del programador, introduzca la función SVCREQ #3 con este bloque
de parámetros:
0 0 dirección
Para habilitar la ventana del programador, introduzca la función SVCREQ #3 con este bloque de
parámetros:
Ejemplo
En el siguiente ejemplo, cuando %M0125 se activa, se habilita la ventana de comunicaciones del
programador y se le asigna un valor de 25ms. El bloque de parámetros se encuentra en la posición
de memoria %R5051.
| %I0001 %M0125
|——| |—————————————————————————————————————————————————————————————————(↑)—
|
| _____ _____
| %M0125 | | | | %T0002
|——| |———|MOVE_|———————————————————| SVC_|—————————————————————————————( )—
| | INT | | REQ |
| | | | |
| CONST —|IN Q|— %R5051 CONST —|FNC |
|+00025 | LEN | 00003 | |
| | 0001| | |
| |_____| %R5051—|PARM |
| |_____|
| %I0002 %M0126
|——| |—————————————————————————————————————————————————————————————————(↑)—
|
| _____ _____
| %M0126 | | | | %T0002
|——| |———|MOVE_|———————————————————| SVC_|—————————————————————————————( )—
| | INT | | REQ |
| | | | |
| CONST —|IN Q|— %R5051 CONST —|FNC |
|+00000 | LEN | 00003 | |
| | 0001| | |
| |_____| %R5051—|PARM |
| |_____|
12-48 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
La función SVCREQ #4 pasará flujo de energía hacia la derecha a menos que se seleccione un
modo distinto de 0 (Limitado), 1 (Constante) o 2 (Ejecutar hasta terminar).
El bloque de parámetros tiene una longitud de una palabra.
Para deshabilitar la ventana de comunicaciones del sistema, introduzca la función SVCREQ #4 con
este bloque de parámetros:
Para habilitar la ventana de comunicaciones del sistema, introduzca la función SVCREQ #4 con
este bloque de parámetros:
Ejemplo
En el siguiente ejemplo, cuando la salida habilitar %M0125 se activa, se lee el modo y el valor del
temporizador de la ventana de comunicaciones del sistema. Si el valor del temporizador es mayor o
igual a 25 ms, el valor no se modifica. Si es menor que 25 ms, el valor se modifica a 25 ms. En
ambos casos, cuando finaliza la ejecución del escalón la ventana se habilita. El bloque de
parámetros para las tres ventanas está en la posición %R5051. Dado que el modo y el temporizador
para la ventana de comunicaciones del sistema es el segundo valor en el bloque de parámetros
devuelto de la función leer los valores de ventana (función #2), la posición del tiempo de la ventana
existente para la ventana de comunicaciones del sistema está en el byte bajo de %R5052.
| %I0001 %M0125
|——| |——————————————————————————————————————————————————————————————(↑)—
|
| _____ _____ _____
| %M0125 | | | | | |
|——| |———| SVC_|——————————| AND_|——————————————————| AND_|
| | REQ | | WORD| | WORD|
| | | | | | |
| CONST —|FNC | %R5052—|I1 Q|— %R5060 %R5052—|I1 Q|—%R50061
| 0002 | | | | | |
| | | | | CONST —|I2 |
| %R5051—|PARM | CONST —|I2 | FF00 | |
| |_____| 00FF |_____| |_____|
|
|
| _____ _____ _____
| %M0125 | | | | | |
|——| |———| LT | +————————————| OR |————————————————|SVC_ |—
| |WORD | | |WORD | | REQ_|
| | | | | | | |
| %R5060—|I1 Q|———————+ %R5061—|I1 Q|— %R5052 CONST —|FNC |
| | | | | 0004 | |
| CONST —|I2 | CONST —|I2 | | |
| 0025 | | 0025 | | %R5052—|PARM |
| |_____| |_____| |_____|
|
12-50 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Después de que la función se haya ejecutado, ésta devuelve la suma de comprobación actual a la
segunda palabra del bloque de parámetros. No se especifica ningún rango para la función leer; el
valor devuelto es el número de palabras del que se está haciendo la suma de comprobación.
0 dirección
número de palabras actual dirección + 1
El introducir 1 hace que el PLC ajuste el número de palabras de la que va a efectuarse la suma de
comprobación al valor dado en la segunda palabra del bloque de parámetros. Para las CPUs de las
Series 90-30, el valor de la segunda palabra puede ser de 0 a 32. Si el valor está fuera del rango, se
generará un error. Para la CPU211 de las Series 90-20, el valor puede ser 0 ó 4.
Nota
Esta petición de servicio no está disponible en los PLCs Micro.
Ejemplo
En el siguiente ejemplo, cuando se activa el contacto habilitar FST_SCN, se construyen los bloques
de parámetros para la función de tarea de suma de comprobación. Más adelante en el programa,
cuando la entrada %I0137 se activa, el número de palabras objeto de la suma de comprobación es
leído por el sistema operativo del PLC. Este número es aumentado en 16, colocándose los
resultados de la función ADD_INT en el parámetro “mantener el nuevo cómputo para ajuste”. El
segundo bloque de petición de servicio solicita al PLC establecer un nuevo cómputo de palabras.
| _____ _____
| FST_SCN | | | |
|———| |———| XOR_|—————————————————|MOVE_|
| | | | |
| | WORD| | INT |
| | | | |
| %R0150 —|I1 Q|— %R0150 CONST —|IN Q|— %R0152
| | | +00001 | LEN |
| | | |00001|
| %R0150 —|I2 | |_____|
| |_____|
|
.
.
Los bloques de parámetros del ejemplo están situados en la dirección %R0150. Tienen el siguiente
contenido:
0 = leer el cómputo actual %R0150
Mantener cómputo actual %R0151
12-52 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Nota
Esta función está disponible sólo para la CPU 331 o CPUs 90-30 superiores y en
las CPUs del PLC Micro de las Series 90 de 28 puntos (IC693UDR005,
IC693UAA007 y IC693UDR010) y en las CPUs del PLC Micro de las Series 90
de 23 puntos (IC693UAL006).
Para las funciones de fecha/hora, la longitud del bloque de parámetros depende del formato de
datos. El formato BCD requiere 6 palabras; ASCII comprimido requiere 12 palabras.
Las palabras 3 hasta el final del bloque de parámetros contienen datos de salida que se obtienen
mediante una función de lectura o nuevos datos proporcionados por una función de modificar. En
ambos casos, el formato de estas palabras de datos es el mismo. Cuando se lee la fecha y la hora,
las palabras (dirección + 2) hasta (dirección + 8) del bloque de parámetros son ignoradas al
introducirlas.
Ejemplo
En el siguiente ejemplo, cuando lo ha llamado una lógica previa, se forma un bloque de parámetros
para el reloj calendario, para solicitar primero la fecha y la hora actuales, y después poner el reloj a
las 12 horas del mediodía usando el formato BCD. El bloque de parámetros se encuentra en la
posición de datos globales %R0300. La tabla NOON se ha configurado en algún otro punto del
programa para contener los valores 12, 0 y 0. (La tabla NOON también debe contener los datos en
%R0300.) El formato BCD requiere seis posiciones de memoria contiguas para el bloque de
parámetros.
|
|
| _____ _____
|FST_SCN | | | |
|——| |———+MOVE_+—————————————————+MOVE_+-
| | | | |
| | INT | | INT |
| | | | |
| CONST -|IN Q+- NOON CONST -+IN Q+- MIN_SEC
| | | | |
| +04608 | LEN | +00000 | LEN |
| |00001| |00001|
| |_____| |_____|
|
|
|
| _____ _____ _____
|%I0016 | | | | | | %T0001
|——| |———+MOVE_+—————————————————+MOVE_+—————————————————+ SVC_+—————————————( )-
| | | | | | |
| | INT | | INT | | REQ |
| | | | | | |
| CONST -+IN Q+- %R0300 CONST -+IN Q+- %R0301 CONST -+FNC |
| | | | | | |
| +00000 | LEN | +00001 | LEN | +00007 | |
| |00001| |00001| | |
| |_____| |_____| %R0300 -+PARM |
| |_____|
|
|
|
| _____ _____
|%T0001 %I0017 | | | |
|——| |————| |————+ AND_+—————————————————+ ADD_+-
| | | | |
| | WORD| | INT |
| | | | |
| %R0303 -+I1 Q+- %R0303 %R0303 -+I1 Q+- %R0303
| | | | |
| CONST -+I2 | NOON -+I2 |
| 00FF |_____| |_____|
|
|
|
| _____ _____ _____
|%T0001 %I0017 | | | | | |
|——| |—————| |———+MOVE_+—————————————————+MOVE_+—————————————————+ SVC_+–
| | INT | | INT | | REQ |
| | | | | | |
| MIN_SEC-+IN Q+- %R0304 CONST -+IN Q+- %R0300 CONST -+FNC |
| | LEN | +00001 | LEN | +00007 | |
| |00002| |00001| | |
| |_____| |_____| %R0300 -+PARM |
| |_____|
|
12-54 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
12-56 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Precaución
Asegúrese de que la reinicialización del temporizador no afecta
negativamente al proceso controlado.
Esta función no tiene ningún bloque de parámetros asociado; sin embargo, el software de
programación requiere que se realice una entrada para PARM. Introduzca aquí cualquier referencia
apropiada; no será utilizada.
Ejemplo
En el siguiente ejemplo, cuando %Q0127 se ACTIVA, el temporizador watchdog se reinicializa.
| _____
| %Q0127 | |
|——| |———-—————————| SVC_|—
| | REQ |
| | |
| CONST —|FNC |
| 0008 | |
| | |
| %AI001—|PARM |
| |_____|
|
Utilice la función SVCREQ #9 para leer el tiempo en milisegundos desde el comienzo del barrido.
Los datos se presentan en formato de palabra de 16 bits.
Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 9, comenzando por la versión 8.0.
El bloque de parámetros es sólo un bloque de parámetros de salida; tiene una longitud de una
palabra.
Ejemplo
En el siguiente ejemplo, el tiempo transcurrido desde el comienzo del barrido se lee siempre en la
posición %R5200. Si es mayor que el valor en %R5201, la bobina interna %M0200 se activa.
| _____ _____
|%Q0102 | | | |
|——| |———| SVC_|——————————| GT_ |—
| | REQ | | WORD|
| | | | | %M0200
| CONST —|FNC | %R5200—|I1 Q|——————————————————————————————————————————( )—
| 0009 | | | |
| | | | |
| %R5200—|PARM | %R5201—|I2 |
| |_____| |_____|
|
12-58 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Utilice la función SVCREQ #10 para leer el nombre de la carpeta que está siendo actualmente
ejecutada.
Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 10, comenzando por la versión 8.0.
El bloque de parámetros de salida tiene una longitud de cuatro palabras. Este bloque devuelve ocho
caracteres ASCII; el último es un carácter cero (00h). Si el nombre de programa tiene menos de
siete caracteres, se añaden ceros al final.
Byte bajo Byte alto
carácter 7 00 dirección + 3
Ejemplo
En el siguiente ejemplo, cuando el contacto habilitar %I0301 se ACTIVA, se carga el valor 10 en la
posición del registro %R0099, que es el código de función correspondiente a la función leer
nombre de carpeta. En el siguiente escalón, cuando %I0102 está ACTIVADO, la petición de
servicio lee el nombre de la carpeta y lo almacena en el bloque de memoria de cuatro palabras que
comienza en %R0100 (especificado en PARM).
| %I0001 %I0301
|——| |——————————————————————————————————————————————————————————————(↑)—
|
| _____ __________
| %I0301 | |
|——| |———|MOVE_|—
| | WORD|
| | |
| CONST —|IN Q|— %R0099
| 0010 | LEN |
| | 0001|
| |_____|
|
|
|%I0102 | |
|——| |———| SVC_|—
| | REQ |
| | |
| %R0099—|FNC |
| | |
| | |
| %R0100—|PARM |
| |_____|
|
Utilice la función SVCREQ #11 para leer el nombre del PLC de las Series 90 que está ejecutando
el programa.
Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 11, comenzando por la versión 8.0.
El bloque de parámetros de salida tiene una longitud de cuatro palabras. Este bloque devuelve ocho
caracteres ASCII; el último es un carácter cero (00h). Si el ID del PLC tiene menos de siete
caracteres, se añaden ceros al final.
Byte bajo Byte alto
carácter 7 00 dirección + 3
Ejemplo
En el siguiente ejemplo, cuando el contacto habilitar %I0001 se DESACTIVA, se carga el valor 11
en la posición del registro %R0099, que es el código de función correspondiente a la función leer
ID del PLC. En el siguiente escalón, cuando %Q0102 está ACTIVADO, la petición de servicio lee
la ID del PLC y la almacena en el bloque de memoria de cuatro palabras que comienza en %R0100
(especificado en PARM).
| %I0001 %M0301
|——| |——————————————————————————————————————————————————————————————(↓)—
|
| _____ __________
| %M0301 | |
|——| |———|MOVE_|
| | WORD|
| | |
| CONST —|IN Q|— %R0099
| 0011 | LEN |
| | 0001|
| |_____|
|
| _____
|%Q0102 | |
|——| |———| SVC_|—
| | REQ |
| | |
| %R0099—|FNC |
| | |
| | |
| %R0100—|PARM |
| |_____|
|
12-60 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Utilice la función SVCREQ #12 para leer el estado RUN actual de la CPU del PLC.
Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 12, comenzando por la versión 8.0.
El bloque de parámetros es sólo un bloque de parámetros de salida; tiene una longitud de una
palabra. Sólo se pueden obtener dos resultados válidos de la ejecución de esta petición de servicio:
1 = run/deshabilitado dirección
2 = run/habilitado
Ejemplo
En el siguiente ejemplo, cuando %I0102 se ACTIVA, la petición de servicio lee el estado de
ejecución del PLC y coloca el resultado en la dirección de memoria %R402. Si el PLC está en el
modo Run/Deshabilitado, %R402 contendrá el valor 1. Si el PLC está en el modo Run/Habilitado,
%R402 contendrá el valor 2.
| _____ _____
|%I0102 | |
|——| |———| SVC_|—
| | REQ | __________
| | |
| CONST —|FNC |
| 0012 | |
| | |
| %R402—|PARM |
| |_____|
|
Utilice la función SVCREQ #13 para parar el PLC al final del próximo barrido. Todas las salidas
pasan a sus estados por defecto especificados cuando se llega al comienzo del siguiente barrido del
PLC. Un fallo informativo es colocado en la tabla de fallos del PLC, indicado que se ejecutó un
bloque de función “PARADA DEL PLC”. La exploración de E/S continuará como se ha
configurado.
Esta función no posee ningún bloque de parámetros.
Ejemplo
En el siguiente ejemplo, cuando se produce un fallo “Pérdida de módulo E/S", se ejecuta la función
SVCREQ # 13. Dado que no se necesita ningún bloque de parámetros, la entrada PARM no se
utiliza; sin embargo, el software de programación requiere que se realice una entrada para PARM.
Este ejemplo utiliza un JUMP (SALTO) hasta el final del programa para forzar una parada del PLC
si se ejecuta correctamente la función parada del PLC. Estos JUMP y LABEL son necesarios ya
que la transición al modo parada STOP no se produce hasta el final del barrido en que se ejecuta la
función. Una vez que el PLC recibe este comando STOP de la petición de servicio, ejecutará un
barrido más y después se parará (véase la Nota inferior).
|
|LOS_MD %T0001
|
|——| |——————————————————————————————————————————————————————————————————————(↑)—
|
| _____
|%T0001 | |
|——| |———————| SVC_|——————————————————————————————————————————————————>> END_PRG
| | |
| | REQ |
| | |
| CONST —|FNC |
| 0013 | |
| | |
| %R1001 —|PARM |
| |_____|
|
.
.
.
|
| END_PRG:
|
|
| [ FIN DE LA LOGICA DEL PROGRAMA ]
|
Nota
Para asegurar que el contacto %S0002 LST_SCN funcionará correctamente, el
PLC ejecutará un barrido adicional después del barrido en el que se ejecutó la
función SVCREQ #13.
12-62 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Utilice la función SVCREQ #14 para borrar bien la tabla de fallos del PLC, o la tabla de fallos de
E/S. La salida SVCREQ se ACTIVA a no ser que se introduzca como operación solicitada algún
número distinto de 0 o de 1 (véase más abajo).
Para esta función, el bloque de parámetros tiene una longitud de una palabra. Se trata sólo de un
bloque de parámetros de entrada.
0 = borrar tabla de fallos del PLC. dirección
1 = borrar tabla de fallos de E/S.
Ejemplo
En el siguiente ejemplo, cuando los contactos %I0346 y %I0349 están activados, se borra la tabla
de fallos del PLC. Cuando los contactos %I0347 y %I0349 están activados, se borra la tabla de
fallos de E/S. Cuando los contactos %I0348 y %I0349 están activados, se borran ambas tablas de
fallos.
El bloque de parámetros para la tabla de fallos del PLC está situada en %R0500, y para la tabla de
fallos de E/S el bloque de parámetros está situado en %R0550. Ambos bloques de parámetros está
configurados en otra parte del programa (los dos deben estar en lógica 1 para borrar su respectivas
tablas).
| _____
|%I0349 %I0346 | |
|——| |——+——| |——+———————| SVC_|—
| | | | |
| | | | REQ |
| |%I0348 | | |
| +——| |——+CONST —|FNC |
| 0014 | |
| | |
| %R0500 —|PARM |
| |_____|
|
| _____
|%I0349 %I0347 | |
|——| |——+——| |——+———————| SVC_|-
| | | | |
| | | | REQ |
| |%I0348 | | |
| +——| |——+CONST -|FNC |
| 0014 | |
| | |
| %R0550 -|PARM |
| |_____|
|
Utilice la función SVCREQ #15 para leer la última entrada registrada bien en la tabla de fallos del
PLC, o en la tabla de fallos de E/S. La salida SVCREQ se ACTIVA a no ser que como operación
solicitada se introduzca un número distinto de 0 o de 1 (véase más abajo), o la tabla de fallos esté
vacía. (Para más información acerca de las entradas de las tablas de fallos, consulte el Capítulo 3,
“Explicación y corrección de fallos.”)
Para esta función, el bloque de parámetros tiene una longitud de 22 palabras. El bloque de
parámetros de entrada tiene este formato:
Formato salida tabla fallos PLC Formato salida tabla fallos E/S
Byte bajo Byte alto Byte bajo Byte alto
0 1
largo/corto dirección + 1 largo/corto
reserva dirección + 2 dirección de referencia
dirección del fallo PLC dirección + 3
dirección + 4 dirección del fallo de E/S
grupo del fallo y acción dirección + 5
código de error dirección + 6 grupo del fallo y acción
dirección + 7 categoría fallo tipo de fallo
dirección + 8 descripción de fallo
dirección + 9
dirección + 10
dirección + 11
datos específicos fallo dirección + 12 datos específicos fallo
dirección + 13
dirección + 14
dirección + 15
dirección + 16
dirección + 17
dirección + 18
dirección + 19
marca de la hora dirección + 20 marca de la hora
dirección + 21
12-64 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Ejemplo 1
En el siguiente ejemplo, cuando la entrada %I0251 %I0250 está activada, la última entrada en la
tabla de fallos del PLC es introducida en el bloque de parámetros. Cuando la entrada %I0251 está
desactivada y la entrada %I0250 está activada, la última entrada en la tabla de fallos de E/S es
introducida en el bloque de parámetros. El bloque de parámetros está situado en la posición
%R0600.
| _____
|%I0250 %I0251 | |
|——| |—————| |———|MOVE_|
| | |
| | INT |
| | |
| CONST —|IN Q|– %R0600
| 0000 | LEN |
| | 0001|
| |_____|
|
| _____
|%I0250 %I0251 | |
|——| |—————|/|———|MOVE_|
| | |
| | INT |
| | |
| CONST —|IN Q|— %R0600
| 0001 | LEN |
| | 0001|
| |_____|
|
| _____
|ALW_ON | |
|——| |———| SVC_|—
| | |
| | REQ |
| | |
| CONST —|FNC |
| 0015 | |
| | |
|%R0600 —|PARM |
| |_____|
|
Ejemplo 2
En el siguiente ejemplo, el PLC se para cuando se produce algún fallo en un módulo de E/S,
excepto cuando el fallo se produce en los módulos del rack 0, slot 9 y en el rack 1, slot 9. Si los
fallos se producen en estos dos módulos, el sistema continúa funcionando. El parámetro para el
“tipo de tabla” se define en el primer barrido. El contacto IO_PRES, cuando está activo, indica que
la tabla de fallos de E/S contiene una entrada. La CPU del PLC activa el contacto normalmente
abierto en el siguiente barrido después de que la lógica de fallos coloca un fallo en la tabla. Si los
fallos se colocan en la tabla en dos barridos consecutivos, el contacto normalmente abierto se activa
para dos barridos consecutivos.
El ejemplo usa un bloque de parámetros situado en %R0600. Después de ejecutarse la función
SVCREQ, la cuarta palabra del bloque de parámetros contiene la posición del rack y slot del
módulo de E/S que ha fallado:
1 %R0600
largo/corto %R0601
dirección de referencia %R0602
número de rack número de slot %R0603
nº de bus de E/S dirección de bus %R0604
dirección de punto %R0605
datos del fallo
En el programa, los bloques EQ_INT comparan la dirección de rack/slot en la tabla con constantes
decimales. La bobina interna %M0007 se activa cuando el rack/slot donde se ha producido el fallo
satisface el criterio especificado más arriba. Si la bobina %M0007 está activada, su contacto
normalmente cerrado está desactivado para prevenir la parada. De modo inverso, si la bobina
%M0007 está desactivada porque el fallo se ha producido en un módulo diferente, su contacto
normalmente cerrado se activa y se produce la parada.
12-66 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
| _____
|FST_SCN | |
|——| |———|MOVE_|—
| | |
| | INT |
| | |
| CONST —|IN Q|— %R0600
| 0001 | LEN |
| | 0001|
| |_____|
|
| _____
| IO_PRES| | %T0001
|——| |———| SVC_|————————————————————————————————————————————————————————————( )—
| | |
| | REQ |
| | |
| CONST —|FNC |
| 0015 | |
| | |
|%R0600 —|PARM |
| |_____|
|
| _____
|%T0001 | |
|——| |———| EQ_ |—
| | |
| | INT |
| | | %M0007
|%R0603 —|I1 Q|————————————————————————————————————————————————————————————( )—
| | |
| | |
| CONST —|I2 |
| 0109 |_____|
|
| _____
|%T0001 | |
|——| |———| EQ_ |—
| | |
| | INT |
| | | %M0007
|%R0603 —|I1 Q|————————————————————————————————————————————————————————————( )—
| | |
| | |
| CONST —|I2 |
| 0265 |_____|
|
| _____
| IO_PRES %M0007 | |
|——| |———————|/|———| SVC_|—
| | |
| | REQ |
| | |
| | |
| CONST —|FNC |
| 0013 | |
| | |
| %R0001 —|PARM |
| |_____|
|
Utilice la función SVCREQ con el número de función 16 para leer el valor del reloj del tiempo
transcurrido del sistema. Este reloj marca el tiempo transcurrido en segundos desde que se conectó
el PLC. El reloj da la vuelta aproximadamente una vez cada 100 años.
Esta función tiene un solo bloque de parámetros de salida. El bloque de parámetros tiene una
longitud de 3 palabras.
segundos desde que se conectó la corriente (parte baja) dirección
segundos desde que se conectó la corriente (parte alta) dirección + 1
impulsos de 100 microsegundos dirección + 2
Las dos primeras palabras representan el tiempo transcurrido en segundos. La última palabra es el
número de impulsos de 100 microsegundos dentro del segundo actual.
Ejemplo
En el siguiente ejemplo, cuando la bobina interna %M0233 está activada, se lee el valor del reloj de
tiempo transcurrido y la bobina %M0234 se activa. Cuando está desactivada, el valor se vuelve a
leer. Se calcula entonces la diferencia entre los valores, y el resultado se almacena en la memoria
de registro en la posición %R0250.
El bloque de parámetros para la primera lectura está en %R0127; para la segunda lectura en
%R0131. El cálculo ignora el número de impulsos de cien microsegundos y el hecho de que el tipo
DINT es en realidad un valor con signo. El cálculo es correcto hasta que el tiempo desde la
conexión alcanza aproximadamente 50 años.
| _____
|%M0233 | | %M0234
|——| |———| SVC_|———————————————————————————————————————————————————————————(S)—
| | |
| | REQ |
| | |
| CONST —|FNC |
| 00016 | |
| | |
|%R0127 —|PARM |
| |_____|
|
| _____ _____
|%M0233 %M0234 | | | | %M0234
|——|/|———————| |———| SVC_|——————————————————| SUB_|————————————————————————(R)—
| | | | |
| | REQ | | DINT|
| | | | |
| CONST —|FNC | %R0131 —|I1 Q|— %R0250
| 00016 | | | |
| | | | |
| %R0131 —|PARM | %R0127 —|I2 |
| |_____| |_____|
|
12-68 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Utilice la función SVCREQ #18 para leer el estado actual de sobrecontrol en la CPU.
Nota
Esta función está disponible sólo para las CPUs 331 o superiores.
Para esta función, el bloque de parámetros tiene una longitud de una palabra. Se trata sólo de un
bloque de parámetros de salida.
Nota
SVCREQ #18 sólo notifica sobrecontroles de las referencias %I y %Q.
Ejemplo
En el siguiente ejemplo, el estado de sobrecontrol de E/S se lee siempre en la posición %R1003. Si
algún sobrecontrol presente, la salida %T0001 se activa.
| _____ _____
|%I0001 | | | |
|——|/|———| SVC_|——————————| EQ_ |–
| | | | |
| | REQ | | INT |
| | | | | %T0001
| CONST —|FNC | CONST —|I1 Q|——————————————————————————————————————————( )—
| 00018 | | 00001 | |
| | | | |
|%R1003 —|PARM | %R1003 —|I2 |
| |_____| |_____|
|
Utilice la función SVCREQ #23 para leer las sumas de comprobación maestras del programa de
usuario y de la configuración. La salida SVCREQ está siempre ACTIVADA si la función está
habilitada, y el bloque de salidas de información (véase más abajo) comienza en la dirección dada
en el parámetro 3 (PARM) de la función SVCREQ.
Cuando un ALMACENAR MODO RUN está activo, las sumas de comprobación del programa no
pueden ser válidas hasta que no finalice el almacenamiento. Por tanto, se dispone de dos
indicadores (flags) al comienzo del bloque de parámetros de salida para indicar cuándo las sumas
de comprobación del programa y de la configuración son válidas.
Para esta función, el bloque de parámetros de salida tiene una longitud de 12 palabras con este
formato:
Ejemplo
En el siguiente ejemplo, cuando la entrada %I0251 está ACTIVADA, la información de suma de
comprobación maestra se coloca en el bloque de parámetros almacenado en %R0050 y se activa la
bobina de salida (%Q0001). El bloque de parámetros está situado en %R0050.
| _____
|%I0251 | | %Q0001
|——| |———| SVC_|——————————————————————————————————————————————————————————( )—
| | |
| | REQ |
| | |
| CONST —|FNC |
| +0023 | |
| | |
|%R0050 —|PARM |
| |_____|
|
12-70 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Utilice la función SVCREQ #24 para reinicializar una tarjeta secundaria o módulo inteligente. La
salida SVCREQ está ACTIVADA a menos que se introduzca un número no válido para el rack y/o
slot, como se muestra a continuación.
Para esta función, el bloque de parámetros tiene una longitud de una palabra. Se trata sólo de un
bloque de parámetros de entrada.
Slot del módulo (byte bajo) dirección
Rack del módulo (byte alto)
Ejemplo
En el siguiente ejemplo, cuando la entrada %I0346 está activada y la entrada %I0349 está activada,
el módulo indicado por Rack/Slot presente en %R0500 es reinicializado.
El bloque de parámetros que contiene el rack y el slot del módulo para la petición de servicio de
reinicialización del módulo está situado en %R0500. El bloque de parámetros está configurado en
otro punto del programa.
| _____
|%I0349 %I0346 | |
|——| |——+——| |——+———————| SVC_|—
| | | | |
| | | | REQ |
| |%I0348 | | |
| +——| |——+CONST —|FNC |
| 0024 | |
| | |
| %R0500 —|PARM |
| |_____|
|
| _____
|
|
Utilice la función SVCREQ #26 (o #30—son idénticas; es decir, se puede usar cualquiera de los
números para conseguir lo mismo) para interrogar los módulos actuales presentes y compararlos
con la configuración de rack/slot, generando alarmas de adición, pérdida y discordancia, como si se
hubiera realizado una configuración de almacenamiento. Esta SVCREQ generará fallos en ambas
tablas de fallos, tabla de fallos del PLC y tabla de fallos de E/S, dependiendo del fallo.
Esta función no tiene bloque de parámetros y siempre da salida al flujo de energía.
Nota
El tiempo de ejecución de esta SVCREQ depende de cuántos fallos haya. Por
tanto, el tiempo de ejecución de esta SVCREQ será mayor en las situaciones en
que haya más módulos defectuosos.
Ejemplo
En el siguiente ejemplo, cuando la entrada %I0251 está ACTIVADA, los módulos actuales son
interrogados y comparados con la configuración del rack/slot. La salida %Q0001 se activa una vez
terminada la ejecución de la SVCREQ.
| _____
|%I0251 | | %Q0001
|——| |———| SVC_|——————————————————————————————————————————————————————————( )—
| | |
| | REQ |
| | |
| CONST —|FNC |
| +0026 | |
| | |
|%R0050 —|PARM |
| |_____|
|
Nota
Esta petición de servicio no está disponible en los PLCs Micro.
12-72 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Utilice la función SVCREQ # 29 para leer el tiempo transcurrido entre la última desconexión de la
corriente y la conexión más reciente realizada. La salida SVCREQ está siempre ACTIVADA, y el
bloque de salidas de información (véase más abajo) comienza en la dirección dada en el parámetro
3 (PARM) de la función SVCREQ.
Nota
Esta función sólo está disponible en las CPUs 331 o superiores.
Esta función tiene un solo bloque de parámetros de salida. El bloque de parámetros tiene una
longitud de 3 palabras.
Las dos primeras palabras corresponden al tiempo transcurrido en segundos con la corriente
desconectada. La última palabra es el tiempo transcurrido restante con la corriente desconectada en
impulsos de 100 microsegundos (que es siempre 0). Siempre que el PLC no pueda calcular
correctamente el tiempo transcurrido desde la desconexión, el tiempo se pondrá a 0. Esto sucederá
cuando se conecte el PLC con CLR M/T pulsado en el HHP. También ocurrirá si el temporizador
watchdog excede el límite de tiempo antes de la desconexión.
Ejemplo
En el siguiente ejemplo, cuando la entrada %I0251 está ACTIVADA, el tiempo transcurrido con la
corriente desconectada se coloca en el bloque de parámetros, y se activa la bobina de salida
(%Q0001). El bloque de parámetros está situado en %R0050.
| _____
|%I0251 | | %Q0001
|——| |———| SVC_|——————————————————————————————————————————————————————————( )—
| | |
| | REQ |
| | |
| CONST -|FNC |
| +0029 | |
| | |
|%R0050 -|PARM |
| |_____|
|
Nota
El bloque de función DOIO no se ve afectado por el uso de SVCREQ #45. Este
continuará actualizando las E/S cuando se use en el mismo programa lógico que
la SVCREQ #45.
Ejemplo
En el siguiente ejemplo, cuando el contacto “Idle” pasa flujo de energía, se saltan las exploraciones
siguientes de entradas y salidas.
IDLE
SVC_
REQ
CONST
00045 FNC
%R0001 PARAM
12-74 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Esta función es un método de comunicar varios bits hacia o desde uno o más módulos inteligentes a
través de la placa de fondo del PLC muy rápidamente en comparación con el método de
comunicación normal. Este aumento de la velocidad de comunicación se logra limitando la
cantidad de datos y el número de respuestas.
Utilice la función SVCREQ #46 para realizar una de las funciones de acceso rápido a la placa de
fondo:
• Leer una palabra de datos adicionales de estado de uno o más módulos inteligentes
especificados.
• Escribir una palabra de datos adicionales de estado de uno o más módulos inteligentes
especificados.
• Leer/Escribir: Leer una palabra de datos adicionales de estado de uno o más módulos
especificados y escribir el valor del dato entre 0 y 15 en el mismo módulo, todo ello en una
operación.
Notas
Actualmente, el único módulo diseñado para soportar esta petición de servicio es
el DSM314 (Módulo Servo Digital).
Esta petición de servicio tiene una longitud variable como se describe a continuación. La primera
palabra del bloque de parámetros determina qué función se va a utilizar y tiene el siguiente
formato:
12-76 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
12-78 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Ejemplo 1
El siguiente ejemplo muestra la función leer (especificada en %R0001) de un único módulo,
situado en el rack 2, slot 4 (especificado en %R0004). Si la función se realiza correctamente, los
datos leídos se almacenarán en %R0005. Sin embargo, si se produce un error, se escribirá un
código de error en %R0002, y la posición del rack/slot del módulo que ha generado el error
aparecerá en %R0003. Observe que, dado que se trata de la función leer para un único módulo, la
Dirección + 5 y la Dirección + 6 no se utilizan. Por tanto, las correspondientes posiciones de la
memoria, %R0006 y %R0007, se llenan de ceros de las entradas IN6 e IN7 de la instrucción
BLKMV. Si tuviera que leerse un módulo adicional, %R0006 y %R0007 se utilizarían para el
módulo adicional. Para más información sobre la función leer, véase la Tabla 12-5 más arriba en
este capítulo.
%M0201 %M0202
BLKMV_
WORD
CONST
IN1 Q %R0001
0001 0001 Address Value Description
CONST
0000
IN2 %R0001 0001 1 = Read
%R0002 0000 Error Code
CONST
IN3 %R0003 0000 Error Location
0000
CONST %R0004 0204 Rack 2, Slot 4
IN4
0204 %R0005 0000 Read Data
CONST %R0006 0000 Not Used
IN5
0000 %R0007 0000 Not Used
CONST IN6
0000
CONST IN7
0000
%M0202 %M0204
SVC_
REQ
CONST FNC
0046
%R0001
PARM
0001
Ejemplo 2
En este ejemplo las instrucciones BLKMV y dos MOVE escriben los datos requeridos en el bloque
de parámetros, que comienza en %R0001 (especificado por la entrada SVCREQ PARM). Cuando
está habilitada, la SVCREQ lee los datos de palabra de estado adicionales del módulo en el rack 0,
slot 4 y del módulo en el rack 1, slot 1. Escribe un valor de 0005 en el módulo en el rack 0, slot 4, y
un valor de 0009 en el módulo en el rack 1, slot 1. (Observe que los módulos no requieren ser
listados en el bloque de parámetros por orden de número de slot.) Los datos leídos del módulo en
el rack 0, slot 4 se colocarán en %R0008. Los datos leídos del módulo en el rack 1, slot 1 se
colocarán en %R0005.
%M0201
BLKMV_ MOVE_
WORD WORD
CONST %R0001
IN1 Q CONST %R0008
0003 0003 IN1 Q
0000 0000
CONST
IN2 LEN
0000 0001
CONST
0000 IN3
Bloque de parámetros
CONST Dirección Valor Descripción
0101 IN4
%R0001 0003 3 = Leer/Escribir
CONST
0000 IN5 %R0002 0000 Código de error
%R0003 0000 Posición de error (Rack/Slot)
CONST
0009 IN6 %R0004 0101 Rack 1, Slot 1 (1er módulo)
CONST
%R0005 0000 Leer datos del 1er módulo
IN7 %R0006 0009 Escribir datos 1er módulo
0004
%R0007 0004 Rack 0, Slot 4 (2º módulo)
%R0008 0000 Leer datos del 2º módulo
%M0201
%R0009 0005 Escribir datos 2º módulo
MOVE_
WORD
CONST %R0009
0005 IN1 Q 0000
LEN
0001
%M0201 %M0204
SVC_
REQ
CONST FNC
0046
%R0001
PARM
0003
12-80 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Aviso
La función reinicializar auto reset tras fallo fatal no deberá utilizarse
(parámetro ignorar fallos fatales deshabilitado) en aplicaciones donde un
rearranque automático del PLC en condiciones de fallo pudiera producir
una condición de peligro en el equipo controlado. Es responsabilidad del
diseñador del sistema determinar si esta función puede utilizarse con
seguridad en su equipo. El incumplimiento de esta precaución puede
ocasionar lesiones o muerte al personal y/o daños al equipo.
Descripción
La petición de servicio reinicializar tras fallo fatal hace que el PLC reanude automáticamente el
funcionamiento normal tras producirse un fallo fatal. A continuación del fallo fatal, el PLC se
reinicializará automáticamente y reanudará la ejecución. Los fallos no serán borrados, pero serán
tratados como no fatales. Si hay fallos fatales presentes después de la conexión, el PLC seguirá
estando autorizado para pasar al modo run. Esta función está habilitada por el parámetro ignorar
fallos fatales (o anulación de fallos fatales) en la configuración del hardware de la CPU.
SVCREQ 48 establece el número máximo de reintentos y el periodo de tiempo durante el que
deben producirse dichos reintentos. Si el número de reintentos permitido dentro del periodo de
tiempo se excede, el modo de la CPU pasa a STOP/FALLO. Si el periodo es 0, el modo de la CPU
pasa a STOP/FALLO cuando se excede el número de reintentos permitido.
Si el operador efectúa un ciclo de desconexión/conexión, los fallos fatales se ignoran. El cómputo
actual de fallos y el periodo de tiempo se inicializan. El número total de fallos fatales no se altera,
pero el número total de reintentos se incrementa. El bit del sistema %S0021 se pone 1 siempre que
el reintento tiene éxito y permanece puesto hasta que se borran todos los fallos fatales, o el modo se
cambia a STOP/FALLO.
Tabla 12-10. Definiciones del estado de retorno para la reinicialización tras un fallo fatal
Estado Descripción Notas Flujo
de
energía
-5 Periodo de reintento no El rango válido es de 0 hasta 5940 No
válido
-4 Número de reintentos no El rango válido es de 0 hasta 128 No
válido
-3 Reintentos ilimitados no Debe ser 0 ó 1 No
válido
-2 Configuración deshabilitada La opción ignorar fallos fatales (Anulación de fallos No
fatales) debe estar habilitada en el software de
configuración.
0 Sin acción El comando no requiere ningún cambio Sí
1 Auto Reset habilitado Comando válido habilita la reinicialización tras un Sí
fallo fatal
2 Auto Reset deshabilitado Comando válido deshabilita la reinicialización tras un
fallo fatal. Ignorar fallos fatales permanece
habilitado.
12-82 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
PID
La función de control proporcional más integral más diferencial (PID) es el algoritmo de propósito
general más conocido para el control de procesos de lazo cerrado. El bloque de función PID de las
Series 90 compara la realimentación de una variable del proceso (PV) con una consigna deseada de
proceso (SP) y actualiza una salida de variable de control (CV) basándose en el error.
La función PID utiliza ganancias de lazo y otros parámetros almacenados en una matriz de 40
palabras de 16 bits (expuesta en la página 12-86) para resolver el algoritmo PID en el intervalo de
tiempo deseado. Todos los parámetros de la función PID son palabras de valores enteros de 16 bits
para compatibilidad con variables de proceso analógicas de 16 bits. Esto permite utilizar la
memoria %AI para variables de proceso de entrada y la memoria %AQ para variables de control de
salida. El ejemplo mostrado a continuación incluye entradas típicas.
_____
%S00007 | |
(habilitar) ——| |—— -| PID_|— (ok) Flujo de energía hacia afuera
| | si OK está habilitada
| |
| IND |
| |
(consigna de proceso) %R00010 —|SP CV|— %AQ0001 Variable de control
+21000 | | +25000
| |
(variable de proceso) %AI0001 —|PV |
+20950 | |
| |
%M0001 | |
——| |——— |MAN |
| |
| |
%M0002 | |
——| |——— |UP |
| |
| |
%M0002 |DN |
——| |——— | |
|_____|
%R00100 RefArray es 40 palabras %R
Como números enteros de 16 bits escalados, numerosos parámetros deben definirse bien en
unidades de variable de proceso (PV) o en unidades de variable de control (CV). Por ejemplo, la
entrada de consigna (SP) debe escalarse a lo largo del mismo intervalo que la variable del proceso
ya que el bloque PID calcula el error restando estas dos entradas. Las unidades de la variable de
proceso y de la variable de control pueden ser –32000 ó 0 hasta 32000, equivaliendo a la escala
analógica, o desde 0 hasta 10000, para visualizar variables como 0.00% hasta 100.00%. Las
unidades de la variable de proceso y de la variable de control no tienen por qué tener idéntica
escala, en cuyo caso habrá factores de escala incluidos en las ganancias PID.
Nota
La función PID no debe ejecutarse más de una vez cada 10 milisegundos. Esto
podría modificar sus resultados si lo configura para ejecutarse en cada barrido y
el barrido dura menos de 10 ms. En tal caso, la función PID no se ejecutará hasta
que se hayan producido suficientes barridos para acumular un tiempo
transcurrido de 10 ms. Por ejemplo, si el tiempo de barrido es 9 ms, la función
PID se ejecutará cada dos barridos con un tiempo transcurrido de 18 ms cada vez
que se ejecute.
12-84 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Parámetros
Parámetro Descripción
habilitar Cuando se ha habilitado a través de un contacto, la función PID se ejecuta.
SP SP es la consigna del lazo de control o del proceso. Configúrela utilizando unidades de
PV, la función PID ajusta la salida CV de modo que PV coincida con SP (error cero).
PV Variable de proceso introducida del proceso que se esté controlando, con frecuencia una
entrada %AI.
MAN Cuando se activa al valor 1 (a través de un contacto), el bloque PID se encuentra en el
modo MANUAL. Si este parámetro no está activado (0), el bloque PID está en el modo
automático.
UP Si se activa junto con MAN, aumenta el ajuste de la variable de control en una unidad de
variable de control por cada solución.*
DN Si se activa junto con MAN, disminuye el ajuste de la variable de control en una unidad
de variable de control por cada solución.*
Dirección de Dirección es la ubicación de la información del bloque de control PID (parámetros de
RefArray usuario e internos). Utiliza 40 palabras %R que no pueden compartirse.
ok La salida OK se activa cuando la función se ejecuta sin error. Está desactivada si existen
errores.
CV CV es la salida de variable de control al proceso, con frecuencia una salida analógica
%AQ.
*Aumenta (parámetro UP) o disminuye (parámetro DN) en 1 por cada proceso de la función PID.
12-86 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
La matriz RefArray debe constar de registros %R en el PLC 90-30. Observe que cada llamada al
bloque PID debe utilizar una matriz de 40 palabras diferente, incluso si los 13 parámetros de
usuario son iguales, ya que otras palabras de la matriz se utilizan para el almacenamiento interno de
datos PID. Asegúrese de que la matriz no sobrepasa el límite de la memoria.
Para configurar los parámetros de funcionamiento, seleccione la función PID y pulse F10 para
ampliar la pantalla de los parámetros de usuario; utilice entonces las teclas de flecha parea
seleccionar los campos e introduzca los valores deseados. Puede tomar 0 para la mayoría de los
valores por defecto, excepto para el límite superior de CV, que debe ser mayor que el límite inferior
de CV para que el bloque PID pueda operar. Observe que el bloque PID no pasa flujo de energía si
existe un error en los parámetros de usuario, supervise por tanto, con una bobina temporal mientras
modifica los datos.
Una vez que se han seleccionado valores adecuados de PID, deberán definirse como constantes en
el BLKMOV, de modo que puedan utilizarse para volver a cargar los parámetros PID en caso
necesario.
Nota
No debe llamarse a una función PID específica más de una vez por barrido.
La siguiente tabla proporciona más detalles acerca de los parámetros que se han expuesto
brevemente en la Tabla 12-3. El número entre paréntesis detrás de cada nombre de parámetro es el
offset en la RefArray.
12-88 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
12-90 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
12-92 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
PV Acción
diferencial VALOR TÉRMINO
TIEMPO DIFERENCIAL - Kd
A continuación, la salida CV se compara con los valores de límite superior CV y límite inferior
CV. Si se rebasa uno de estos límites, la salida CV se configura al valor limitado. Si se rebasa, bien
el límite de velocidad de variación, o de amplitud, modificando CV, el valor de integrador interno
se ajusta para adaptarse al valor limitado con el fin de evitar un “reset windup”.
Por último, el bloque verifica la polaridad de la salida (segundo bit de la palabra de configuración
%Ref+12) y cambia el signo de la salida si el bit vale 1.
CV = Salida PID limitada o – Salida PID limitada si el bit polaridad de salida está activado
Si el bloque está en modo automático, el CV final se coloca en el comando manual %Ref+13. Si el
bloque se encuentra en el modo manual, la ecuación PID se salta ya que CV está configurado por el
comando manual pero siguen verificándose todos los límites de velocidad de variación y de
amplitud. Esto significa que el comando manual no puede modificar la salida por encima del límite
superior CV o por debajo de los límites inferiores de CV y la salida no puede variar con mayor
rapidez que el tiempo mínimo de variación admisible.
12-94 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Salida de escalón unitario de CV al proceso Entrada de curva de reacción unitaria de PV del proceso a45709
1 K
0.632K
t0 t0
Tp Tc
Los siguientes parámetros de modelo del proceso pueden determinarse a partir de la curva de
reacción unitaria de PV:
K Ganancia de lazo abierto del proceso = variación final de PV/variación de CV en el
instante t0
(Observe que K no lleva subíndices)
Tp Tiempo de retardo de proceso o tiempo muerto después de t0 antes de que la PV de la
salida del proceso comience a moverse
Tc Constante de tiempo de proceso de primer orden, tiempo necesario después de Tp para
que PV alcance el 63.2% del PV final
Habitualmente, el método más rápido para medir estos parámetros es colocar el bloque PID en el
modo manual y realizar un pequeño incremento de la salida CV modificando el comando manual
%Ref+13, y representando la respuesta de PV en el tiempo. Para procesos lentos, esto puede
realizarse manualmente, pero para procesos más rápidos será de ayuda un registrador de gráficos o
un paquete de registro gráfico de datos por ordenador. El tamaño del escalón de CV debe ser
suficientemente grande para provocar una variación observable de PV pero no tan grande que
perturbe el proceso que se esté midiendo. Un buen tamaño podría ser del 2 al 10% de la diferencia
entre los valores del límite superior de CV y del límite inferior de CV.
12-96 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
12-98 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12
Los PLCs de las Series 90-30/20 y Micro soportan numerosas diferentes funciones y bloques de
función. Este anexo contiene tablas que muestran los tamaños de memoria en bytes y el tiempo de
ejecución en microsegundos para cada función . El tamaño de memoria es el número de bytes
requerido por la función en un programa de aplicación de esquema de contactos.
Para cada función se muestran dos tiempos de ejecución:
Tiempo de Descripción
ejecución
Habilitada Tiempo requerido para ejecutar la función o el bloque de función cuando el
flujo de energía entra y sale de la función. Normalmente, los mejores tiempos
se dan cuando los datos usados por el bloque están contenidos en la memoria
RAM de usuario (memoria orientada a palabra) y no en la memoria digital.
Deshabilitada Tiempo requerido para ejecutar la función cuando el flujo de energía entra en
la función o bloque de función; sin embargo, es un estado inactivo, como
cuando un temporizador se mantiene en el estado de reinicialización.
Nota
Los temporizadores y contadores se actualizan cada vez que son encontrados en
la lógica, los temporizadores en la cantidad de tiempo consumido por el último
barrido y los contadores en una unidad.
Nota
Para las CPUs de PLC 350, 351, 352 y 360, los tiempos son idénticos excepto
para la instrucción MOVE, que es diferente para la CPU 350, consulte la nota en
la parte inferior de la tabla de la página A-6.
GFK-0467M-SP A-1
A
A-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A
Buscar distinto de
INT 198 159 124 83 79 39 36 21 1.93 1.93 2.48 1.52 19
DINT 201 163 132 84 79 37 35 21 6.49 6.47 6.88 3.82 19
BYTE 179 141 117 73 79 38 36 19 1.54 1.51 1.85 1.05 19
WORD 198 159 124 83 79 39 36 21 1.93 1.93 2.48 1.52 19
Buscar mayor que
INT 198 160 125 82 79 37 38 19 3.83 3.83 4.41 2.59 19
DINT 206 167 135 88 78 38 36 20 8.61 8.61 9.03 4.88 19
BYTE 181 143 118 73 79 37 36 19 3.44 3.44 3.75 2.03 19
WORD 198 160 125 82 79 37 38 19 3.83 3.83 4.41 2.59 19
Buscar mayor o igual que
INT 197 160 124 83 77 38 36 20 3.86 3.83 4.45 2.52 19
DINT 205 167 136 87 80 39 36 21 8.62 8.61 9.02 4.87 19
BYTE 180 142 118 75 79 37 37 20 3.47 3.44 3.73 2.00 19
WORD 197 160 124 83 77 38 36 20 3.86 3.83 4.45 2.52 19
Buscar menor que
INT 199 159 124 84 78 38 36 20 3.83 3.86 4.48 2.48 19
DINT 206 168 135 87 79 38 38 19 8.62 8.60 -1.36 4.88 19
BYTE 181 143 119 75 80 38 37 20 3.44 3.44 3.75 2.00 19
WORD 199 159 124 84 78 38 36 20 3.83 3.86 4.45 2.48 19
Buscar menor o igual que
INT 200 158 124 82 79 38 37 21 3.79 3.90 4.45 2.55 19
DINT 207 167 137 88 78 39 37 19 8.60 8.61 9.01 4.86 19
BYTE 180 143 119 74 78 40 37 19 3.46 3.44 3.73 2.02 19
WORD 200 158 124 82 79 38 37 21 3.79 3.90 4.45 2.55 19
Conversión Convertir a INT 74 46 39 25 42 1 1 1 – – – – 9
Convertir a BCD–4 77 50 34 25 42 1 1 1 – – – – 9
Notas: 1. El tiempo (en microsegundos) está basado en la versión 5.01 del software Logicmaster 9030/20 para las CPUs Modelos 311, 313, 340 y 341 (versión 7 para la 331).
2. Para funciones de tabla, el incremento está especificado en unidades de longitud; para funciones de operaciones de bits, microsegundos/bit; para funciones de
desplazamiento de datos, microsegundos/número de bits o palabras.
3. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
4. El tiempo COMMREQ ha sido medido entre CPU y HSC.
5. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
6. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.
7. Para instrucciones que tienen un valor incremental, multiplique el incremento por (Longitud –1) y sume ese valor al tiempo base.
A-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A
A-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A
A-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A
A-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A
A-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A
A-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A
Tabla A-6. Tamaño de las instrucciones para las CPUs 350 – 374
Función Tamaño de
memoria
Pasar pila y AND a parte superior 1
Pasar pila y OR a parte superior 1
Duplicar parte superior de la pila 1
Pila de posición 1
Pila inicial 1
Etiqueta 5
Salto 5
Todas las demás funciones 3
Bloques de función, véase la varios
Tabla A-2
Los PLCs de las Series 90-30, Series 90-20 y Series 90 Micro mantienen dos tablas de fallos, la
tabla de fallos de E/S generada por los dispositivos de E/S (incluyendo controladores de E/S) y la
tabla de fallos del PLC para los fallos internos del PLC. La información de este anexo le permitirá
interpretar el formato de la estructura del mensaje cuando lea dichas tablas de fallos. Ambas tablas
contienen información similar. Los datos de fallos de estas tablas sólo existen en el PLC, no en la
carpeta. Por tanto, si utiliza Logicmaster, deberá estar conectado en el modo ONLINE o en el
modo MONITOR para visualizar los fallos.
• La tabla de fallos del PLC contiene
Localización del fallo.
Descripción del fallo.
Fecha y hora del fallo.
•
La tabla de fallos de E/S contiene
Localización del fallo.
Dirección de referencia.
Categoría del fallo
Tipo de fallo
Fecha y hora del fallo.
GFK-0467M-SP B-1
B
Ejemplo
La siguiente figura muestra un ejemplo del fallo discordancia en la configuración del sistema que
ha sido ampliado a la pantalla de detalles del fallo.
El siguiente diagrama identifica cada campo de la entrada de fallo para el fallo discordancia en la
configuración del sistema mostrado más arriba:
00 3A0000 000373F2 0B03 0600 000000000000000000000000000000000000000000000000
Reserva Tarea Código
de error Datos adicionales
Largo/ Slot del fallo
Corto Grupo
Rack de fallo
Acción
del fallo
B-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
B
A continuación se explica la entrada del fallo discordancia en la configuración del sistema. (Todos
los datos están en hexadecimal.)
Los siguientes parágrafos describen el contenido de cada campo de la entrada de fallo. Se incluyen
tablas que describen el intervalo de los valores que puede tener cada campo.
Indicador largo/corto
Este byte indica si se han utilizado 8 bytes o los 24 bytes del campo de datos adicionales del fallo.
Tipo Código Datos adicionales de fallo
Corto 00 8 bytes
Largo 01 24 bytes
Reserva
Estos seis bytes son bytes de relleno, que se utilizan para que la entrada de la tabla de fallos del
PLC tenga exactamente la misma longitud que la entrada de la tabla de fallos de E/S.
Rack
El número de rack comprende de 0 hasta 7. Cero es el rack principal, que contiene el PLC. Los
racks 1 hasta 7 son racks de expansión, conectados al PLC a través de un cable de expansión.
Slot
El número de slot comprende de 0 hasta 9. La CPU del PLC ocupa siempre el slot 1 en el rack
principal (rack 0).
Tarea
El número de tarea comprende de 0 hasta +65,535. En ocasiones el número de tarea proporciona
información adicional para ingenieros de PLC; normalmente se puede ignorar.
Número de grupo
Decimal Hexadecimal Nombre de grupo Acción del fallo
1 1 Pérdida o ausencia de rack Fatal
4 4 Pérdida o ausencia de módulo opcional Diagnóstico
5 5 Adición de rack o rack extra Diagnóstico
8 8 Adición de módulo opcional o extra Diagnóstico
11 B discordancia en la configuración del sistema Fatal
12 C Error del bus del sistema Diagnóstico
13 D Avería en el hardware de la CPU del PLC Fatal
14 E Avería no fatal del hardware del módulo Diagnóstico
16 10 Avería del software del módulo opcional Diagnóstico
17 11 Avería de la suma de comprobación del programa Fatal
18 12 Señal de pila baja Diagnóstico
19 13 Tiempo de barrido constante excedido Diagnóstico
20 14 Tabla de fallos del PLC llena Diagnóstico
21 15 Tabla de fallos de E/S llena Diagnóstico
22 16 Fallo de la aplicación de usuario Diagnóstico
– – Códigos de fallos adicionales del PLC Como
especificado
128 80 Avería del bus del sistema Fatal
129 81 No hay programa de usuario en la conexión Informativo
130 82 Detectada RAM de usuario corrompida Fatal
132 84 Avería de acceso por contraseña Informativo
135 87 Avería en el software de la CPU del PLC Fatal
137 89 Avería de almacenamiento de secuencia del PLC Fatal
B-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
B
Código de error
El código de error proporciona información adicional sobre el fallo. Cada grupo de fallos tiene su
propio conjunto de códigos de error. La Tabla B-3 muestra los códigos de error para el grupo de
errores del software del PLC (Grupo 87H).
Tabla B-3. Códigos de error de alarma para los fallos del software de la CPU del PLC
La Tabla B-4 muestra los códigos de error para todos los demás grupos de fallos.
B-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
B
Tabla B-5. Datos de fallos del PLC – Detectado código de operaciones booleanas ilegal
Datos adicionales Discordancia en el número
de fallo de modelo
[0] Contenido del registro de fallos de
ISCP
[1] OPCODE incorrecto
[2,3] Contador del programa ISCP
[4,5] Número de función
Para un fallo en la RAM de la CPU del PLC (uno de los fallos notificado como
fallo del hardware de la CPU del PLC), la dirección del fallo se almacena en los
cuatro primeros bytes del campo.
Número de Descripción
byte
1 Segundos
2 Minutos
3 Horas
4 Día del mes
5 Mes
6 Año
Dirección de referencia.
Bloque
Acción Tipo Datos adicionales
Slot del fallo de fallo del fallo
B-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
B
Los siguientes parágrafos describen el contenido de cada campo de la tabla de fallos de E/S. Se
incluyen tablas que describen el intervalo de los valores que puede tener cada campo.
Indicador largo/corto
Este byte indica si un fallo determinado utiliza 5 bytes o 21 bytes del campo de datos específicos
del fallo.
Dirección de referencia
La dirección de referencia es una dirección de tres bytes que contiene el tipo de memoria de E/S y
la posición (u offset) de la memoria que corresponde al punto que ha experimentado el fallo. O,
cuando se produce un fallo del bloque o un fallo del módulo analógico integral, la dirección de
referencia alude al primer punto del bloque donde se ha producido el fallo.
Rack
El número de rack comprende de 0 hasta 7. Cero es el rack principal, es decir aquel que contiene
la CPU. Los racks 1 hasta 7 son racks de expansión.
Slot
El número de slot comprende de 0 hasta 9. La CPU del PLC ocupa siempre el slot 1 en el rack
principal
(rack 0).
Punto
El punto comprende de 1 hasta 1024 (decimal). Refiere qué punto en el bloque tiene el fallo,
cuando el fallo es de tipo punto.
B-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
B
B-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Anexo Mnemotécnico de las instrucciones
C
Grupo de Mnemotécnico
función Instrucción
Todos INT DINT BIT BYTE WORD REAL
Contactos Cualquier contacto &CON &CON
Contacto normalmente abierto &NOCON &NOCON
Contacto normalmente cerrado &NCCON &NCCON
Contacto de continuación &CONC &CONC
Bobinas Cualquier bobina &COI &COI
Bobina normalmente abierta &NOCOI &NOCOI
Bobina negada &NCCOI &NCCOI
Bobina de transición positiva &PCOI &PCOI
Bobina de transición negativa &NCOI &NCOI
Bobina SET &SL &SL
Bobina RESET &RL &RL
Bobina SET retentiva &SM &SM
Bobina RESET retentiva &RM &RM
Bobina retentiva &NOM &NOM
Bobina retentiva negada &NCM &NCM
Bobina de continuación &COILC &COILC
Enlaces Enlace horizontal &HO &HO
Enlace vertical &VE &VE
Temporiza- Temporizador retardo a la &ON &ON
dores conexión &TM &TM
Temporizador tiempo &OF &OF
transcurrido
Temporizador retardo a la
desconexión
Contadores Contador incremental &UP &UP
Contador decremental &DN &DN
GFK-0467M-SP C-1
C
Grupo de Mnemotécnico
función Instrucción
Todos BCD-4 INT DINT BIT BYTE WORD REAL
C-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
C
Grupo de Mnemotécnico
función Instrucción
Todos INT DINT BIT BYTE WORD REAL
Mover Mover &MOV &MOV_I &MOV_BI &MOV_W &MOV_R
datos
Mover bloque &BLKM &BLKM_I &BLKM_W &BLKM_R
Borrar bloque &BLKC
&SHF_BI
Registro de desplazamiento &SHF &AR_W
Secuenciador de bits &BI
Petición de comunicaciones &COMMR
Tabla Mover tabla &AR &AR_I &AR_DI &AR_BI &AR_BY &AR_W
Buscar igual que &SRCHE &SRCHE_I &SRCHE_DI &SRCHE_BY &SRCHE_W
Buscar distinto de &SRCHN &SRCHN_I &SRCHN_DI &SRCHN_BY &SRCHN_W
Buscar mayor que &SRCHGT &SRCHGT_I &SRCHGT_DI &SRCHGT_BY &SRCHGT_W
&SRCHGE_W
Buscar mayor o igual que &SRCHGE &SRCHGE_I &SRCHGE_DI &SRCHGE_BY &SRCHLT_W
Buscar menor que &SRCHLT &SRCHLT_I &SRCHLT_DI &SRCHLT_BY &SRCHLE_W_
Buscar menor o igual que &SRCHLE &SRCHLE_I &SRCHLE_DI &SRCHLE_BY
Control Llamar a una subrutina &CA
Ejecutar E/S &DO
SER &SER
Algoritmo PID – ISA &PIDIS
Algoritmo PID – IND &PIDIN
Reset SFC &SFCR
END &END
Explicación de escalón &COMME
(Comentario) &SV
Petición servicios sistema &MCR
Relé de control maestro &ENDMCR
Fin de relé de control maestro &MCRN
Relé de control maestro anidado &ENDMCRN
Fin de relé de control maestro &JUMP
anidado
&JUMPN
Salto
&LABEL
Salto anidado
&LABELN
Etiqueta
Etiqueta anidada
Este anexo ofrece una relación de las funciones del teclado que están activas en el entorno del
software. Para visualizar esta información en la pantalla del Logicmaster, pulse ALT-K para
acceder a ayuda mediante teclado.
GFK-0467M-SP D-1
D
La tarjeta de ayuda de la página siguiente contiene un listado con la ayuda principal y también
texto de ayuda para los mnemotécnicos de las instrucciones para el software Logicmaster 90-
30/20/Micro. Esta tarjeta está impresa por triplicado y perforada para poder extraerla fácilmente
del manual.
D-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
D
D-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Anexo Utilización de números de coma flotante
E
Existen algunas consideraciones que deberá comprender cuando utilice números de coma flotante.
La primera sección expone estas consideraciones generales. Consulte en la página E-5 y siguientes
las instrucciones para la introducción y visualización de los números de coma flotante.
Nota
Las operaciones de coma flotante sólo son soportadas en las CPUs de las series
35x y 36x versión 9.00 o posterior, y en todas las versiones de las CPU352 y
series 37x.
Nota
En este manual, los términos “coma flotante” y “real” se usan indistintamente
para describir la función de visualización /entrada de números de coma flotante
del software de programación.
Se utiliza el formato siguiente. Para números en el intervalo de 9999999 hasta .0001, la indicación
no tiene exponente y hasta seis o siete dígitos significativos. Por ejemplo:
Fuera del intervalo listado arriba, sólo se visualizan seis dígitos significativos y el indicador tiene
la siguiente forma +1.23456E+12
GFK-0467M-SP E-1
E
E-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
E
Los números de coma flotante se almacenan en el formato estándar IEEE de precisión simple. Este
formato requiere 32 bits que trasladan a dos registros adyacentes de 16 bits del PLC. La
decodificación de los bits se muestra en el diagrama inferior.
32 31 24 23 17 16 1
Mantisa 23 bits
Exponente 8 bits
El diagrama del registro utilizado por un número de coma flotante simple se muestra a
continuación. En este diagrama, si el número de coma flotante ocupa los registros %R0005 y
%R0006, por ejemplo, %R0005 es el registro menos significativo y el %R0006 es el registro más
significativo.
16 1
Bit menos significativo: Bit 1
32 17
Bit menos significativo: Bit 17
Use la siguiente tabla para calcular el valor de un número de coma flotante a partir de un número
binario almacenado en dos registros.
Por ejemplo, considere el número de coma flotante 12.5. La representación binaria de coma
flotante IEEE del número es:
01000001 01001000 00000000 00000000
ó 41480000 hex. El bit más significativo (el bit de signo) es cero (s=0). Los siguientes ocho bits
más significativos son 10000010, ó 130 decimal (e=130).
La mantisa se almacena como número binario decimal con el punto decimal precediendo al más
significativo de los 23 bits. De este modo, el bit más significativo de la mantisa es un múltiplo de
2–1, el siguiente bit más significativo es un múltiplo de 2–2, y así sucesivamente hasta el bit menos
significativo, que es un múltiplo de 2–23. Los 23 bits finales (la mantisa) son:
1001000 00000000 00000000
E-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
E
En la mantisa se pueden introducir y almacenar hasta seis o siete dígitos significativos de precisión;
sin embargo, el software de programación sólo mostrará los primeros seis de estos dígitos. La
mantisa puede ir precedida de un signo positivo o negativo. Si no se introduce ningún signo, se
presupone que el número de coma flotante es positivo.
Si se introduce un exponente, éste debe ir precedido de la letra E o e, y la mantisa debe contener
un punto decimal para evitar confundirlo con un número hexadecimal. El exponente puede ir
precedido por un signo; pero, si no se introduce ninguno, se presupone que éste es positivo. Si no
se introduce ningún exponente, se presupone que es cero. No se permiten espacios en un número
de coma flotante.
Para facilitar el uso, se aceptan varios formatos en la línea del comando y en el campo de entrada
de datos. Estos formatos incluyen un entero, un número decimal o un número decimal seguido de
un exponente. Estos números se convierten a la forma estándar para la visualización una vez que
el usuario ha introducido los datos y pulsado la tecla Intro.
A continuación se muestran ejemplos de entradas de números de coma flotante y su indicación
normalizada.
Introducido Visualizado en
Logicmaster
250 +250.0000
+4 +4.000000
–2383019 –2383019.
34. +34.00000
–.0036209 –.003620900
12.E+9 +1.20000E+10
–.0004E–11 –4.00000E–15
731.0388 +731.0388
99.20003e–29 +9.92000E–28
Nota
Si está utilizando software de coma flotante (todos los modelos con capacidad de
operar con coma flotante excepto la CPU 352 ó 374), los números se redondean a
cero (0) en ±1.175494E–38.
Si los infinitos que se producen por desbordamiento se utilizan como operandos de otras funciones
para números REALES, pueden arrojar un resultado no definido. Este resultado indefinido se
denomina NaN (no un número). Por ejemplo, el resultado de sumar más infinito y menos infinito
es indefinido. Cuando se invoca la función ADD_REAL con más infinito y menos infinito como
operandos de la misma, el resultado obtenido es NaN.
No un Número (NaN)
No un número es un número indefinido tal como el resultado de dividir cero entre cero. Infinito
positivo e infinito negativo no se consideran NaNs. Las siguientes secciones le ayudarán a
identificar cuando se ha obtenido un resultado NaN.
E-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
E
Código NaN para las CPUs 35x, 36x, y 37x (exclusive la CPU 352)
Todas las CPUs de las Series 90-30 que soportan las operaciones de coma flotante basadas en
software (queda excluida la CPU 352, que está basada en hardware) producen sólo una salida NaN:
FFFF FFFF. La indicación en la pantalla de lógica de contactos de Logicmaster será el término
“DESBORDAMIENTO” sin signo.
Tipo de No un Número (NaN) para las CPUs 35x, 36x y 37x (exclusive la CPU 352)
Valor de la tabla
Mnemotécnico de referencias Descripción
(Hex)
NaN_SW FFFF FFFF Código de coma flotante de software para todos los
NaNs
Nota
Para NaN, la salida ok está DESACTIVADA (sin energía).
La siguiente tabla explica cuando el flujo de energía pasa o no pasa cuando se opera con números
que se toman como o iguales a infinito para operaciones binarias como adición, multiplicación, etc.
Como se ha mostrado anteriormente, las salidas que exceden los límites positivo o negativo se
toman como POS_INF o NEG_INF respectivamente.
Tabla E-1. Caso general de flujo de energía para operaciones matemáticas de coma flotante
Operación Entrada 1 Entrada 2 Salida Flujo de energía
Todas Número Número Infinito positivo o No
negativo
Todas excepto Infinito Número Infinito Sí
división
Todas Número Infinito Infinito Sí
División Infinito Número Infinito No
Todas Número Número NaN No
E-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Anexo Comparación de software de programación
F
Este manual ha sido escrito para los usuarios de Logicmaster (software de programación del PLC
basado en DOS). Los productos de software de PLC basados en Windows, tales como
CIMPLICITY® Machine Edition Logic Developer y VersaPro®, proporcionan la información del
juego de instrucciones del PLC en el sistema de ayuda en línea integrado en el software, en lugar de
hacerlo en un manual. Los usuarios del software de programación basado en Windows deberán
tener en cuenta que las instrucciones aparecen de modo diferente a como aparecen en una pantalla
Logicmaster (aunque operan del mismo modo en el PLC). El sistema de ayuda en línea dispone de
la más precisa información sobre el uso del juego de instrucciones en el software de programación
basado en Windows.
Además del sistema de ayuda en línea, puede remitirse a los siguientes manuales para informarse
sobre la utilización del software:
Software de programación de VersaPro™ Guía del usuario GFK-1670
Guía de iniciación de CIMPLICITY® Machine Edition, GFK-1868
Notas
GFK-0467M-SP F-1
F
Habilitar ONDTR Q
0.10s
Valor actual
Reset R
Nombre de
Valor PV variable
predefinido
Dirección
%R00100 de
+00135 Dirección referencia
Valor actual de
referencia
VersaPro
Logicmaster
F-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Indice
cálculo del tiempo de barrido, 2-9
GFK-0467M-SP Indice-1
Indice
Indice-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Indice
formato de los bloques de función del programa, adición de un módulo de E/S, 3-18
2-33 avería de acceso por contraseña, 3-13
formato de relés, 2-33 avería de la suma de comprobación del
Estructura del programa programa, 3-11
cómo se llama a los bloques de subrutina, 2-24 avería del software del módulo opcional, 3-11
EXP, 6-14 avería en el software del sistema de la CPU del
Explicación y corrección de fallos, 3-1 PLC, 3-14
acceso a información adicional de fallos, 3-7 avería en las comunicaciones durante el
adición de un módulo de E/S, 3-18 almacenamiento, 3-16
avería de acceso por contraseña, 3-13 averías de E/S externas, 3-2
avería de la suma de comprobación del averías de funcionamiento, 3-2
programa, 3-11 averías internas, 3-2
avería del software del módulo opcional, 3-11 clases de fallos, 3-2
avería en el software del sistema de la CPU del códigos de error, B-5
PLC, 3-14 discordancia en la configuración del sistema, 3-
avería en las comunicaciones durante el 10
almacenamiento, 3-16 efectos de fallo adicionales, 3-5
categoría fallo, 3-17 explicaciones de la tabla de fallos de E/S, 3-17
descripción de fallo, 3-17 explicaciones de la tabla de fallos del PLC, 3-8
discordancia en la configuración del sistema, 3- fallo de aplicación, 3-12
10 grupo de fallos de E/S, B-10
explicaciones de la tabla de fallos de E/S, 3-17 grupo de fallos del PLC, B-4
explicaciones de la tabla de fallos del PLC, 3-8 interpretación de fallos, B-1
fallo de aplicación, 3-12 módulo opcional
fallos no configurables, 3-9 reinicialización, adición o extra, 3-9
grupo de fallos de E/S, B-10 no existe programa de usuario, 3-13
grupo de fallos del PLC, B-4 pérdida de un módulo de E/S, 3-17
interpretación de fallos, B-1 pérdida o ausencia de módulo opcional, 3-9
módulo opcional programa de usuario corrompido en la conexión,
reinicialización, adición o extra, 3-9 3-13
no existe programa de usuario, 3-13 reacción del sistema a los fallos, 3-3
pérdida de un módulo de E/S, 3-17 referencias, 3-4
pérdida o ausencia de módulo opcional, 3-9 señal de pila baja, 3-11
programa de usuario corrompido en la conexión, tabla de fallos de E/S, 3-3, 3-6
3-13 tabla de fallos de PLC, 3-3, 3-6
señal de pila baja, 3-11 tiempo de barrido constante excedido, 3-12
tabla de fallos de E/S, 3-6 Fallos de diagnóstico, 3-4
tabla de fallos de PLC, 3-6 adición de un módulo de E/S, 3-18
tiempo de barrido constante excedido, 3-12 fallo de aplicación, 3-12
tipo de fallo, 3-17 módulo opcional
tratamiento de fallos, 3-2 reinicialización, adición o extra, 3-9
Exploración de entradas, 2-10 pérdida de un módulo de E/S, 3-17
Exploración de la lógica del programa de pérdida o ausencia de módulo opcional, 3-9
señal de pila baja, 3-11
aplicación, 2-10
tiempo de barrido constante excedido, 3-12
Exploración de salidas, 2-11
Fallos fatales, 3-4
Exploración, entradas, 2-10 avería de la suma de comprobación del
Exploración, salidas, 2-11 programa, 3-11
EXPT, 6-14 avería del software del módulo opcional, 3-11
avería en el software del sistema de la CPU del
F PLC, 3-14
avería en las comunicaciones durante el
Fallo de aplicación, 3-12 almacenamiento, 3-16
Fallos, 3-2 discordancia en la configuración del sistema, 3-
10
acceso a información adicional de fallos, 3-7
programa de usuario corrompido en la conexión,
acción de fallo del PLC, B-5
3-13
acción de fallos de E/S, B-11
acción del fallo, 3-4 Fallos informativos, 3-4
acciones, 3-9 avería de acceso por contraseña, 3-13
Indice-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Indice
Funciones de control, 12-1 Leer tras auto reset tras fallo fatal, 12-81
funciones de conversión, 11-1 LN, 6-14
funciones de operaciones con bits, 8-1 Localización de fallos, 3-1
funciones de tablas, 10-1 acceso a información adicional de fallos, 3-7
funciones matemáticas, 6-1 explicaciones de la tabla de fallos de E/S, 3-17
Funciones para mover datos, 9-1 explicaciones de la tabla de fallos del PLC, 3-8
funciones relacionales, 7-1 fallos no configurables, 3-9
Instrucciones, programación interpretación de fallos, B-1
funciones de relé, 4-1 tabla de fallos de E/S, 3-6
funciones matemáticas, 6-1 tabla de fallos de PLC, 3-6
funciones relacionales, 7-1 LOG, 6-14
funciones de operaciones con bits, 8-1 Logaritmo base 10, 6-14
Funciones para mover datos, 9-1 LOS_IOM, 2-31
funciones de tablas, 10-1 LOS_SIO, 2-32
funciones de conversión, 11-1 LOW_BAT, 2-31
Funciones de control, 12-1
mnemotécnico de las instrucciones, C-1
INT, 2-29, 11-3
M
Interrogar E/S, 12-72 Mantenimiento, 3-1
Interruptor con llave en las CPUs de las Series Manuales
35x, 36x y 37x:, 2-19 para módulos de E/S, 2-49
IO_FLT, 2-32 MCR anidado, 12-27
IO_PRES, 2-32 Memoria corrompida, 3-8
IT, 7-1 Memoria, corrompida, 3-8
Mnemotécnico de las instrucciones, C-1
J Mnemotécnico, instrucciones, C-1
MOD, 6-8
Juego de instrucciones Modificar el modo de la ventana de
Funciones de control, 12-1 comunicaciones del programador y el
funciones de conversión, 11-1 valor del temporizador., 12-47
funciones de operaciones con bits, 8-1 Modificar el modo de la ventana de
funciones de relé, 4-1 comunicaciones del sistema y el valor del
funciones de tablas, 10-1 temporizador, 12-49
funciones matemáticas, 6-1
funciones para mover datos, 9-1
Modificar/leer el reloj calendario, 12-53
funciones relacionales, 7-1 Modificar/leer el temporizador de barrido
JUMP (SALTO), 12-34 constante, 12-42
Modificar/leer número de palabras para suma
de comprobación, 12-51
L Modo con tiempo de barrido constante, 2-43
LABEL (ETIQUETA), 12-36 Modo de tiempo de barrido constante, 2-16
LE, 7-1 Modo STOP, 2-17
Leer el estado de sobrecontrol de E/S, 12-69 Modos de ventana de comunicaciones, 2-18
Leer el estado Run del PLC., 12-61 Módulo opcional
reinicialización, adición o extra, 3-9
Leer el nombre de carpeta, 12-59
Módulos de E/S del Modelo 30, 2-49
Leer el reloj de tiempo transcurrido, 12-68
Módulos de E/S Modelo 20, 2-53
Leer el tiempo de barrido desde el comienzo
MOVE, 9-2
del barrido, 12-58
MSKCMP, 8-19
Leer ID del PLC, 12-60
MUL, 6-2
Leer la suma de comprobación maestra, 12-70
Leer la última entrada registrada en la tabla de
fallos, 12-64 N
Leer los valores de la ventana, 12-45
Leer tiempo transcurrido con la corriente NaN, E-6
desconectada, 12-73 NE, 7-1
Indice-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Indice
Indice-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Indice