Está en la página 1de 690

Manual de referencia

Instrucciones generales de controladores


programables Micro800
Números de catálogo 2080-LC10, 2080-LC20, 2080-LC30, 2080-LC50,
2080-LC70
Información importante para el usuario
Lea este documento y los documentos incluidos en la sección de recursos adicionales acerca de la instalación, configuración y operación de
este equipo antes de instalar, configurar, operar o mantener este producto. Es necesario que los usuarios se familiaricen con la instalación y
las instrucciones de cableado además de los requisitos de todos los códigos, leyes y estándares aplicables.

Actividades como la instalación, ajustes, puesta en servicio, uso, montaje, desmontaje y mantenimiento deben ser llevadas a cabo por
personal formado adecuadamente según el código de prácticas aplicable. Si se utiliza este equipo de algún modo no especificado por el
fabricante, la protección ofrecida por el equipo puede verse perjudicada.

Bajo ningún concepto será Rockwell Automation, Inc. responsable de los daños indirectos o emergentes que resulten del uso o de la
aplicación de estos equipos.

Los ejemplos y diagramas de este manual se incluyen únicamente con carácter ilustrativo. Debido a la gran cantidad de variables y
requisitos asociados a cualquier instalación en particular, Rockwell Automation Inc. no puede asumir responsabilidad alguna por el uso
basado en dichos ejemplos y diagramas.

Rockwell Automation, Inc. no asume responsabilidad alguna por patentes con respecto al uso de la información, los circuitos, los equipos o
el software descritos en este manual.

Queda prohibida la reproducción total o parcial del contenido de este manual sin el permiso por escrito de Rockwell Automation, Inc.

A lo largo del manual, hacemos uso de notas para advertirle de consideraciones de seguridad cuando es necesario.

WARNING: Identifica información sobre prácticas o circunstancias que pueden provocar una
explosión en un entorno peligroso, las cuales pueden producir lesiones o la muerte, daños
materiales o pérdida económica.

ATENCIÓN: Identifica información sobre prácticas o circunstancias que pueden producir lesiones
o la muerte, daños materiales o pérdida económica. Estos mensajes le ayudan a identificar un
peligro, a evitarlo y a reconocer las consecuencias.

Importante: Identifica información crítica para aplicar y comprender correctamente el producto.

Estas etiquetas también pueden encontrarse en el exterior o en el interior del equipo para proporcionar precauciones específicas.

RIESGO DE DESCARGA: Estas etiquetas pueden encontrarse en el exterior o en el interior de


los equipos, por ejemplo, en variadores o motores, para alertar a las personas de una tensión
peligrosa.

RIESGO DE QUEMADURAS: Estas etiquetas pueden encontrarse en el exterior o en el interior


de los equipos, por ejemplo, en variadores o motores, para alertar a las personas de que las
superficies pueden alcanzar temperaturas peligrosas.

RIESGO DE ARCO ELÉCTRICO Estas etiquetas pueden encontrarse en el exterior o en el


interior de los equipos, por ejemplo, en centro de control del motor, para advertir a las personas
sobre un posible arco eléctrico. Un arco eléctrico puede provocar graves lesiones o la muerte.
Utilice equipamiento de protección personal (PPE) adecuado. Observe TODOS los requisitos
normativos de prácticas de seguridad laboral y de equipamiento de protección personal (PPE).
Allen-Bradley, Rockwell Software, Rockwell Automation y TechConnect son marcas comerciales de Rockwell Automation, Inc.

Las marcas comerciales que no pertenecen a Rockwell Automation son propiedad de las empresas correspondientes.

 
Índice de materias

Prefacio  En este manual .............................................................................................. 15 


Controladores compatibles ........................................................................... 15 
Otros recursos ............................................................................................... 15 
Aviso legal .................................................................................................... 16 

Capítulo 1 

Buscar información Bloques de instrucciones .............................................................................. 19 


Operadores ............................................................................................. 19 
sobre instrucciones Funciones ............................................................................................... 20 
y elementos de Bloques de función ................................................................................. 21 
lógica de escalera  Conjunto de instrucciones en orden alfabético ............................................. 23 

Capítulo 2 

Lenguaje de Programa de diagrama de escalera (LD) ....................................................... 33 


Entorno de desarrollo de programas de LD .................................................. 34 
diagrama de lógica
de escalera (LD) 
Capítulo 3 

Elementos de Peldaño ................................................................................................... 37 


Agregar una línea a un programa de LD.......................................... 38 
diagrama de escalera Etiquetas de línea ............................................................................. 39 
(LD)  Comentarios de peldaño .................................................................. 40 
Bifurcación ............................................................................................. 42 
Agregar una bifurcación a un programa de LD ............................... 42 
Bloque de instrucciones (LD) ................................................................ 45 
Bobina .................................................................................................... 45 
Agregar elementos de bobina .......................................................... 46 
Bobina directa .................................................................................. 49 
Bobina inversa ................................................................................. 49 
Bobina de extremo de decremento de pulso .................................... 50 
Bobina de extremo de incremento de pulsos ................................... 51 
Bobina de ajuste ............................................................................... 52 
Bobina de restablecimiento.............................................................. 52 
Contacto ................................................................................................. 53 
Agregar un contacto a un programa de LD...................................... 54 
Contacto directo ............................................................................... 57 
Contacto inverso .............................................................................. 57 
Contacto de flanco ascendente de pulso .......................................... 58 
Contacto de flanco descendente de pulso ........................................ 59 
Retorno ................................................................................................... 60 
Salto........................................................................................................ 61 
Bloques de instrucciones en programas de LD ............................................. 62 
Trabajar en el editor de idioma de LD .......................................................... 63 
Ejemplos de programa de diagrama de escalera (LD) .................................. 64 

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 5


Índice de materias

Métodos abreviados de teclado de LD .......................................................... 66 

Capítulo 4 

Instrucción de LIM_ALRM (alarma de límite) .................................................................... 69 


alarma 
Capítulo 5 

Instrucciones ABS (valor absoluto) .................................................................................... 74 


ACOS (arcocoseno de origen) ...................................................................... 75 
aritméticas  ACOS_LREAL (arcocoseno real largo) ....................................................... 76 
Addition ........................................................................................................ 78 
ASIN (arcoseno) ........................................................................................... 79 
ASIN_LREAL (arcoseno real largo) ............................................................ 81 
ATAN (arcotangente) ................................................................................... 82 
ATAN_LREAL (arcotangente real largo) .................................................... 84 
COS (coseno) ................................................................................................ 85 
COS_LREAL (coseno real largo) ................................................................. 86 
Division......................................................................................................... 88 
EXPT (exponente) ........................................................................................ 90 
LOG (logaritmo base 10) .............................................................................. 91 
MOD (módulo) ............................................................................................. 92 
MOV (movimiento) ...................................................................................... 94 
Multiplication ............................................................................................... 95 
Neg (negación).............................................................................................. 97 
POW (aumento potencia).............................................................................. 98 
RAND (valor aleatorio) .............................................................................. 100 
SIN (seno) ................................................................................................... 101 
SIN_LREAL (seno real largo) .................................................................... 103 
SQRT (raíz cuadrada) ................................................................................. 104 
Subtraction .................................................................................................. 106 
TAN (tangente) ........................................................................................... 108 
TAN_LREAL (tangente real larga) ............................................................ 109 
TRUNC (truncar) ........................................................................................ 110 

Capítulo 6 

Instrucciones de ABL (prueba de ASCII de línea de búfer) .................................................. 113 


ACL (ASCII clear buffer, o ASCII borra el búfer) ..................................... 115 
puerto serie ASCII  AHL (líneas de confirmación de ASCII) .................................................... 118 
ACB (caracteres ASCII en el búfer) ........................................................... 120 
ARD (lectura ASCII) .................................................................................. 122 
ARL (línea de lectura ASCII) ..................................................................... 125 
AWA (escritura ASCII con anexo) ............................................................. 127 
AWT (escritura ASCII) .............................................................................. 129 
Detalles de parámetros ASCII .................................................................... 131 
Tipo de datos ABLACB ....................................................................... 132 
Tipo de datos ACL ............................................................................... 132 
Tipo de datos AHL ChannelSts ............................................................ 133 

6 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Índice de materias

Tipo de datos AHLI.............................................................................. 133 


Tipo de datos ARDARL ....................................................................... 133 
Tipos de datos AWAAWT ................................................................... 134 

Capítulo 7 

Instrucciones AND_MASK (máscara AND) .................................................................... 135 


BSL (desplaza un bit hacia la izquierda) .................................................... 137 
binarias  BSR (desplaza un bit hacia la derecha) ...................................................... 140 
NOT_MASK (máscara de negación bit a bit)............................................. 143 
OR_MASK (máscara OR bit a bit) ............................................................. 145 
ROL (girar a la izquierda) ........................................................................... 146 
ROR (girar a la derecha) ............................................................................. 148 
SHL (desplaza hacia la izquierda) .............................................................. 150 
SHR (desplaza hacia la derecha) ................................................................ 152 
XOR_MASK (máscara OR exclusiva) ....................................................... 153 

Capítulo 8 

Instrucciones F_TRIG (Detección de flanco descendente) ............................................... 157 


R_TRIG (detector de flanco ascendente).................................................... 159 
booleanas  RS (establecer/restablecer) ......................................................................... 160 
OR ............................................................................................................... 162 
AND............................................................................................................ 163 
XOR (OR exclusiva)................................................................................... 163 
NOT ............................................................................................................ 164 
SR (establecer/restablecer) ......................................................................... 165 
TTABLE (tabla de verdad) ......................................................................... 166 
MUX8B (multiplicador de 8 entradas BOOL) ........................................... 169 
MUX4B (multiplicador de 4 entradas BOOL) ........................................... 172 

Capítulo 9 

Instrucciones de MSG_CIPGENERIC (mensaje genérico de protocolo industrial común) .. 175 


Tipo de datos CIPAPPCFG .................................................................. 178 
comunicación  Tipo de datos CIPCONTROLCFG ...................................................... 178 
CIPSTATUS data type ......................................................................... 179 
Bits de estado CIPSTATUS........................................................... 180 
Códigos de error CIPSTATUS ...................................................... 181 
Tipo de datos CIPTARGETCFG ......................................................... 182 
Ruta de destino de mensajes CIP ................................................... 183 
Conexiones de mensaje CIP/EIP ................................................... 184 
Temporizadores de tiempo de espera de mensajes CIP ................. 185 
MSG_CIPSYMBOLIC (mensaje simbólico de protocolo industrial común)
.................................................................................................................... 185 
Tipo de datos CIPSYMBOLICCFG .................................................... 188 
Sintaxis de lectura/escritura simbólica .......................................... 189
Tamaño admitido de paquete de datos para la función serie CIP......... 189 
MSG_MODBUS (mensaje modbus) .......................................................... 190 

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 7


Índice de materias

MODBUSLOCPARA data type........................................................... 193 


Proceso de ejecución de mensajes (Peldaño = CIERTO) ..................... 195 
MODBUSTARPARA data type........................................................... 196 
MSG_MODBUS2 (mensajes MODBUS/TCP) .......................................... 196 
Tipo de datos MODBUS2LOCPARA ................................................. 200 
Tipo de datos MODBUS2TARPARA ................................................. 201 
Procesos y diagramas de temporización de ejecución de mensajes ............ 203 
Proceso de ejecución de mensajes (general) ........................................ 204 
Proceso de ejecución de mensajes (Peldaño = CIERTO) ..................... 205 
Diagrama de temporización de ejecución de mensajes (Línea = Cierto)
.............................................................................................................. 206 
Proceso de ejecución de mensajes (Peldaño = Falso) .......................... 207 
Diagrama de temporización de ejecución de mensajes (Peldaño = Falso)
.............................................................................................................. 208 
Proceso de ejecución de mensajes (Error) ............................................ 208 
Diagrama de temporización de ejecución de mensajes (Error) ............ 209 
Utilizar los bloques de funciones de comunicación (mensajes) ................. 210 
Configurar valores de datos de objetos para mensajes explícitos
(MSG_CIPGENERIC) ......................................................................... 210 
Ejemplo: Cómo crear un programa de mensajería MSG_CIPGENERIC
para leer datos de un controlador ......................................................... 213 
Identificar los valores iniciales de las variables de entrada
(MSG_CIPGENERIC) .................................................................. 213 
Agregar un bloque de funciones MSG_CIPGENERIC y variables214 
Configurar los valores iniciales de las variables ............................ 216 
Agregar un contacto y una bobina ................................................. 219 
Agregar un bloque de funciones COP, variables y un contacto
(MSG_CIPGENERIC) .................................................................. 220 
Comprobar si la configuración de IP es correcta en el controlador B
....................................................................................................... 222 
Ejemplo: Cómo crear un programa de mensajería MSG_CIPSYMBOLIC
para escribir un valor en una variable .................................................. 223 
Agregar un bloque de funciones COP, variables y un contacto
(MSG_CIPSYMBOLIC) ............................................................... 224 
Agregar un operador Equal y una bobina ...................................... 226 
Agregar un bloque de funciones MSG_CIPSYMBOLIC, variables y
un contacto ..................................................................................... 227 
Comprobar si la configuración de IP es correcta en el controlador B
....................................................................................................... 230 
Crear una variable global para el controlador B ............................ 231 
Revisar los resultados del programa completo .............................. 232 
Ejemplo: Cómo configurar una comunicación de Modbus para leer una
unidad y escribir en ella ....................................................................... 233 
Compatibilidad con protocolos de comunicación ....................................... 237 
Canales de comunicación integrados ................................................... 239 

8 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Índice de materias

Capítulo 10 

Instrucciones de Equal ........................................................................................................... 241 


Greater than ................................................................................................ 244 
comparación  Greater than or equal .................................................................................. 246 
Less than ..................................................................................................... 248 
Less than or equal ....................................................................................... 249 
Not equal ..................................................................................................... 250 

Capítulo 11 

Instrucciones de CTD (recuento descendente) ...................................................................... 253 


CTU (recuento ascendente) ........................................................................ 255 
contador  CTUD (recuento ascendente/descendente) ................................................. 257 

Capítulo 12 

Instrucciones de ANY_TO_BOOL ....................................................................................... 259 


ANY_TO_BYTE ........................................................................................ 260 
conversión de datos  ANY_TO_DATE ........................................................................................ 261 
ANY_TO_DINT ......................................................................................... 263 
ANY_TO_DWORD ................................................................................... 264 
ANY_TO_INT ............................................................................................ 265 
ANY_TO_LINT ......................................................................................... 267 
ANY_TO_LREAL ..................................................................................... 268 
ANY_TO_LWORD .................................................................................... 269 
ANY_TO_REAL ........................................................................................ 270 
ANY_TO_SINT ......................................................................................... 271 
ANY_TO_STRING .................................................................................... 272 
ANY_TO_TIME......................................................................................... 274 
ANY_TO_UDINT ...................................................................................... 275 
ANY_TO_UINT ......................................................................................... 276 
ANY_TO_ULINT ...................................................................................... 277 
ANY_TO_USINT....................................................................................... 278 
ANY_TO_WORD ...................................................................................... 280 

Capítulo 13 

Instrucciones de AVERAGE ................................................................................................. 283 


COP ............................................................................................................ 285 
manipulación de Copiar en un tipo de datos diferente..................................................... 288 
datos  Ejemplo de matriz de cadena de COP .................................................. 288 
MIN (mínimo) ............................................................................................ 290 
MAX (máximo) .......................................................................................... 291 

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 9


Índice de materias

Capítulo 14 

Instrucciones del ¿Qué es un contador de alta velocidad? ...................................................... 295 


HSC (contador de alta velocidad) ............................................................... 296 
contador de alta Valores de HSCCmd ............................................................................ 298 
velocidad (HSC)  Tipo de datos HSCAPP ........................................................................ 299 
Tipo de datos HSCSTS ........................................................................ 303 
Tipo de datos PLS ................................................................................ 312 
HSC_SET_STS (estado de ajuste del contador de alta velocidad) ............. 313 
Usar las instrucciones del contador de alta velocidad ................................ 316 
Actualizar datos de aplicación del HSC ............................................... 316 
Cuadro de diálogo Interrupción del usuario de contador de alta velocidad
(HSC) ................................................................................................... 317 
Configurar una interrupción del usuario de contador de alta velocidad
(HSC) ................................................................................................... 317 
Agregar y configurar una interrupción del usuario de contador de alta
velocidad (HSC) ................................................................................... 318 
Propiedades de interrupciones HSC .............................................. 319 
Parámetros de interrupciones HSC ................................................ 320 
Configurar un interruptor programable de límite (PLS)....................... 322 
Ejemplo: Cómo crear un programa de contador de alta velocidad (HSC)
.............................................................................................................. 323 
Crear un diagrama de lógica de escalera y agregar variables ........ 325 
Asignar valores a las variables del HSC ........................................ 328 
Asignar variables y compilar el programa ..................................... 329 
Probar el programa y ejecutar el contador de alta velocidad ......... 330 
Add a Programmable Limit Switch (PLS) function ............................. 333 
Ejemplo: Interruptor de límite programable (PLS) habilitado ............. 334 

Capítulo 15 

Instrucciones HSCE  HSCE .......................................................................................................... 337 


HSCE_CFG ................................................................................................ 340 
HSCE_CFG_PLS ....................................................................................... 343 
HSCE_READ_STS .................................................................................... 346 
HSCE_SET_STS ........................................................................................ 347 

Capítulo 16 

Instrucciones de LCD ............................................................................................................ 352 


LCD_BKLT_REM (retroiluminación del LCD remoto) ............................ 354 
entrada/salida  LCD_REM (LCD remoto) .......................................................................... 356 
RHC (lectura del reloj de alta velocidad) ................................................... 359 
RPC (lectura de la suma de comprobación del programa) ......................... 361 
DLG (registro de datos) .............................................................................. 362 
IIM (entrada inmediata) .............................................................................. 364 
IOM (salida inmediata) ............................................................................... 365 
KEY_READ (lectura de claves en el LCD) ............................................... 367 
KEY_READ_REM (lectura de claves del LCD remoto) ........................... 370 
MM_INFO (información del módulo de memoria) .................................... 372 
10 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018
Índice de materias

Tipos de datos MMINFO ..................................................................... 374 


MODULE_INFO ........................................................................................ 375 
MODULE_INFO: información sobre el módulo de expansión y el
módulo enchufable ............................................................................... 380 
Diagramas de temporización de la instrucción MODULE_INFO ....... 382
PLUGIN_INFO (información del módulo enchufable) .............................. 388 
PLUGIN_READ (leer módulo enchufable)................................................ 390 
PLUGIN_RESET (restablecer módulo enchufable) ................................... 392 
PLUGIN_WRITE (escribir módulo enchufable) ........................................ 394 
RCP (receta)................................................................................................ 396 
RTC_READ (leer reloj en tiempo real) ...................................................... 398 
RTC_SET (establecer reloj en tiempo real) ................................................ 401 
SYS_INFO .................................................................................................. 403 
Tipo de datos SYS_INFO .................................................................... 404 
TRIMPOT_READ (leer potenciómetro de ajuste) ..................................... 405 
Definición de ID de Trimpot ................................................................ 406 

Capítulo 17 

Instrucciones de STIS (selección de inicio retardado) ........................................................... 409 


UIC (borrado de bit de pérdida de interrupción) ........................................ 411 
interrupción  UID (deshabilitar interrupción) .................................................................. 413 
UIE (habilitar interrupción) ........................................................................ 414 
UIF (eliminar interrupción pendiente) ........................................................ 416 

Capítulo 18 

Instrucciones de Reglas generales de bloques de función de control de movimiento ........... 420 


Detalles de parámetros de bloques de funciones de control de movimiento
control de .................................................................................................................... 423 
movimiento  Estados de los ejes de control de movimiento ...................................... 423 
Números de parámetro de bloques de funciones de control de
movimiento .......................................................................................... 426 
ID de error de bloque de función de control de movimiento ............... 427 
Escenarios de error de ejes ................................................................... 429 
Tipos de datos de AXIS_REF .............................................................. 430 
Tipos de datos FB_AXIS_REF ............................................................ 431 
Variables de eje .................................................................................... 432 
MC_AbortTrigger (disparador de anulación del control de movimiento) .. 432 
MC_Halt (detención de control de movimiento) ........................................ 435 
MC_Home (entrada de control de movimiento) ......................................... 438 
MC_MoveAbsolute (absoluto de movimiento del control de movimiento) 442 
MC_MoveRelative (relativo de movimiento del control de movimiento) . 446 
MC_MoveVelocity (velocidad de movimiento del control de movimiento)
.................................................................................................................... 450 
MC_Power (potencial de control de movimiento)...................................... 454 
MC_ReadActualPosition (posición real de lectura de control de movimiento)
.................................................................................................................... 457 
MC_ReadActualVelocity (velocidad real de lectura de control de
movimiento) ................................................................................................ 461 

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 11


Índice de materias

MC_ReadAxisError (error de eje de lectura de control de movimiento) ... 464 


Códigos de error AxisErrorID .............................................................. 467 
MC_ReadBoolParameter (parámetro BOOL de lectura de control de
movimiento) ................................................................................................ 469 
MC_ReadParameter (parámetro de lectura de control de movimiento) ..... 471 
MC_ReadStatus (estado de lectura de control de movimiento) .................. 474 
MC_Reset (restablecimiento de control de movimiento) ........................... 479 
MC_SetPosition (posición establecida de control de movimiento) ............ 482 
MC_Stop (parada de control de movimiento) ............................................ 485 
MC_TouchProbe (sonda de toque de control de movimiento) ................... 488 
MC_WriteBoolParameter (parámetro BOOL de escritura de control de
movimiento) ................................................................................................ 492 
MC_WriteParameter (parámetro de escritura de control de movimiento) . 495 

Capítulo 19 

Instrucciones de DERIVATE ................................................................................................ 499 


FFL (carga FIFO) ....................................................................................... 501 
control de proceso  Diagramas de temporización de instrucción FFL y FFU ..................... 507 
FFU (descarga FIFO) .................................................................................. 511 
HYSTER (histéresis) .................................................................................. 516 
INTEGRAL ................................................................................................ 518 
LFL (carga LIFO) ....................................................................................... 522 
LFU (descarga LIFO) ................................................................................. 525 
PWM (modulación de ancho de pulso)....................................................... 527 
SCALER (escala ......................................................................................... 529 
STACKINT (pila de enteros) ...................................................................... 531 
TND (anulación de programa actual) ......................................................... 534 
LÍMITE (prueba límite) .............................................................................. 535 

Capítulo 20 

Instrucción de SUS (suspensión) ........................................................................................ 539 


control de programa 
Capítulo 21 

Instrucción ¿Qué es el control proporcional-integral-derivativo (PID)? ....................... 541 


IPIDCONTROLLER (proporcional - integral - derivativa - controlador) .. 541 
proporcional integral Tipos de datos GAIN_PID ................................................................... 545 
derivativa (PID)  Tipos de datos AT_Param .................................................................... 546 
Cómo implementa el bloque de funciones IPIDController el control PID
.............................................................................................................. 547 
Operación de bloque de funciones IPIDCONTROLLER .................... 548 
Usar la instrucción proporcional-integral-derivativa ........................... 550 
Utilizar el ajuste automático con el bloque de funciones
IPIDController ............................................................................... 552 
Ajuste automático en sistemas de primer y segundo orden ........... 553 
Configurar el ajuste automático ..................................................... 554 

12 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Índice de materias

Utilizar una interrupción de temporización estructurada (STI) con el


ajuste automático ........................................................................... 558 
Ejemplo: IPIDController con ajuste automático ............................ 559 
Ejemplo: Cómo crear un bucle de retorno para el valor manipulado
....................................................................................................... 561 
Ejemplo: Cómo agregar un UDFB a un programa PID ................. 562 
Ejemplo: Cómo crear un programa IPIDController para controlar la
temperatura .................................................................................... 563 
Ejemplo: Cómo crear un programa IPIDController para controlar el
nivel de suministro de agua ........................................................... 564 
PID (proporcional-integral-derivativo) ....................................................... 567 
Máquina de estado de la instrucción PID ............................................. 572 
Diagramas de temporización de la instrucción PID ............................. 573 

Capítulo 22 

Instrucciones del RTC_READ (leer reloj en tiempo real) ...................................................... 579 


RTC_SET (establecer reloj en tiempo real) ................................................ 581 
reloj de tiempo real
(RTC) 
Capítulo 23 

Instrucciones del SOCKET_ACCEPT ................................................................................... 587 


SOCKET_CREATE ................................................................................... 590 
socket  SOCKET_DELETE .................................................................................... 596 
SOCKET_DELETEALL ............................................................................ 598 
SOCKET_INFO ......................................................................................... 601 
SOCKET_OPEN ........................................................................................ 606 
SOCKET_READ ........................................................................................ 611 
SOCKET_WRITE ...................................................................................... 615 
Tipo de datos SOCKADDR_CFG .............................................................. 620 
Tipo de datos SOCK_STATUS .................................................................. 620 
Códigos de error de socket.......................................................................... 620 
Bits de estado de instrucciones de socket ................................................... 626 
Diagramas de temporización de las instrucciones de socket ...................... 627 
Diagramas de transacción de las instrucciones de socket ........................... 634 
Transacciones para el cliente TCP .............................................................. 634 
Transacciones para el servidor TCP ........................................................... 634 
Transacciones para UDP con conexión abierta .......................................... 635 
Transacciones para UDP sin conexiones abiertas ....................................... 635 
Diagramas de estado de máquina para TCP ............................................... 636 
Diagramas de estado de la máquina para UDP ........................................... 639 

Capítulo 24 

Instrucciones de ASCII .......................................................................................................... 641 


CHAR (código ASCII a carácter de cadena) .............................................. 643 
manipulación de DELETE (eliminar subcadena) ................................................................... 645 
cadenas  FIND (buscar subcadena) ........................................................................... 646 
INSERT (insertar cadena) ........................................................................... 648 

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 13


Índice de materias

LEFT (extrae la parte izquierda de una cadena) ......................................... 650 


MID (extrae la parte media de una cadena) ................................................ 652 
MLEN (longitud de cadena) ....................................................................... 653 
RIGHT (extrae la parte derecha de una cadena) ......................................... 655 
REPLACE (replace sub-string) .................................................................. 657 

Capítulo 25 

Instrucciones de Configuración de instrucciones de temporizador ....................................... 661 


TOF (temporizador, retraso de desactivación)............................................ 662 
temporizador  TON (temporizador, retraso de activación) ................................................ 663 
TONOFF (tiempo de retraso, activado, desactivado) ................................. 665 
TP (temporización del pulso) ...................................................................... 668 
RTO (temporizador retentivo, activación con retraso) ............................... 670 
DOY (comprobar año del reloj de tiempo real) .......................................... 672 
TDF (diferencia horaria) ............................................................................. 674 
TOW (comprobar semana del reloj de tiempo real) ................................... 676 
Índice    

14 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Prefacio

En este manual Esta guía proporciona información de referencia sobre el conjunto de


instrucciones disponibles para desarrollar programas que se usarán en
sistemas de control Micro800. El conjunto de instrucciones es compatible
con lenguajes de programación de texto estructurado (ST), diagramas de
lógica de escalera (LD) y diagramas de bloque de funciones (FBD). También
se definen los elementos de lógica de escalera admitidos en el entorno de
desarrollo de Connected Components Workbench.

Controladores Connected Components Workbench es compatible con los siguientes


controladores Micro800.
compatibles
 2080-LC10-12AWA  2080-LC30-24QBB
 2080-LC10-12DWD  2080-LC30-24QVB
 2080-LC10-12QBB  2080-LC30-24QWB
 2080-LC10-12QWB  2080-LC30-48AWB
 2080-LC20-20AWB  2080-LC30-48QBB
 2080-LC20-20QBB  2080-LC30-48QVB
 2080-LC20-20QWB  2080-LC30-48QWB
 2080-LC30-10QVB  2080-LC50-24AWB
 2080-LC30-10QWB  2080-LC50-24QBB
 2080-LC30-16AWB  2080-LC50-24QVB
 2080-LC30-16QVB  2080-LC50-24QWB
 2080-LC30-16QWB  2080-LC50-48AWB
 2080-LC50-48QBB
 2080-LC50-48QVB
 2080-LC50-48QWB
 2080-LC70-24QBB
 2080-LC70-24QWB

Otros recursos Estos documentos contienen más información sobre productos relacionados
de Rockwell Automation.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 15


Prefacio

Recurso Descripción
Industrial Automation Wiring and Proporciona directrices generales para
Grounding Guidelines (Directrices de instalar un sistema industrial de
cableado y puesta a tierra de Rockwell Automation.
automatización industrial), publicación
1770-4.1 disponible en
http://literature.rockwellautomation.com/
idc/groups/literature/documents/in/1770-
in041_-en-p.pdf
Sitio web de certificaciones de Proporciona declaraciones de
producto, http://www.ab.com conformidad, certificados y otra
información sobre certificación.

Puede ver o descargar publicaciones en


http://www.rockwellautomation.com/literature. Para pedir copias impresas de
documentación técnica, póngase en contacto con su distribuidor o agente
comercial de Rockwell Automation más cercano.

Aviso legal Nota de Copyright

Copyright © 2018 < RA> Technologies, Inc. Reservados todos los derechos.
Impreso en EE. UU.

Este documento y los productos Rockwell Software correspondientes tienen


copyright de Rockwell Automation Technologies, Inc. Queda prohibida
cualquier reproducción o distribución sin previo acuerdo por escrito de
Rockwell Automation Technologies, Inc. Consulte el acuerdo de licencia
para obtener más información.

Contrato de licencia de usuario final (EULA)

Puede ver el Acuerdo de licencia del usuario final ("EULA") de Rockwell


Automation abriendo el archivo License.rtf que se encuentra en la carpeta de
instalación del producto, en su disco duro.

Otras licencias

El software incluido en este producto contiene software protegido por


copyright bajo licencia de una o más licencias de código abierto. Las copias
de esas licencias se incluyen con el software. El código fuente
correspondiente para paquetes de código abierto de este producto puede
encontrarse en sus correspondientes sitios web.

También puede obtener opcionalmente todo el código fuente


correspondiente. Para ello, póngase en contacto con Rockwell Automation a
través de nuestro formulario de contacto en el sitio web de Rockwell
Automation:
http://www.rockwellautomation.com/global/about-us/contact/contact.page
Incluya "Código abierto" como parte del texto de la solicitud.

En este producto se usa el siguiente software de código abierto:

16 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Prefacio

Software Copyright Nombre de Texto de licencia


licencia
AngularJS Copyright 2010-2017 Google, Inc. Licencia MIT Licencia AngularJS 1.5.9
Bootstrap Copyright 2011-2017 Twitter, Inc. Licencia MIT Licencia Bootstrap 3.3.7
Copyright 2011-2017 The Bootstrap Authors
jQuery Copyright 2005, 2014 Fundación JS y otros Licencia MIT Licencia jQuery 2.1.1
contribuyentes
OpenSans Copyright 2017 Google, Inc. Licencia Apache, Licencia OpenSans
Versión 2.0

Aviso de marcas registradas

Allen-Bradley, ControlLogix, ControlFLASH, CompactLogix, Connected


Components Workbench, FactoryTalk, Guardmaster, GuardShield 450L,
Kinetix, Micro800, Micro820, Micro830, Micro850, Micro870, MicroLogix,
MicroLogix to Micro800 Conversion Tool, PowerFlex, PanelView,
PanelView Plus, PLC-2, PLC-3, PLC-5, Rockwell Automation, RSLinx,
RSLogix 500 y Rockwell Software son marcas comerciales de Rockwell
Automation, Inc.

Cualquier software o hardware propiedad de Rockwell Automation que no se


mencione en este documento también es una marca, registrada o no, de
Rockwell Automation, Inc.

Otras marcas registradas

Intel, Intel Core y Pentium son marcas comerciales de Intel Corporation o de


sus filiales en Estados Unidos y en otros países.

Microsoft, Excel, Internet Explorer, Windows, Windows Server, Visual C++,


SQL Server y Visual Studio son marcas comerciales o marcas registradas de
Microsoft Corporation en Estados Unidos y en otros países.

Adobe, Reader y Acrobat son marcas comerciales o marcas registradas de


Adobe Systems Incorporated en Estados Unidos y en otros países.

OPC es una marca registrada o marca comercial de OPC Foundation en


Estados Unidos y en otros países.

Kepware es una marca registrada o marca comercial de Kepware


Technologies Corporation en Estados Unidos y en otros países.

VMware es una marca registrada o marca comercial de VMware, Inc. en


Estados Unidos y en otros países.

Cualesquiera otras marcas registradas pertenecen a sus respectivos


propietarios y, por la presente, este hecho queda reconocido.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 17


Prefacio

Garantía

Este producto tiene la garantía de la licencia del producto. El rendimiento del


producto puede resultar afectado por la configuración del sistema, la
aplicación llevada a cabo, el control del operador, el mantenimiento y otros
factores. Rockwell Automation no es responsable de estos factores que
intervienen. Las instrucciones de este documento no cubren todos los detalles
o todas las variaciones en el equipo, el procedimiento o el proceso descrito,
ni ofrecen indicaciones para satisfacer cada contingencia posible durante la
instalación, la operación o el mantenimiento. La implementación de este
producto puede variar entre los usuarios.

Este documento es actual en el momento de la versión del producto. Sin


embargo, el software correspondiente puede haber sufrido modificaciones
desde el lanzamiento de la versión. Rockwell Automation, Inc. se reserva el
derecho para cambiar cualquier información contenida en este documento o
el software en cualquier momento sin previo aviso. Es su responsabilidad
obtener la información más actual disponible en Rockwell al instalar o
utilizar este producto.

Normativa medioambiental

Rockwell Automation mantiene información medioambiental actual del


producto en su sitio web en
http://www.rockwellautomation.com/rockwellautomation/about-us/sustainabi
lity-ethics/product-environmental-compliance.page

Póngase en contacto con Rockwell Automation

Teléfono del servicio técnico: 1.440.646.3434

Soporte en línea: http://www.rockwellautomation.com/support/

18 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 1

Buscar información sobre


instrucciones y elementos de
lógica de escalera

Connected Components Workbench contiene un completo conjunto de


instrucciones con estructuras y matrices, entornos de desarrollo de lógica de
escalera, texto estructurado, diagramas de bloque de funciones y programas
de bloque de funciones definidas por el usuario.

Además, Connected Components Workbench contiene herramientas de


configuración de interfaz de usuario para controladores Micro800, variadores
PowerFlex®, un dispositivo de relé de seguridad, terminales gráficos de
PanelView™ Component y opciones de conectividad de red y serie.

Para obtener información sobre una instrucción específica, incluidos una


descripción, detalles de los parámetros y ejemplos de lenguaje, busque la
instrucción en la tabla de contenido o en los siguientes temas de referencia.

 Referencia de instrucciones en orden alfabético en la página 23

Para obtener una descripción de los elementos de lógica de escalera


utilizados en Connected Components Workbench, consulte la siguiente
sección:

 Referencia de lenguaje de diagrama de lógica de escalera (LD) en la


página 33

Bloques de El conjunto de instrucción de Connected Components Workbench incluye


instrucciones bloques de instrucción compatibles con IEC 61131-3 para controladores
Micro800. Los bloques de instrucciones incluyen colectivamente operadores,
funciones y bloques de funciones.

Consulte también

Operadores en la página 19

Funciones en la página 20

Bloques de función en la página 21

Operadores El conjunto de instrucción de Connected Components Workbench incluye


bloques de instrucción compatibles con IEC 61131-3 para controladores

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 19


Capítulo 1 Buscar información sobre instrucciones y elementos de lógica de escalera

Micro800; los operadores se incluyen en el conjunto de instrucciones de


Connected Components Workbench.

Un operador es una operación lógica básica como, por ejemplo, operaciones


aritméticas, booleanas, de comparación o de conversión de datos.

Consulte también

Bloques de función en la página 21

Funciones en la página 20

Funciones Las funciones tienen uno o más parámetros de entrada y un parámetro de


salida.

Formato de bloques de instrucciones

Un bloque de instrucciones se representa mediante un único rectángulo y


tiene un número fijo de puntos de conexión de entrada y de salida. Un bloque
de instrucciones elemental realiza una única función.

N.º de Elemento Descripción


element
o
Nombre de bloque El nombre de la función que ejecutará el bloque de instrucciones se escribe en el interior de su
forma de rectángulo (en la parte superior).

Entrada Cada entrada de un bloque de instrucciones se etiqueta y tiene un tipo definido.

Conexión de Las entradas se conectan en el borde izquierdo.


entrada

Salida Cada salida de un bloque de instrucciones se etiqueta y tiene un tipo definido.

Conexión de Las salidas se conectan en el borde derecho.


salida

Llamar a una función

Connected Components Workbench™ no admite llamadas de función


recursivas. Cuando una función de la sección Funciones se llama a sí misma
o recibe una llamada de una de las funciones a las que ha llamado, se
produce un error de tiempo de ejecución. Además, las funciones no guardan
los valores locales de sus variables locales. Como las funciones no se
instancian, no pueden activar bloques de función.

20 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Buscar información sobre instrucciones y elementos de lógica de escalera Capítulo 1

 Una función puede recibir una llamada de un programa, de una función


o de un bloque de funciones.
 Cualquier programa de una sección puede llamar a una o más
funciones. Una función puede tener variables locales.
 Una función no tiene ninguna instancia, lo que significa que los datos
locales no se almacenan, por lo que se suelen perder entre una llamada
y otra.
 Debido a que la ejecución de una función es controlada por el
programa principal, la ejecución del programa principal se suspende
hasta que finalice la función.

Programa Función Función


principal

Definir nombres de funciones y de parámetros

La interfaz de una función se debe definir explícitamente con un tipo y un


nombre único para cada uno de sus parámetros de llamada (entrada) o de
retorno (salida). Una función tiene un parámetro de retorno. El valor del
parámetro de retorno de un bloque de funciones es diferente para cada
lenguaje de programación (FDB, LD o ST).

Los nombres de funciones y de parámetros de función pueden tener hasta


128 caracteres. Los nombres de parámetros de función pueden comenzar con
una letra o un signo de subrayado seguidos de letras, números y caracteres de
subrayado simples.

Consulte también

Bloques de función en la página 21

Operadores en la página 19

Bloques de función Un bloque de funciones es un bloque de instrucciones que tiene parámetros


de entrada y salida, y que funciona con datos internos (parámetros). Se puede
escribir en lenguaje de texto estructurado, de diagrama de lógica de escalera
y de diagrama de bloque de funciones.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 21


Capítulo 1 Buscar información sobre instrucciones y elementos de lógica de escalera

Formato de bloques de instrucciones

Un bloque de instrucciones se representa mediante un único rectángulo y


tiene un número fijo de puntos de conexión de entrada y de salida. Un bloque
de instrucciones elemental realiza una única función.

N.º de Elemento Descripción


element
o
Nombre de bloque El nombre de la función que ejecutará el bloque de instrucciones se escribe en el interior de su
forma de rectángulo (en la parte superior).

Entrada Cada entrada de un bloque de instrucciones se etiqueta y tiene un tipo definido.

Conexión de Las entradas se conectan en el borde izquierdo.


entrada

Salida Cada salida de un bloque de instrucciones se etiqueta y tiene un tipo definido.

Conexión de Las salidas se conectan en el borde derecho.


salida

Llamar a un bloque de funciones

Cuando se llama a un bloque de funciones en un programa, en realidad se


llama a una instancia del bloque. La instancia utiliza el mismo código, pero
se crean instancias de los parámetros de entrada y salida, lo que significa que
se copian variables locales de cada instancia del bloque de funciones. Los
valores de las variables de la instancia de un bloque de funciones se
almacenan de un ciclo a otro.

Un bloque de funciones puede recibir una llamada de un programa o de otro


bloque de funciones. Las funciones no pueden llamar a los bloques porque no
se crean instancias de ellas.

Definir nombres de bloques de funciones y de parámetros

La interfaz de un bloque de función se debe definir explícitamente con un


tipo y nombre únicos para cada uno de sus parámetros de llamada (entradas)
o de retorno (salida). Los bloques de función pueden tener más de un
parámetro de salida. El valor del parámetro de retorno de un bloque de
funciones es diferente para cada lenguaje de programación (FDB, LD o ST).

Los nombres de los bloques de funciones y los nombres de parámetros de


bloques de funciones pueden tener hasta 128 caracteres. Los nombres de

22 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Buscar información sobre instrucciones y elementos de lógica de escalera Capítulo 1

parámetros de bloques de función pueden comenzar con una letra o un signo


de subrayado seguidos de letras, números y caracteres de subrayado únicos.

Consulte también

Funciones en la página 20

Operadores en la página 19

Conjunto de En la siguiente tabla se indican en orden alfabético las instrucciones para el


controlador Micro800 disponibles en Connected Components Workbench.
instrucciones en
orden alfabético
Instrucción Categoría Tipo Descripción
ABL en la página 113 Comunicaciones Bloque de Cuenta el número de caracteres en el búfer,
función incluyendo el carácter de fin de línea.
ABS en la página 74 Aritmética Función Devuelve el valor absoluto de un valor real.
ACB en la página 120 Comunicaciones Bloque de Cuenta el número total de caracteres en el búfer.
función
ACL en la página 115 Comunicaciones Bloque de Borra los búferes de recepción y transmisión.
función
ACOS en la página 75 Aritmética Función Calcula el arcocoseno de un valor real.
ACOS_LREAL en la Aritmética Función Calcula el arcocoseno de un valor real largo.
página 76
Addition en la página 78 Aritmética Operador Añade dos o más valores enteros, reales,
temporales o de cadena.
AHL en la página 118 Comunicaciones Bloque de Establece o restablece las líneas de
función confirmación del módem.
AND en la página 163 Operaciones Operador Realiza una operación booleana AND entre dos
booleanas o más valores.
AND_MASK en la página Operaciones Función Realiza un AND bit a bit entre dos valores
135 binarias enteros.
ANY_TO_BOOL en la Conversión de Función Convierte un valor no booleano en un valor
página 259 datos booleano.
ANY_TO_BYTE en la Conversión de Función Convierte un valor en un Byte
página 260 datos
ANY_TO_DATE en la Conversión de Función Convierte los tipos de datos Cadena, Entero,
página 261 datos Real o Tiempo al tipo de datos de fecha.
ANY_TO_DINT en la Conversión de Función Convierte un valor en entero doble.
página 263 datos
ANY_TO_DWORD en la Conversión de Función Convierte un valor en valor palabra doble.
página 264 datos
ANY_TO_INT en la Conversión de Función Convierte un valor en entero.
página 265 datos
ANY_TO_LINT en la Conversión de Función Convierte un valor en entero largo.
página 267 datos
ANY_TO_LREAL en la Conversión de Función Convierte un valor en real largo.
página 268 datos

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 23


Capítulo 1 Buscar información sobre instrucciones y elementos de lógica de escalera

Instrucción Categoría Tipo Descripción


ANY_TO_LWORD en la Conversión de Función Convierte un valor en palabra larga.
página 269 datos
ANY_TO_REAL en la Conversión de Función Convierte un valor en real.
página 270 datos
ANY_TO_SINT en la Conversión de Función Convierte un valor en entero corto.
página 271 datos
ANY_TO_STRING en la Conversión de Función Convierte un valor en cadena.
página 272 datos
ANY_TO_TIME en la Conversión de Función Convierte un valor tipo de datos de tiempo.
página 274 datos
ANY_TO_UDINT en la Conversión de Función Convierte un valor en entero doble sin signo.
página 275 datos
ANY_TO_UINT en la Conversión de Función Convierte un valor en entero sin signo.
página 276 datos
ANY_TO_ULINT en la Conversión de Función Convierte un valor en entero largo sin signo.
página 277 datos
ANY_TO_USINT en la Conversión de Función Convierte un valor en entero corto sin signo.
página 278 datos
ANY_TO_WORD en la Conversión de Función Convierte un valor en palabra.
página 280 datos
ARD en la página 122 Comunicaciones Bloque de Lee los caracteres de la entrada del búfer y los
función coloca en una cadena.
ARL en la página 125 Comunicaciones Bloque de Lee una línea de caracteres de la entrada del
función búfer y los coloca en una cadena.
ASCII en la página 641 Manipulación de Función Devuelve el código ASCII de los caracteres en
cadena una cadena. Carácter -> código ASCII.
ASIN en la página 79 Aritmética Función Calcula el arcoseno de un valor real.
ASIN_LREAL en la página Aritmética Función Calcula el arcoseno de un valor real largo.
81
ATAN en la página 82 Aritmética Función Calcula la arcotangente de un valor real largo.
ATAN_LREAL en la Aritmética Función Calcula la arcotangente de un valor real largo.
página 84
AVERAGE en la página Manipulación de Bloque de Calcula una media de ejecución en un número
283 datos función de muestras definidas.
AWA en la página 127 Comunicaciones Función Escribe una cadena con dos caracteres anexos
(configurados por el usuario) en un dispositivo
externo.
AWT en la página 129 Comunicaciones Función Escribe caracteres de una cadena de origen en
un dispositivo externo.
BSL en la página 137 Operaciones Bloque de Desplaza a la izquierda un bit de elemento de
binarias función matriz.
BSR en la página 140 Operaciones Bloque de Desplaza a la derecha un bit de elemento de
binarias función matriz.
CHAR en la página 643 Manipulación de Función Devuelve una cadena de un carácter para un
cadena código ASCII. Código ASCII -> carácter.
COP en la página 285 Conversión de Bloque de Copia los datos binarios del elemento de origen
datos función al de destino.
COS en la página 85 Aritmética Función Calcula el coseno de un valor real.

24 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Buscar información sobre instrucciones y elementos de lógica de escalera Capítulo 1

Instrucción Categoría Tipo Descripción


COS_LREAL en la página Función Calcula el coseno de un valor real largo.
86
CTD en la página 253 Contador Función Cuenta (enteros) de forma descendente desde
un valor concreto hasta cero, de 1 en 1.
CTU en la página 255 Contador Función Cuenta enteros de forma ascendente desde 0
hasta un valor concreto, de 1 en 1.
CTUD en la página 257 Contador Función Cuenta enteros de forma ascendente desde 0
hasta un valor concreto, de 1 en 1, o de forma
descendente desde un valor concreto hasta 0,
de 1 en 1.
DELETE en la página 645 Manipulación de Función Elimina caracteres de una cadena.
cadena
DERIVATE en la página Control de Bloque de Diferenciación de un valor real en un tiempo de
499 proceso función ciclo determinado.
Division en la página 88 Aritmética Operador División de dos valores enteros o reales.
DLG en la página 362 Entrada/Salida Bloque de Escribe valores de variables del motor de tiempo
función de ejecución en un archivo de registro de datos
de una tarjeta SD.
DOY en la página 672 Hora Función Activa una salida si el valor del reloj de tiempo
real se encuentra dentro del intervalo del ajuste
Momento del año.
Equal en la página 241 Comparar Operador Comprueba si un valor es igual que otro.
EXPT en la página 90 Aritmética Función Calcula el valor real de un número base elevado
a la potencia del exponente entero.
FFL en la página 511 Control de Bloque de Carga datos de 8, 16, 32 o 64 bits en una matriz
proceso función creada por el usuario denominada pila de FIFO.
FFU en la página 511 Control de Bloque de Descarga datos de 8, 16, 32 o 64 bits de una
proceso función matriz creada por el usuario denominada pila de
FIFO (primero en entrar, primero en salir) en el
mismo orden en el que se cargaron los datos
mediante la instrucción FFL.
FIND en la página 646 Manipulación de Función Busca y proporciona la posición de subcadenas
cadena en cadenas.
F_TRIG en la página 157 Operaciones Bloque de Detecta un flanco descendente de una variable
booleanas función booleana.
Greater Than en la página Comparar Operador Compara los valores de entrada entero, real,
244 temporal, fecha y cadena para determinar si el
primero es mayor que el segundo.
Greater Than or Equal en Comparar Operador Compara los valores de entrada entero, real,
la página 246 temporal, fecha y cadena para determinar si el
primero es mayor o igual que el segundo.
HSC en la página 296 Entrada/Salida Bloque de El HSC aplica preajustes altos, preajustes bajos
función y valores de origen de salida al contador de alta
velocidad.
HSC_SET_STS en la Entrada/Salida Bloque de HSC_SET_STS establece o restablece de forma
página 313 función manual el estado de recuento del HSC.
HSCE en la página 337 Entrada/Salida Bloque de HSCE iniciar, detener y leer valor del
función acumulador.
HSCE_CFG en la página Entrada/Salida Bloque de HSCE_CFG es la configuración del contador de
340 función alta velocidad.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 25


Capítulo 1 Buscar información sobre instrucciones y elementos de lógica de escalera

Instrucción Categoría Tipo Descripción


HSCE_CFG_PLS en la Entrada/Salida Bloque de HSCE_CFG_PLS es la configuración de PLS del
página 343 función contador de alta velocidad.
HSCE_READ_STS en la Entrada/Salida Bloque de HSCE_READ_STS lee el estado del contador de
página 346 función alta velocidad.
HSCE_SET_STS en la Entrada/Salida Bloque de HSCE_SET_STS define/restablece
página 347 función manualmente el estado del contador de alta
velocidad.
HYSTER en la página 516 Control de Bloque de Histéresis booleana en diferencia de reales.
proceso función
IIM en la página 364 Entrada/Salida Bloque de Actualiza las entradas antes de una exploración
función de salida normal.
INSERT en la página 648 Manipulación de Función Inserta subcadenas en posiciones definidas por
cadena el usuario en cadenas.
INTEGRAL en la página Control de Bloque de Integra un valor real durante el ciclo de tiempo
518 proceso función definido.
IOM en la página 365 Entrada/Salida Bloque de Actualiza las salidas antes de una exploración
función de salida normal.
IPIDCONTROLLER en la Control de Bloque de Configurar y controlar las entradas y salidas
página 541 proceso función utilizadas para la lógica proporcional integral
derivativa (PID).
KEY_READ en la página Entrada/Salida Bloque de Solo Micro810.
367 función Comprueba el estado de clave del módulo LCD
opcional cuando está activa la pantalla de
usuario.
KEY_READ_REM en la Entrada/Salida Bloque de Solo Micro820.
página 370 función Comprueba el estado de clave del módulo LCD
remoto opcional cuando está activa la pantalla
de usuario.
LCD en la página 352 Entrada/Salida Función Solo Micro810.
Muestra una cadena o número en una pantalla
LCD.
LCD_BKLT_REM en la Entrada/Salida Función Configura los parámetros de retroiluminación del
página 354 LCD remoto en un programa de usuario.
LCD_REM en la página Entrada/Salida Función Muestra mensajes definidos por el usuario para
356 el LCD remoto.
LEFT en la página 650 Manipulación de Función Extrae caracteres de la parte izquierda de una
cadena cadena de caracteres.
Less Than en la página Comparar Operador Compara los valores de entrada entero, real,
248 temporal, fecha y cadena para determinar si el
primero es menor que el segundo.
Less Than or Equal en la Comparar Operador Compara los valores de entrada entero, real,
página 249 temporal, fecha y cadena para determinar si el
primero es menor o igual que el segundo.
LFL (carga LIFO) en la Control de Bloque de Carga datos de 8, 16, 32 o 64 bits en una matriz
página 522 proceso función creada por el usuario denominada pila de LIFO.
LFU (descarga LIFO) en Control de Bloque de Descarga datos de 8, 16, 32 o 64 bits de una
la página 525 proceso función matriz creada por el usuario denominada pila de
LIFO (primero en entrar, primero en salir) en el
mismo orden en el que se cargaron los datos
mediante la instrucción LFL.

26 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Buscar información sobre instrucciones y elementos de lógica de escalera Capítulo 1

Instrucción Categoría Tipo Descripción


LIM_ALRM en la página Alarma Bloque de Una alarma con histéresis en un valor real para
69 función los límites superior e inferior.
LIMIT en la página 535 Control de Función Limita los valores de entero a un intervalo
proceso concreto.
LOG en la página 91 Aritmética Función Calcula el logaritmo (base 10) de un valor real.
MAX en la página 291 Función Calcula el máximo de dos valores enteros.
MC_AbortTrigger en la Movimiento Bloque de Cancela otros bloques de funciones de
página 432 función movimiento conectados a eventos de disparador.
MC_Halt en la página 435 Movimiento Bloque de Activa una parada de movimiento controlada en
función condiciones normales de funcionamiento.
MC_Home en la página Movimiento Bloque de Ordena al eje que ejecute la secuencia <search
438 función home>.
MC_MoveAbsolute en la Movimiento Bloque de Envía un movimiento controlado a una posición
página 442 función absoluta especificada.
MC_MoveRelative en la Movimiento Bloque de Envía un movimiento controlado a una distancia
página 446 función especificada relativa a la posición actual en el
momento de ejecución.
MC_MoveVelocity en la Movimiento Bloque de Envía un movimiento controlado que nunca
página 450 función finaliza a una velocidad especificada.
MC_Power en la página Movimiento Bloque de Controla la etapa de potencia (ON u OFF).
454 función
MC_ReadActualPosition Movimiento Bloque de Devuelve la posición real del eje de retorno.
en la página 461 función
MC_ReadActualVelocity Movimiento Bloque de Devuelve la velocidad real del eje de retorno.
en la página 461 función
MC_ReadAxisError en la Movimiento Bloque de Describe los errores del eje no relacionados con
página 464 función los bloques de instrucciones de control de
movimiento.
MC_ReadBoolParameter Movimiento Bloque de Devuelve el valor de un parámetro específico del
en la página 469 función proveedor de tipo BOOL.
MC_ReadParameter en la Movimiento Bloque de Devuelve el valor de un parámetro específico del
página 471 función proveedor de tipo Real.
MC_ReadStatus en la Movimiento Bloque de Devuelve el estado del eje con respecto al
página 474 función movimiento en curso actualmente.
MC_Reset en la página Movimiento Bloque de Cambia el estado del eje de Parada de error a
479 función Estancamiento restableciendo todos los errores
internos de los ejes.
MC_SetPosition en la Movimiento Bloque de Cambia el sistema de coordenadas de un eje
página 482 función manipulando la posición real.
MC_Stop en la página Movimiento Bloque de Ordena una parada de movimiento controlado y
485 función cambia el estado del eje a Parando.
MC_TouchProbe en la Movimiento Bloque de Registra una posición del eje en un evento de
página 488 función disparo.
MC_WriteBoolParameter Movimiento Bloque de Modifica el valor de un parámetro específico del
en la página 492 función proveedor de tipo BOOL.
MC_WriteParameter en la Movimiento Bloque de Modifica el valor de un parámetro específico del
página 495 función proveedor de tipo Real.
MID en la página 652 Manipulación de Función Extrae caracteres del centro de una cadena.
cadena

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 27


Capítulo 1 Buscar información sobre instrucciones y elementos de lógica de escalera

Instrucción Categoría Tipo Descripción


MIN en la página 290 Función Calcula el mínimo de dos valores enteros.
MLEN en la página 653 Manipulación de Función Calcula la longitud de una cadena.
cadena
MM_INFO en la página Entrada/Salida Bloque de Lee la información de encabezado del módulo
372 función de memoria.
MODULE_INFO en la Entrada/Salida Bloque de Lee la información del módulo de un módulo
página 375 función enchufable o un módulo de expansión.
MOD en la página 92 Aritmética Función Realiza un cálculo del módulo en valores
enteros.
MOV en la página 94 Aritmética Operador Asigna el valor de entrada a la salida.
MSG_CIPGENERIC en la Comunicaciones Función Envía un mensaje CIP explícito genérico.
página 175
MSG_CIPSYMBOLIC en Comunicaciones Función Envía un mensaje CIP explícito simbólico.
la página 185
MSG_MODBUS en la Comunicaciones Función Envía un mensaje Modbus.
página 190
MSG_MODBUS2 en la Comunicaciones Función Envía un mensaje MODBUS/TCP a través de un
página 196 canal Ethernet.
Multiplication en la página Aritmética Operador Multiplica dos o más valores enteros o reales.
95
MUX4B en la página 172 Booleano Función Multiplicador entre cuatro entradas BOOL,
salidas de un valor de tipo BOOL.
MUX8B en la página 169 Booleano Función Multiplicador entre ocho entradas BOOL, salidas
de un valor de tipo BOOL.
NOT en la página 164 Operaciones Operador Convierte un valor booleano en valor negado.
booleanas
Not Equal en la página Comparar Operador Compara los valores de entrada entero, real,
250 temporal, fecha y cadena para determinar si el
primero no es igual que el segundo.
Neg en la página 97 Aritmética Operador Convierte un valor en negativo.
NOT_MASK en la página Operaciones Función Máscara de negación bit a bit de enteros,
143 binarias invierte un valor de parámetro.
OR_MASK en la página Operaciones Función Máscara OR bit a bit de enteros; activa bits.
145 binarias
OR en la página 162 Operaciones Operador Función booleana OR de dos o más valores.
booleanas
PID en la página 567 Control de Bloque de Una instrucción de salida que controla
proceso función propiedades físicas como la temperatura, la
presión, el nivel de líquidos o el caudal, usando
bucles de proceso.
PLUGIN_INFO en la Entrada/Salida Bloque de Obtiene información del módulo a partir de un
página 388 función módulo enchufable genérico (excluyendo el
módulo de memoria).
PLUGIN_READ en la Entrada/Salida Bloque de Lee datos de un módulo enchufable genérico
página 390 función (excluyendo el módulo de memoria).
PLUGIN_RESET en la Entrada/Salida Bloque de Restablece un módulo enchufable genérico
página 392 función (excluyendo el módulo de memoria).
PLUGIN_WRITE en la Entrada/Salida Bloque de Escribe datos en un módulo enchufable genérico
página 394 función (excluyendo el módulo de memoria).

28 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Buscar información sobre instrucciones y elementos de lógica de escalera Capítulo 1

Instrucción Categoría Tipo Descripción


POW en la página 98 Aritmética Función Calcula el valor de un número real elevado a la
potencia del exponente real.
PWM en la página 527 Control de Bloque de Activa o desactiva la salida PWM ("Pulse Width
proceso función Modulation" o modulación de ancho de impulso)
de un canal PWM configurado.
R_TRIG en la página 159 Operaciones Bloque de Detecta un flanco ascendente de una variable
booleanas función booleana.
RAND en la página 100 Aritmética Función Calcula valores enteros aleatorios a partir de un
rango definido.
REPLACE en la página Manipulación de Función Reemplaza partes de una cadena con nuevos
657 cadena conjuntos de caracteres.
RCP en la página 396 Entrada/Salida Bloque de Lee y escribe datos de receta en una tarjeta de
función memoria SD.
RHC en la página 359 Entrada/Salida Función Lee un reloj de alta velocidad.
RIGHT en la página 655 Manipulación de Función Extrae caracteres de la parte derecha de una
cadena cadena de caracteres.
ROL en la página 146 Operaciones Función Con números enteros de 32 bits, gira los bits del
binarias entero hacia la izquierda.
ROR en la página 148 Operaciones Función Con números enteros de 32 bits, gira los bits del
binarias entero hacia la derecha.
RPC en la página 361 Entrada/Salida Función Lee la suma de verificación de un programa del
usuario.
RS en la página 160 Operaciones Bloque de Restablecimiento de biestable dominante.
booleanas función
RTC_READ en la página Entrada/Salida Bloque de Lee la información del módulo de reloj de tiempo
398 función real (RTC).
RTC_SET en la página Entrada/Salida Bloque de Establece los datos RTC (reloj de tiempo real)
401 función en la información del módulo RTC.
RTO en la página 670 Hora Bloque de Temporización retenida. Aumenta un
función temporizador interno si la entrada está activa,
pero no restablece el temporizador interno si la
entrada cambia a inactiva.
SCALER en la página 529 Control de Bloque de Escala el valor de entrada según el intervalo de
proceso función salida.
SHL en la página 150 Operaciones Función Con números enteros de 32 bits, desplaza los
binarias enteros hacia la izquierda y coloca un 0 en el bit
menos relevante.
SHR en la página 152 Operaciones Función Con números enteros de 32 bits, desplaza los
binarias enteros hacia la derecha y coloca un 0 en el bit
más relevante.
SIN en la página 101 Aritmética Función Calcula el seno de un valor real.
SIN_LREAL en la página Aritmética Función Calcula el seno de un valor real largo.
103
SOCKET_ACCEPT en la Comunicaciones Bloque de Acepta una solicitud de conexión TCP de un
página 587 función destino remoto y devuelve una instancia de
socket que se usa para enviar y recibir datos en
la conexión recién creada.
SOCKET_CREATE en la Comunicaciones Bloque de Crea una instancia del socket y devuelve un
página 590 función número de instancia que se utiliza como entrada
en todas las operaciones de socket
subsiguientes.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 29


Capítulo 1 Buscar información sobre instrucciones y elementos de lógica de escalera

Instrucción Categoría Tipo Descripción


SOCKET_DELETE en la Comunicaciones Bloque de Elimina una instancia de socket creada.
página 596 función
SOCKET_DELETEALL en Comunicaciones Bloque de Elimina todas las instancias de socket creadas.
la página 598 función
SOCKET_INFO en la Comunicaciones Bloque de Devuelve información de los sockets, por
página 601 función ejemplo, códigos de error y estado de ejecución.
SOCKET_OPEN en la Comunicaciones Bloque de Abre la conexión con la dirección de destino
página 606 función especificada para conexiones de protocolo de
control de transmisión (TCP). En el caso de las
conexiones de protocolo de datagramas de
usuario (UDP), asocia una dirección IP de
destino y un número de puerto al socket
especificado.
SOCKET_READ en la Comunicaciones Bloque de Lee datos en un socket.
página 611 función
SOCKET_WRITE en la Comunicaciones Bloque de Envía datos en un socket.
página 615 función
SQRT en la página 104 Aritmética Función Calcula la raíz cuadrada de un valor real.
SR en la página 165 Operaciones Bloque de Definición de biestable dominante.
booleanas función
STACKINT en la página Control de Bloque de Administra pila de enteros.
531 proceso función
STIS en la página 409 Interrumpir Función Inicia el temporizador de interrupción del usuario
retardado STI desde el programa de control en
lugar de iniciarlo automáticamente.
Subtraction en la página Aritmética Operador Resta un valor entero, real o temporal de otro
106 valor entero, real o temporal.
SUS en la página 539 Control de Bloque de Suspende la ejecución del <controlador M800>.
programa función
SYS_INFO en la página Entrada/Salida Bloque de Lee el bloque de datos de estado para el
403 función controlador Micro800.
TAN en la página 108 Aritmética Función Calcula la tangente de un valor real.
TAN_LREAL en la página Aritmética Función Calcula la tangente de un valor real largo.
109
TDF en la página 674 Hora Función Calcula la diferencia horaria entre TimeA y
TimeB.
TND en la página 534 Control de Función Detiene el ciclo actual de la exploración del
proceso programa del usuario.
TOF en la página 662 Hora Bloque de Retraso de desconexión. Aumenta un
función temporizador interno hasta un valor concreto.
TON en la página 663 Hora Bloque de Temporizador de retraso. Aumenta un
función temporizador interno hasta un valor concreto.
TONOFF en la página 665 Hora Bloque de Retrasa la activación de una salida en una línea
función verdadera, y retrasa la desactivación de la salida
en la línea falsa.
TOW en la página 676 Hora Función Activa una salida si el valor del reloj de tiempo
real se encuentra dentro del intervalo del ajuste
Momento de la semana.
TP en la página 668 Hora Bloque de Temporización del pulso. En un flanco
función ascendente, aumenta un temporizador interno
hasta un valor concreto.

30 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Buscar información sobre instrucciones y elementos de lógica de escalera Capítulo 1

Instrucción Categoría Tipo Descripción


TRIMPOT_READ en la Entrada/Salida Bloque de Lee el valor de un potenciómetro de ajuste
página 405 función concreto.
TRUNC en la página 110 Aritmética Función Trunca valores reales y deja únicamente la parte
entera.
TTABLE en la página 166 Booleano Función Proporciona el valor de la salida en función de la
combinación de entradas.
UIC en la página 411 Interrumpir Función Borra el bit de pérdida en la interrupción del
usuario seleccionada.
UID en la página 413 Interrumpir Función Deshabilita una interrupción del usuario
específica.
UIE en la página 414 Interrumpir Función Habilita una entrada del usuario específica.
UIF en la página 416 Interrumpir Función Vacía o elimina una entrada del usuario
pendiente.
XOR_MASK en la página Operaciones Función La máscara OR exclusiva bit a bit de enteros
153 binarias devuelve valores de bit invertidos.
XOR en la página 163 Operaciones Operador Función booleana OR exclusiva de dos valores.
booleanas

Consulte también

Buscar información sobre instrucciones y elementos de lógica de


escalera en la página 19

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 31


Capítulo 1 Buscar información sobre instrucciones y elementos de lógica de escalera

32 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 2

Lenguaje de diagrama de lógica de


escalera (LD)

Un diagrama de lógica de escalera (LD) es una representación gráfica de


ecuaciones booleanas que combina contactos (argumentos de entrada) con
bobinas (resultados de salida). Mediante símbolos gráficos en un gráfico de
programas (organizado como un diagrama de cableado de lógica de escalera
de relés), el lenguaje de LD describe pruebas y modificaciones de datos
booleanos.

Los símbolos gráficos de LD se organizan dentro del gráfico como un


diagrama de contactos eléctricos. El término "escalera" está relacionado con
el concepto de peldaños conectados a raíles de potencia verticales a ambos
extremos, en los que cada peldaño representa un circuito individual.

Connected Components Workbench ofrece un editor de idioma de LD que


solo es compatible con los elementos e instrucciones suministrados con el
software de Connected Components Workbench.

Consulte también

Elementos de diagrama de escalera (LD) en la página 37

Entorno de desarrollo de programas de LD en la página 34

Trabajar con elementos en el editor de idioma de LD en la página 63

Programa de Un diagrama de lógica de escalera (LD) es una representación gráfica de


ecuaciones booleanas que combina contactos (argumentos de entrada) con
diagrama de bobinas (resultados de salida). Mediante símbolos gráficos en un gráfico de
escalera (LD) programas (organizado como un diagrama de cableado de lógica de escalera
de relés), el lenguaje de LD describe pruebas y modificaciones de datos
booleanos.

El lenguaje de LD utiliza símbolos gráficos en un gráfico de programas,


organizado como un diagrama de cableado de lógica de escalera de relés,
para describir las pruebas y modificaciones de los datos booleanos.

Connected Components Workbench ofrece un editor de idioma de diagramas


de lógica de escalera que solo es compatible con los elementos e
instrucciones suministrados con el software de Connected Components
Workbench.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 33


Capítulo 2 Lenguaje de diagrama de lógica de escalera (LD)

Consulte también

Entorno de desarrollo de programas de LD en la página 34

Trabajar con elementos en el editor de idioma de LD en la página 63

Elementos de diagrama de escalera (LD) en la página 37

Ejemplos de programa de diagrama de escalera (LD) en la página 64

Entorno de La siguiente ilustración muestra el editor de idioma para un programa de


diagrama de lógica de escalera (LD), donde puede desarrollar una unidad
desarrollo de organizativa de programa (POU) de LD. Utilice el menú de editor de idioma
programas de LD de LD, cuadro de herramientas de LD, los métodos abreviados de teclado
de LD o el editor multiidioma ubicados en el menú Herramientas para
agregar elementos a la POU del LD.

Ejemplo: Menú del editor de idioma de LD

34 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Lenguaje de diagrama de lógica de escalera (LD) Capítulo 2

Ejemplo: Cuadro de herramientas de LD

Consulte también

Elementos de diagrama de escalera (LD) en la página 37

Ejemplos de programa de diagrama de escalera (LD) en la página 64

Métodos abreviados de teclado de LD en la página 66

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 35


Capítulo 2 Lenguaje de diagrama de lógica de escalera (LD)

36 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 3

Elementos de diagrama de escalera


(LD)

Los elementos del diagrama de lógica de escalera (LD) son los componentes
que se utilizan para compilar un programa de diagrama de lógica de escalera.
Todos los elementos que aparecen en la siguiente tabla se pueden agregar a
un programa de diagrama de lógica de escalera en Connected Components
Workbench.

Elemento Descripción
Peldaño en la Representa un grupo de elementos de circuito que provocan la activación de una
página 37 bobina.
Bloque de Las instrucciones incluyen operadores, funciones y bloques de funciones, incluidos
instrucciones (LD) bloques de funciones definidos por el usuario.
en la página 45
Bifurcación en la Dos o más instrucciones en paralelo.
página 42
Bobina en la página Representa la asignación de salidas o variables internas. En un programa LD, una
45 bobina representa una acción.
Contacto en la Representa el valor o la función de una entrada o variable interna.
página 53
Retorno en la Representa el final condicional de una salida de diagrama.
página 60
Salto en la página Representa la lógica condicional e incondicional en el programa de LD que controla la
61 ejecución de diagramas.

Consulte también

Lenguaje de diagrama de lógica de escalera (LD) en la página 33

Peldaño Las líneas son componentes gráficos de un programas de diagrama de lógica


de escalera (LD) que representan un grupo de elementos de circuito que
llevan a la activación de una bobina. Utilice etiquetas para identificar líneas
del diagrama. Las etiquetas controlan, junto con los saltos, la ejecución de un
diagrama. Los comentarios son texto de formato libre que puede agregar
encima de la línea como documentación.

Consulte también

Agregar una línea a un programa de LD en la página 38

Agregar una etiqueta a un peldaño en la página 39

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 37


Capítulo 3 Elementos de diagrama de escalera (LD)

Elementos de diagrama de escalera (LD) en la página 37

Lenguaje de diagrama de lógica de escalera (LD) en la página 33

Agregar una línea a un Las líneas son componentes gráficos de un programa de diagrama de lógica
programa de LD de escalera (LD) que representan un grupo de elementos de circuito que
llevan a la activación de una bobina.

En Connected Components Workbench puede agregar una línea a un


programa de Diagrama de lógica de escalera (LD) desde el:

 Editor de idioma de diagrama de idioma (LD)


 Editor multiidioma ubicado en el menú Herramientas
 Cuadro de herramientas de LD

Para agregar un elemento de línea a un programa de Diagrama de lógica


de escalera:

1. En el editor de idioma de LD, haga clic con el botón secundario en una


línea existente y:

 Haga clic en Copiar y, a continuación, haga clic en Pegar para


insertar una copia de la línea al editor de idioma.
 Haga clic en Insertar línea y a continuación:
 Haga clic en Por encima de para agregar la línea por encima
de la línea seleccionada.
 Haga clic en Por debajo de para agregar la línea por debajo de
la línea seleccionada.

38 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

 Seleccione una línea o un elemento en el editor de idioma de LD y


pulse:
CTRL+ALT+0: para agregar la línea por encima de la línea
seleccionada.
CTRL+0: para agregar la línea por debajo de la línea seleccionada.
 Seleccione una línea o un elemento en el editor de idioma de LD y
pulse:
Haga clic en Herramientas > Editor multiidioma > Insertar línea
debajo para agregar la línea por debajo de la línea seleccionada.
Haga clic en Herramientas > Editor multiidioma > Insertar línea
arriba para agregar la llamada por encima de la línea
seleccionada.

1. (opcional) Abra el cuadro de herramientas de LD para mostrar el


elemento de línea.

 Para insertar una línea por debajo de una línea existente, seleccione
la línea en el editor de idioma de LD y, a continuación, haga doble
clic en Línea en el cuadro de herramientas de LD.
Si un elemento no está seleccionado antes de hacer doble clic en
Línea en el cuadro de herramientas de LD, se inserta la línea por
debajo de la última línea en el editor de idioma de LD.
 Seleccione Línea y, a continuación, arrastre el elemento al editor
de idioma de LD.
Aparece un signo más (+) en el editor de idioma de LD para
mostrar un destino válido. Suelte el botón del ratón para agregar
el elemento.
Suger Si el diagrama de lógica de escalera contiene más de 355 líneas, use el triángulo
encia: invertido en lugar de la barra de desplazamiento para ver más líneas.

Consulte también

Agregar una etiqueta a un peldaño en la página 39

Métodos abreviados de teclado de LD en la página 66

Elementos de diagrama de escalera (LD) en la página 37

Peldaños en la página 37

Etiquetas de línea Los comentarios son adiciones opcionales para cada línea del editor de
idioma (LD) del diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 39


Capítulo 3 Elementos de diagrama de escalera (LD)

Las etiquetas pueden tener un número ilimitado de caracteres, comenzando


por una letra o un carácter de subrayado, seguidos de letras, números y
caracteres de subrayado. Las etiquetas no pueden tener espacios ni caracteres
especiales (por ejemplo, ’+’, ’-’, o ’\’).

Para agregar una línea en el editor de idioma de LD:

1. Para agregar una etiqueta a una línea, haga clic en la línea para abrir el
menú del editor de idioma de LD y, a continuación, seleccione
Etiqueta de pantalla.

La línea se actualiza para incluir la etiqueta y el menú del editor de


idioma de la LD muestra una marca de verificación junto a Etiqueta de
pantalla.

2. Seleccione la Etiqueta y escriba una descripción.

3. (opcional) Para eliminar la etiqueta, haga clic en Etiqueta de pantalla


en el menú de editor de idioma de LD.

Consulte también

Peldaños en la página 37

Comentarios de peldaño Los comentarios son adiciones opcionales para cada línea del editor de
idioma (LD) del diagrama de lógica de escalera. De forma predeterminada,
se incluye un comentario cuando se agrega un elemento de línea en el editor
de idioma de LD.

40 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Los comentarios:

 Se escriben en el espacio situado encima de la línea.


 Se guardan en formato de texto enriquecido.
 Se almacenan en el controlador.

Para agregar o eliminar un comentario para una línea en el editor de


idioma de LD:

1. Para eliminar un comentario, haga clic con el botón secundario en la


línea para abrir el menú del editor de idioma de LD.

2. En el menú de editor de idioma de LD, haga clic en Mostrar


comentario. Se elimina el comentario de la línea, y se elimina la marca
de verificación ubicada junto a Mostrar comentario en el menú del
editor de idioma de LD.

3. (opcional) Para agregar un comentario a una línea, haga clic en


Mostrar comentario en el menú del editor de idioma de LD.

Consulte también

Agregar una línea a un programa de LD en la página 38

Agregar una etiqueta a un peldaño en la página 39

Elementos de diagrama de escalera (LD) en la página 37

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 41


Capítulo 3 Elementos de diagrama de escalera (LD)

Programa de LD en la página 33

Peldaños en la página 37

Bifurcación Las bifurcaciones crean enrutamientos alternativos para las conexiones.


Puede agregar ramas de paralelo a los elementos de una línea con el editor de
idioma de diagrama de lógica de escalera (LD).

Ejemplo de bifurcación

Consulte también

Agregar una bifurcación a un programa de LD en la página 42

Elementos de diagrama de escalera (LD) en la página 37

Métodos abreviados de teclado de LD en la página 66

Lenguaje de diagrama de lógica de escalera (LD) en la página 33

Agregar una bifurcación a Las bifurcaciones son componentes gráficos de los programas de diagrama
un programa de LD de lógica de escalera (LD) que crean rutas alternativas para las conexiones y
pueden incluir bifurcaciones en paralelo.

En Connected Components Workbench puede agregar una bifurcación a un


programa de diagrama de lógica de escalera (LD) desde el:

 Editor de idioma de diagrama de lógica de escalera (LD)


 Editor multiidioma ubicado en el menú Herramientas
 Cuadro de herramientas de LD

Para agregar una bifurcación a un programa de diagrama de lógica de


escalera:

1. En el editor de idioma de LD, compruebe que el programa de LD tenga


una línea definida para la bifurcación. A continuación, realice una de
las siguientes acciones:

 Haga clic en una línea o un elemento en el editor de idioma de LD,


seleccione Insertar elementos de lógica de escalera y, a
continuación, haga clic en Bifurcación.

42 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Si se abre el Selector de variables seleccione una variable o haga


clic en Aceptar sin seleccionar una variable para agregar el
elemento de Bifurcación.

 Seleccione una línea o un elemento en el editor de idioma de LD y


pulse:
CTRL+ALT+1 para agregar la bifurcación a la izquierda del
elemento o la línea seleccionados.
CTRL+1 para agregar la bifurcación a la derecha del elemento
seleccionado.
 Seleccione una línea o un elemento en el editor de idioma de LD y a
continuación:
Haga clic en Herramientas > Editor multiidioma > Insertar
bifurcación antes para agregar la bifurcación a la izquierda del
elemento seleccionado.
Haga clic en Herramientas > Editor multiidioma > Insertar
bifurcación después para agregar la bifurcación a la derecha del
elemento seleccionado.
 Abra el cuadro de herramientas de LD para mostrar el elemento de
bifurcación y, a continuación:
Haga doble clic en el elemento de bifurcación para agregarlo al
editor de idioma de LD.
Arrastre el elemento de bifurcación al editor de idioma de LD y
colóquelo en la línea.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 43


Capítulo 3 Elementos de diagrama de escalera (LD)

Aparece un signo más (+) en el editor de idioma de LD para


mostrar un destino válido. Suelte el botón del ratón para agregar
el elemento.

1. (opcional) Para insertar una bifurcación en paralelo:

a. En el editor de idioma de LD, haga clic con el botón secundario en


la bifurcación para abrir el menú del editor de idioma de LD.

b. En el menú del editor de idioma de LD, seleccione Insertar


bifurcación y, a continuación, haga clic en:

Arriba para agregar una bifurcación por encima de la bifurcación


seleccionada.
Debajo para agregar la bifurcación por debajo de la bifurcación
seleccionada.

2. (opcional) Para mover un elemento de bifurcación a otra ubicación en


un programa de LD, seleccione el elemento y arrástrelo al lugar
deseado.

44 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Aparece un signo más (+) en el editor de idioma de LD para mostrar


un destino válido. Suelte el botón del ratón para insertar el elemento
en la ubicación de destino.

Consulte también

Bifurcación en la página 42

Elementos de diagrama de escalera (LD) en la página 37

Métodos abreviados de teclado de LD en la página 66

Lenguaje de diagrama de lógica de escalera (LD) en la página 33

Bloque de Un elemento de bloque de instrucción de diagrama de lógica de escalera


(LD) es un elemento funcional de un programa de LD que cumple con IEC
instrucciones (LD) 61131-3 y que puede ser un bloque de funciones, una función, un bloque de
funciones definidas por el usuario, una función definida por el usuario o un
operador.

Consulte también

Lenguaje de diagrama de lógica de escalera (LD) en la página 33

Elementos de diagrama de escalera (LD) en la página 37

Bobina Las bobinas son componentes gráficos de un diagrama de lógica de escalera


(LD) que representan la asignación de una salida o una variable interna. En
programas LD, una bobina representa una acción. Una bobina debe estar
conectada a la izquierda de un símbolo booleano, como, por ejemplo, un
contacto, o a la salida booleana de un bloque de instrucción. Solo se pueden
agregar bobinas a una línea definida en el editor de idioma de LD. La
definición de bobina puede modificarse una vez que la bobina se haya
agregado a la línea.

El siguiente ejemplo muestra los tipos de elemento de bobina disponibles


para los programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 45


Capítulo 3 Elementos de diagrama de escalera (LD)

Ejemplo: Bobinas

Consulte también

Agregar elementos de bobina en la página 46

Bobina directa en la página 49

Bobina inversa en la página 49

Bobina de ajuste en la página 52

Bobina de restablecimiento en la página 52

Agregar elementos de Las bobinas son componentes gráficos de los programas de diagrama de
bobina lógica de escalera (LD) que representan la asignación de una salida o de una
variable interna.

En Connected Components Workbench puede agregar una bobina a un


programa de diagrama de lógica de escalera (LD) desde el:

 editor de idioma de diagrama de lógica de escalera (LD)


 Editor multiidioma ubicado en el menú Herramientas
 Cuadro de herramientas de LD

Para agregar un elemento de bobina a un programa de diagrama de


lógica de escalera:

1. En el editor de idioma de LD, compruebe que el programa de LD tenga


una línea definida para la bobina. A continuación, realice una de las
siguientes acciones:

46 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

 Haga clic con el botón secundario en una línea o un elemento en el


editor de idioma de LD, seleccione Insertar elementos de lógica
de escalera y, a continuación, haga clic en Bobina directa.
Si se abre el Selector de variables seleccione una variable o haga
clic en Aceptar sin seleccionar una variable para agregar el
elemento de Bobina directa.

 Seleccione una línea o un elemento en el editor de idioma de LD y, a


continuación, pulse CTRL+4 para agregar la Bobina directa a la
derecha de la línea.
 Seleccione una línea o un elemento en el editor de idioma de LD y, a
continuación, haga clic en Herramientas > Editor multiidioma >
Insertar bobina para agregar la bobina a la derecha de la línea.
 Abra el cuadro de herramientas de LD para mostrar los elementos de
bobina (Bobina directa, Bobina inversa, Bobina Set, Bobina Reset,
Bobina de Flanco ascendente del pulso, bobina de Flanco
descendente del pulso) y:
Haga doble clic en el elemento de bobina para agregarlo al editor
de idioma de LD.
Arrastre el elemento de bobina al editor de idioma de LD y
colóquelo en la línea.
Aparece un signo más (+) en el editor de idioma de LD para
mostrar un destino válido. Suelte el botón del ratón para agregar
el elemento.

1. (opcional) Para insertar una bobina en paralelao,

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 47


Capítulo 3 Elementos de diagrama de escalera (LD)

a. En el editor de idioma de LD, compruebe que el programa de


LD tenga una bifurcación definida y, a continuación, haga clic
con el botón secundario en el nivel superior de la bifurcación
para abrir el menú de editor de idioma de LD.

b. En el menú de editor de idioma de LD, seleccione Insertar


elementos de lógica de escalera y, a continuación, haga clic
en Bobina directa. El elemento se inserta en el nivel superior
de la bifurcación.

c. Haga clic con el botón secundario en el nivel inferior de la


bifurcación para abrir el menú de editor de idioma de LD.

d. En el menú de editor de idioma de LD, seleccione Insertar


elementos de lógica de escalera y, a continuación, haga clic
en Bobina directa. El elemento se inserta en el nivel inferior
de la bifurcación.

2. (opcional) Para cambiar el tipo de bobina, en el editor de idioma de LD


seleccione la bobina y, a continuación, pulse la barra espaciadora
hasta que aparezca el tipo de bobina en el editor de idioma.

Cada vez que pulse la barra espaciadora, el tipo de bobina cambia de


directa, a inversa, ajuste, reset, flanco ascendente del pulso y flanco
descendente del pulso.

Consulte también

Bifurcación en la página 42

Bobinas en la página 45

Elementos de diagrama de escalera (LD) en la página 37

48 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Métodos abreviados de teclado de LD en la página 66

Bobina directa Las bobinas son componentes gráficos de un diagrama de lógica de escalera
(LD) que representan la asignación de una salida o una variable interna.

Las bobinas directas admiten una salida booleana de una línea de conexión
de estado booleano.

La variable asociada se asigna con el estado booleano de la conexión


izquierda. El estado de la conexión izquierda se propaga a la conexión
derecha. La conexión derecha debe estar conectada al raíl de potencia
vertical derecho (a menos que tenga bobinas paralelas, donde solo la bobina
superior debe estar conectada al raíl de potencia vertical derecho).

La variable booleana asociada debe ser una salida o estar definida por el
usuario.

Ejemplo de bobina directa

Consulte también

Agregar elementos de bobina en la página 46

Bobinas en la página 45

Bobina inversa en la página 49

Bobina inversa Las bobinas son componentes gráficos de un diagrama de lógica de escalera
(LD) que representan la asignación de una salida o una variable interna.

Los elementos de bobinas inversa admiten una salida booleana de acuerdo


con la negación booleana de un estado de línea de conexión.

La variable asociada se asigna con la negación booleana del estado de la


conexión izquierda. El estado de la conexión izquierda se propaga a la
conexión derecha. La conexión derecha debe estar conectada al raíl de

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 49


Capítulo 3 Elementos de diagrama de escalera (LD)

potencia vertical derecho (a menos que tenga bobinas paralelas, donde solo la
bobina superior debe estar conectada al raíl de potencia vertical derecho).

La variable booleana asociada debe ser una salida o estar definida por el
usuario.

Ejemplo de bobina inversa

Consulte también

Agregar elementos de bobina en la página 46

Bobinas en la página 45

Bobina directa en la página 49

Elementos de diagrama de escalera (LD) en la página 37

Bobina de extremo de Las bobinas son componentes gráficos de un diagrama de lógica de escalera
decremento de pulso (LD) que representan la asignación de una salida o una variable interna.

Las bobinas de contacto de flanco descendente (o negativo) admiten una


salida booleana de una línea de conexión de estado booleano.

La variable asociada se define a Cierto si el estado booleano de la conexión


izquierda cambia de Cierto a Falso. La variable de salida se restablece a
Falso en el resto de casos. El estado de la conexión izquierda se propaga a la
conexión derecha. La conexión derecha debe estar conectada al raíl de
potencia vertical derecho (a menos que tenga bobinas paralelas, donde solo la
bobina superior debe estar conectada al raíl de potencia vertical derecho).

La variable booleana asociada debe ser una salida o estar definida por el
usuario.

50 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Ejemplo de bobina de flanco descendente de pulso

Consulte también

Agregar elementos de bobina en la página 46

Bobinas en la página 45

Bobina de flanco ascendente de pulso en la página 51

Bobina de extremo de Las bobinas son componentes gráficos de un diagrama de lógica de escalera
incremento de pulsos (LD) que representan la asignación de una salida o una variable interna.

Las bobinas de contacto de flanco ascendente (o positivo) admiten una salida


booleana de una línea de conexión de estado booleano.

La variable asociada se define a Cierto si el estado booleano de la conexión


izquierda cambia de Falso a Cierto. La variable de salida se restablece a
Falso en el resto de casos. El estado de la conexión izquierda se propaga a la
conexión derecha. La conexión derecha debe estar conectada al raíl de
potencia vertical derecho (a menos que tenga bobinas paralelas, donde solo la
bobina superior debe estar conectada al raíl de potencia vertical derecho).

La variable booleana asociada debe ser de salida o definida por el usuario.

Ejemplo de bobina de flanco ascendente de pulso

Consulte también

Agregar elementos de bobina en la página 46

Bobinas en la página 45

Elementos de diagrama de escalera (LD) en la página 37

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 51


Capítulo 3 Elementos de diagrama de escalera (LD)

Bobina de extremo de decremento de pulso en la página 50

Bobina de ajuste Las bobinas son componentes gráficos de un diagrama de lógica de escalera
(LD) que representan la asignación de una salida o una variable interna. En
programas LD, una bobina representa una acción.

Las bobinas de ajuste habilitan una salida booleana de una línea de conexión
de estado booleano.

La variable asociada se define a Cierto si el estado booleano de la conexión


izquierda es Cierto. La variable de salida mantiene esta valor hasta que se
realiza una orden inversa mediante una bobina de restablecimiento. El estado
de la conexión izquierda se propaga a la conexión derecha. La conexión
derecha debe estar conectada al raíl de potencia vertical derecho (a menos
que tenga bobinas paralelas, donde solo la bobina superior debe estar
conectada al raíl de potencia vertical derecho).

La variable booleana asociada debe ser una salida o estar definida por el
usuario.

Ejemplo de establecimiento de bobina

Consulte también

Agregar elementos de bobina en la página 46

Bobinas en la página 45

Bobina de restablecimiento en la página 52

Bobina de Las bobinas son componentes gráficos de un diagrama de lógica de escalera


restablecimiento (LD) que representan la asignación de una salida o una variable interna.

52 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Las bobinas de restablecimiento admiten una salida booleana de una línea de


conexión de estado booleano.

La variable asociada se restablece a Falso si el estado booleano de la


conexión izquierda es Cierto. La variable de salida mantiene esta valor hasta
que se realiza una orden inversa mediante una bobina de restablecimiento. El
estado de la conexión izquierda se propaga a la conexión derecha. La
conexión derecha debe estar conectada al raíl de potencia vertical derecho (a
menos que tenga bobinas paralelas, donde solo la bobina superior debe estar
conectada al raíl de potencia vertical derecho).

La variable booleana asociada debe ser de salida o definida por el usuario.

Ejemplo de bobina Reset

Consulte también

Bobinas en la página 45

Agregar elementos de bobina en la página 46

Bobina de ajuste en la página 52

Contacto Los contactos son componentes gráficos de programas de diagrama de lógica


de escalera (LD). En función del tipo, un contacto representa el valor o la
función de una entrada o variable interna. Solo se pueden agregar contactos a
un peldaño definido en el editor de lenguaje de LD. Una vez agregado un
contacto, puede modificarse su definición.

El ejemplo siguiente muestra los tipos de elemento de contacto disponibles


para los programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 53


Capítulo 3 Elementos de diagrama de escalera (LD)

Ejemplo: Contactos

Consulte también

Agregar elementos de contacto en la página 54

Contacto directo en la página 57

Contacto inverso en la página 57

Contacto de flanco ascendente de pulso en la página 58

Contacto de flanco descendente de pulso en la página 59

Agregar un contacto a un Los contactos son componentes gráficos de un programa de diagrama de


programa de LD lógica de escalera (LD). En función del tipo, un contacto representa el valor
o la función de una entrada o variable interna. Solo se pueden agregar
contactos a un peldaño definido en el editor de lenguaje de LD.

En Connected Components Workbench puede agregar un contacto a un


programa de diagrama de lógica de escalera (LD) en el:

 editor de idioma de diagrama de lógica de escalera (LD)


 Editor multiidioma ubicado en el menú Herramientas
 Cuadro de herramientas de LD

Para agregar un elemento de contacto a un programa de diagrama de


lógica de escalera:

1. En el editor de idioma de LD, compruebe que el programa de LD tenga


una línea definida para el contacto. A continuación, realice una de las
siguientes acciones:

 Haga clic con el botón secundario en una línea o un elemento del


editor de idioma de LD, seleccione Insertar elementos de lógica
de escalera y, a continuación, haga clic en Contacto directo.

54 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Si se abre el Selector de variable, seleccione una variable o haga


clic en Aceptar sin seleccionar una variable para agregar el
elemento de Contacto directo.

 Seleccione una línea o un elemento en el editor de idioma de LD y


pulse:
CTRL+ALT+3 para agregar el elemento de Contacto directo a la
izquierda del elemento seleccionado o la línea.
CTRL+3 para agregar el elemento de Contacto directo a la derecha
del elemento seleccionado o la línea.
 Seleccione una línea o un elemento en el editor de idioma de LD y a
continuación:
Haga clic en Herramientas > Editor multiidioma > Insertar
contacto antes para agregar el contacto a la izquierda del
elemento o línea seleccionados.
Haga clic en Herramientas > Editor multiidioma > Insertar
contacto después para agregar el contacto a la derecha del
elemento o línea seleccionados.
 Abra el cuadro de herramientas de LD para mostrar los elementos de
contacto (Contacto directo, Contacto inverso, Contacto del flanco
ascendente del pulso, Contacto del flanco descendente del pulso) y,
a continuación:
Haga doble clic en el elemento de contacto para agregarlo al
editor de idioma de LD.
Arrastre el elemento de contacto al editor de idioma de LD y
colóquelo en la línea.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 55


Capítulo 3 Elementos de diagrama de escalera (LD)

Aparece un signo más (+) en el editor de idioma de LD para


mostrar un destino válido. Suelte el botón del ratón para agregar
el elemento.

1. (opcional) Para insertar un contacto paralelo:

a. En el editor de idioma de LD, compruebe que el programa de


LD tenga una bifurcación definida y, a continuación, haga clic
con el botón secundario en el nivel superior de la bifurcación
para abrir el menú de editor de idioma de LD.

b. En el menú de editor de idioma de LD, seleccione Insertar


elementos de lógica de escalera y, a continuación, haga clic
en Contacto directo. El elemento se inserta en el nivel
superior de la bifurcación.

c. Haga clic con el botón secundario en el nivel inferior de la


bifurcación para abrir el menú de editor de idioma de LD.

d. En el menú de editor de idioma de LD, seleccione Insertar


elementos de lógica de escalera y, a continuación, haga clic
en Contacto directo. El elemento se inserta en el nivel inferior
de la bifurcación.

2. (opcional) Para cambiar el tipo de contacto, en el editor de idioma


seleccione el contacto y, a continuación, pulse la barra espaciadora
hasta que aparezca el tipo de contacto en el editor de idioma.

Cada vez que pulse la barra espaciadora, el tipo de contacto cambia


pasando de directo a inverso, a flanco ascendente del pulso y flanco
descendente del pulso.

56 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Consulte también

Bifurcación en la página 42

Contactos en la página 53

Elementos de diagrama de escalera (LD) en la página 37

Métodos abreviados de teclado de LD en la página 66

Contacto directo Los contactos son componentes gráficos de programas de diagrama de lógica
de escalera (LD).

Los contactos directos habilitan una operación booleana entre un estado de


línea de conexión y una variable booleana.

El estado de la línea de conexión a la derecha del contacto es el AND lógico


entre el estado de la línea de conexión izquierda y el valor de la variable
asociada con el contacto.

Ejemplo de contacto directo

Consulte también

Agregar un elemento de contacto en la página 54

Contactos en la página 53

Contacto inverso en la página 57

Contacto inverso Los contactos son componentes gráficos de programas de diagrama de lógica
de escalera (LD).

Los contactos inversos habilitan una operación booleana entre un estado de


línea de conexión y la negación booleana de una variable booleana.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 57


Capítulo 3 Elementos de diagrama de escalera (LD)

El estado de la línea de conexión a la derecha del contacto es el AND lógico


entre el estado de la línea de conexión izquierda y la negación booleana del
valor de la variable asociada con el contacto.

Ejemplo de contacto inverso

Consulte también

Agregar elementos de contacto en la página 54

Contactos en la página 53

Contacto directo en la página 57

Contacto de flanco Los contactos son componentes gráficos de programas de diagrama de lógica
ascendente de pulso de escalera (LD).

Los contactos de flanco ascendente de pulso (positivos) habilitan una


operación booleana entre un estado de línea de conexión y el flanco
ascendente de una variable booleana.

El estado de la línea de conexión a la derecha del contacto se define a Cierto


si el estado de la línea de la conexión a la izquierda es Cierto, y el estado de
la variable asociada cambia de Falso a Cierto. El estado se restablece a Falso
en el resto de casos.

Ejemplo de contacto de flanco ascendente de pulso

Recomendación: Restringir el uso de variables de salida con contactos de


extremo

Se recomienda no utilizar salidas ni variables con un contacto del flanco de


subida del pulso (positivo) o un contacto del flanco descendente del pulso
(negativo). Estos contactos son para entradas físicas en un diagrama de
escalera. Para detectar el flanco de una variable o una salida, se recomienda
58 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018
Elementos de diagrama de escalera (LD) Capítulo 3

utilizar el bloque de funciones R_TRIG/F_TRIG, que es compatible y


funciona con cualquier lenguaje y en cualquier ubicación del programa.

Consulte también

Agregar elementos de contacto en la página 54

Contactos en la página 53

Contacto de flanco descendente de pulso en la página 59

Contacto de flanco Los contactos son componentes gráficos de programas de diagrama de lógica
descendente de pulso de escalera (LD).

Los contactos de flanco descendente de pulso (negativos) habilitan una


operación booleana entre un estado de línea de conexión y el flanco
descendente de una variable booleana.

El estado de la línea de conexión a la derecha del contacto se define a Cierto


si el estado de la línea de la conexión a la izquierda es Cierto, y el estado de
la variable asociada cambia de Cierto a Falso. El estado se restablece a Falso
en el resto de casos.

Ejemplo de contacto de flanco descendente de pulso

Recomendación: Restringir el uso de variables de salida con contactos de


extremo

Se recomienda no utilizar salidas ni variables con un contacto del flanco de


subida del pulso (positivo) o un contacto del flanco descendente del pulso
(negativo). Estos contactos son para entradas físicas en un diagrama de
escalera. Para detectar el flanco de una variable o una salida, se recomienda
utilizar el bloque de funciones R_TRIG/F_TRIG, que es compatible y
funciona con cualquier lenguaje y en cualquier ubicación del programa.

Consulte también

Agregar elementos de contacto en la página 54

Contacto en la página 53

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 59


Capítulo 3 Elementos de diagrama de escalera (LD)

Contacto de flanco ascendente de pulso en la página 58

Retorno Los retornos son salidas que representan un final condicional de un programa
de diagrama de lógica de escalera (LD).

No se pueden colocar conexiones a la derecha de un elemento de retorno.

Si la línea de conexión de la izquierda tiene el estado booleano Cierto, el


diagrama finaliza sin ejecutar las instrucciones ubicadas en las siguientes
líneas del diagrama.

Si el diagrama LD es una función, su nombre se asocia con una bobina de


salida para establecer el valor de retorno (devuelto al programa de llamada).

Ejemplo de retorno

Para insertar un retorno en un programa de diagrama de lógica de


escalera:

Realice una de las siguientes acciones:

 Haga clic en una línea o un elemento en el editor de idioma de LD,


seleccione Insertar elementos de lógica de escalera y, a
continuación, haga clic en Retorno.
 Seleccione una línea o un elemento en el editor de idioma de LD y, a
continuación, pulse CTRL+6.
 Seleccione una línea o un elemento en el editor de idioma de LD y, a
continuación, haga clic en Herramientas > Editor multiidioma >
Insertar retorno.
 Abra el cuadro de herramientas de LD para mostrar el elemento de
retorno y, a continuación:
Haga doble clic en el elemento de retorno para agregarlo al editor
de idioma de LD.
Arrastre el elemento de retorno al editor de idioma de LD y
colóquelo en la línea.

60 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Aparece un signo más (+) en el editor de idioma de LD para


mostrar un destino válido. Suelte el botón del ratón para agregar
el elemento.

Consulte también

Elementos de diagrama de escalera (LD) en la página 37

Lenguaje de diagrama de lógica de escalera (LD) en la página 33

Salto Los saltos son elementos condicionales o incondicionales que controlan la


ejecución de programas de diagrama de lógica de escalera (LD).

Anotación de salto

La siguiente anotación indica un salto en una etiqueta:

>>LABEL: salto a una etiqueta de nombre "LABEL"

Ejemplo de salto

Para insertar un salto:

Realice una de las siguientes acciones:

 Haga clic con el botón secundario en una línea o un elemento en el


editor de idioma de LD, seleccione Insertar elementos de lógica de
escalera y, a continuación, haga clic en Salto.
 Seleccione una línea o un elemento en el editor de idioma de LD y, a
continuación, pulse CTRL+5.
 Seleccione una línea o un elemento en el editor de idioma de LD y, a
continuación, haga clic en Herramientas > Editor multiidioma >
Insertar salto.
 Abra el cuadro de herramientas de LD para mostrar el elemento de
salto y a continuación:
Haga doble clic en el elemento de salto para agregarlo al editor de
idioma de LD.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 61


Capítulo 3 Elementos de diagrama de escalera (LD)

Arrastre el elemento de salto al editor de idioma de LD y


colóquelo en la línea.
Aparece un signo más (+) en el editor de idioma de LD para
mostrar un destino válido. Suelte el botón del ratón para agregar
el elemento.

Consulte también

Elementos de diagrama de escalera (LD) en la página 37

Lenguaje de diagrama de lógica de escalera (LD) en la página 33

Retornos en la página 60

Bloques de El conjunto de instrucciones de Connected Components Workbench incluye


bloques de instrucciones conformes con IEC 61131-3. Los bloques de
instrucciones en instrucciones incluyen, en conjunto, bloques de funciones, funciones y
programas de LD operadores. Puede conectar entradas y salidas de bloque de instrucciones a
variables, contactos, bobinas y otras entradas y salidas de bloques de
instrucciones.

Convenciones de bloques de instrucciones

La especificación de lenguaje de programación IEC61131-3 trata numerosos


aspectos de los controladores programables incluyendo la ejecución del
sistema operativo, las definiciones de datos, los lenguajes de programación y
los conjuntos de instrucciones. La especificación IEC61131-3 proporciona un
conjunto mínimo de funcionalidad que se puede ampliar para ajustarse a las
aplicaciones del usuario final.

Nombres de bloques de instrucciones

Las funciones y los bloques de funciones están representados por un cuadro


que muestra el nombre de la instrucción y la versión abreviada de los
nombres de parámetro. Para los bloques de funciones, el nombre de instancia
se muestra sobre el nombre del bloque de funciones.

Parámetros de retorno de bloques de instrucciones

 El parámetro de retorno de una función tiene el mismo nombre que la


función. El parámetro de retorno es la única salida.
 Los parámetros de retorno de un bloque de funciones pueden tener
cualquier nombre. Múltiples parámetros de retorno pueden
proporcionar múltiples salidas.
 Puede definir los parámetros de programas de varios dispositivos
desplazándose por las pestañas de cada uno de los dispositivos en la
vista Parámetros.

62 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Consulte también

Elementos de diagrama de escalera (LD) en la página 37

Trabajar en el editor Cuando agrega elementos a una línea en el programa de diagrama de lógica
de escalera (LD), se agregan de acuerdo con los siguientes criterios.
de idioma de LD
 El primer elemento del peldaño se inserta en la posición seleccionada
en el diagrama de lógica de escalera.
 Los elementos posteriores se insertan a la derecha del elemento
seleccionado en el peldaño.
 No se puede insertar un elemento a la derecha de un retorno de bobina
o salto.

Diferentes métodos para agregar un elemento al programa de diagrama de


lógica de escalera:

 Editor de idioma de LD
 Agregar elementos, eliminar elementos, y copiar y pegar
elementos.
 Utilizar métodos abreviados de teclado de LD para agregar
elementos.
 Editor multiidioma ubicado en el menú Herramientas
 Agregar elementos.
 Exportar una imagen del programa de LD.
 Habilitar o deshabilitar la apertura automática del Selector de
variables y del Selector de bloque de instrucciones.
 Cuadro de herramientas de LD
 Agregar elementos.

You can replace an assigned variable directly from the language editor, or
from the Variable Selector.

Para modificar una variable desde el editor de idioma:

1. En el editor de lenguaje, haga clic en el nombre de la variable para


mostrar una lista desplegable de variables globales y locales.

2. Realice una de las siguientes acciones:

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 63


Capítulo 3 Elementos de diagrama de escalera (LD)

 Escriba un nuevo nombre de variable en el cuadro de texto.


 Seleccione un nombre de variable diferente en la lista desplegable.

Para modificar una variable desde el selector de variables:

1. En el editor de lenguaje, haga doble clic en la variable para abrir el


selector de variables.

2. Haga clic en el nombre de la variable y seleccione una variable


diferente en la lista desplegable de variables globales y locales.

3. Haga clic en una variable existente y escriba los valores constantes en


el cuadro de texto proporcionado.

Consulte también

Lenguaje de diagrama de lógica de escalera (LD) en la página 33

Ejemplos de programa de diagrama de escalera (LD) en la página 64

Métodos abreviados de teclado de LD en la página 66

Ejemplos de Los siguientes son ejemplos de programas de diagrama de lógica de escalera


(LD).
programa de
diagrama de Ejemplo: Bloque de función R_TRIG

escalera (LD) El siguiente programa de ejemplo muestra el uso recomendado de un bloque


de funciones R_TRIG que se utiliza para detectar un flanco mientras está
conectado al controlador.

64 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Ejemplo: comparación de valores reales utilizando Subtraction (-) ABS y


Less than (<)

El tipo de datos real no se recomienda al comparar la igualdad de valores, ya


que los números se redondean de forma diferente. Dos valores de salida
pueden aparecer iguales en la pantalla del Área de trabajo de componentes
conectados, pero seguirán evaluándose como falsos.

Por ejemplo, al comparar 23,500001 con 23,499999 ambos aparecerán como


23,5 en la pantalla de entrada de variable, pero no serán iguales en el
controlador.

Para probar si dos tipos de datos reales son iguales, puede utilizar una
instrucción Subtraction para obtener la diferencia entre los valores y
determinar si esta es menor que (Less Than) un valor de precisión
establecido. Observe el siguiente ejemplo de programa de LD en el que se
comparan dos valores de tipo de datos real.

Consulte también

Lenguaje de diagrama de lógica de escalera (LD) en la página 33

Entorno de desarrollo de programas de LD en la página 34

Trabajar con elementos en el editor de idioma de LD en la página 63

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 65


Capítulo 3 Elementos de diagrama de escalera (LD)

Métodos abreviados Los siguientes métodos abreviados de teclado están disponibles para usarlos
con el lenguaje de lógica de escalera.
de teclado de LD
Método abreviado Descripción

Ctrl+0 Inserta un peldaño tras un peldaño seleccionado.1

Ctrl+Alt+0 Inserta un peldaño antes de un peldaño seleccionado.1


Ctrl+ 1 Inserta una bifurcación tras un elemento seleccionado.
Ctrl+Alt+ 1 Inserta una bifurcación antes de un elemento seleccionado.
Ctrl+2 Inserta un bloque de instrucciones tras un elemento
seleccionado.2
Ctrl+Alt+2 Inserta un bloque de instrucciones antes de un elemento
seleccionado.2
Ctrl+3 Inserta un contacto tras un elemento seleccionado.2
Ctrl+Alt+3 Inserta un contacto antes de un elemento seleccionado.2
Ctrl+4 Inserta una bobina tras un elemento seleccionado.
Ctrl+5 Inserta un salto tras un elemento seleccionado.

Ctrl+Alt+5 Inserta un salto tras un elemento seleccionado.


Ctrl+6 Inserta un retorno tras un elemento seleccionado.

Ctrl+8 Inserta una bifurcación por encima de la bifurcación


seleccionada.
Ctrl+Alt+8 Inserta una bifurcación por debajo de la bifurcación
seleccionada.
Eliminar Elimina un peldaño o elemento seleccionado.
Intro Cuando selecciona una línea, al pulsar la tecla Intro se
selecciona el primer elemento de la línea. Si no hay ningún
elemento de línea, no ocurre nada.
Barra espaciadora Cuando selecciona una bobina o un contacto, al pulsar la
barra espaciadora cambia el tipo de contacto o bobina.
Mayús+Intro Inserta un salto de línea.
Ctrl+Intro Abre una línea sobre la línea actual.
Ctrl+Mayús+Intro Abre una línea debajo de la línea actual.
Ctrl+Mayús+L Elimina la línea actual.
Ctrl+Suprimir Elimina la siguiente palabra de la línea actual.
Retroceso Elimina el carácter a la izquierda.
Ctrl+Retroceso Elimina la palabra anterior en la línea actual.
Ctrl+C Copia el texto seleccionado en el portapapeles.
Ctrl+Insertar Copia el texto seleccionado en el portapapeles.
Ctrl+V Pega el texto guardado en el portapapeles en el punto de
inserción.
Mayús+Insertar Pega el texto guardado en el portapapeles en el punto de
inserción.
Ctrl+Z Deshace el comando anterior.
Ctrl+Y Rehace el comando anterior.

66 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Elementos de diagrama de escalera (LD) Capítulo 3

Método abreviado Descripción

Ctrl+Mayús+Z Rehace el comando anterior.


Ctrl+Izquierda Se desplaza a la anterior instrucción o palabra.
Ctrl+Derecha Se desplaza a la siguiente instrucción o palabra.
Inicio Se desplaza al primer elemento de la línea seleccionada. Si
no hay ningún elemento de línea, no ocurre nada.
Fin Se desplaza al último elemento de la línea seleccionada. Si
no hay ningún elemento de línea, no ocurre nada.
Ctrl+Inicio Se desplaza al primer elemento de la primera línea. Si no
hay ningún elemento de línea, no ocurre nada.
Ctrl+Fin Se desplaza al último elemento de la última línea. Si no hay
ningún elemento de línea, se selecciona la última línea.
RePág Se desplaza a la parte superior del código visible.
AvPág Se desplaza a la parte inferior del código visible.
Ctrl+J Se desplaza al corchete que coincide.
Ctrl+Abajo Se desplaza hacia abajo.
Ctrl+Arriba Se desplaza hacia arriba.
Mayús+Abajo Selecciona hacia abajo.
Mayús+Clic con el botón Selecciona varias líneas. Haga clic en cada línea por
izquierdo separado.
Mayús+Arriba Selecciona hacia arriba.
Mayús+Izquierda Selecciona hacia la izquierda.
Mayús+Derecha Selecciona hacia la derecha.
Ctrl+Mayús+Izquierda Selecciona hasta la anterior instrucción o palabra.
Ctrl+Mayús+Derecha Selecciona hasta la siguiente instrucción o palabra.
Mayús+Inicio Selecciona desde el punto de inserción hasta el inicio de la
línea.
Mayús+Fin Selecciona desde el punto de inserción hasta el final de la
línea.
Ctrl+Mayús+Inicio Selecciona desde el punto de inserción hasta el inicio del
documento.
Ctrl+Mayús+Fin Selecciona desde el punto de inserción hasta el final del
documento.
Mayús+RePág Selecciona desde el punto de inserción hasta la parte
superior del código visible.
Mayús+AvPág Selecciona desde el punto de inserción hasta la parte
inferior del código visible.
Ctrl+Mayús+RePág Selecciona desde el punto de inserción hasta la parte
superior del código visible.

Ctrl+Mayús+AvPág Selecciona desde el punto de inserción hasta la parte


inferior del código visible.
Ctrl+A Selecciona el documento entero.
Ctrl+D Cuando una línea o un elemento de la línea está
seleccionado, después de pulsar CTRL+D el usuario puede
editar comentario de línea.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 67


Capítulo 3 Elementos de diagrama de escalera (LD)

Método abreviado Descripción

Ctrl+R Habilitar o deshabilitar la invocación de selector automática.


De forma predeterminada, se abre el cuadro de diálogo
Selector de bloque de instrucciones o Selector de variables
cuando se agrega un elemento a un programa de diagrama
de lógica de escalera.
Ctrl+Mayús+W Selecciona la siguiente palabra.
Ctrl+Mayús+J Selecciona el corchete que coincide.
Mayús+Alt+Abajo Selecciona la línea actual y las siguientes.
Mayús+Alt+Arriba Selecciona la línea actual y las anteriores.
Mayús+Alt+Izquierda Selecciona hacia la izquierda en la línea actual.
Mayús+Alt+Derecha Selecciona hacia la derecha en la línea actual.
Ctrl+Mayús+Alt+Izquierda Selecciona las columnas disponibles en líneas de código de
izquierda a derecha.
Ctrl+Mayús+Alt+Derecha Selecciona las columnas disponibles en líneas de código de
derecha a izquierda.
Esc Deshace la selección de texto actual.
Insertar Alterna entre los tipos de escritura sobrescribir/insertar
1 Si no se selecciona ningún peldaño, se agrega uno al final de la lista de peldaños.
2 Si se selecciona una bifurcación, se inserta un elemento al final de la bifurcación.

Consulte también

Lenguaje de diagrama de lógica de escalera (LD) en la página 33

68 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 4

Instrucción de alarma

Use la instrucción de alarma para proporcionar alertas cuando se alcanza un


límite alto o bajo.

Bloque de función Descripción


LIM_ALRM en la página 69 Histéresis en un valor real para los límites superior e
inferior.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

LIM_ALRM (alarma LIM_ALRM es una alarma con histéresis en un valor real para los límites
superior e inferior.
de límite)
Una histéresis se aplica a los límites superior e inferior. La histéresis delta
utilizada para un límite superior o inferior es la mitad de un parámetro EPS.

Una alarma de proceso es una alarma que se activa cuando el controlador


recibe y procesa un error. Las alarmas de nivel de proceso proporcionan una
alerta cuando el módulo supera el límite superior o inferior configurado para
cada canal.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 69


Capítulo 4 Instrucción de alarma

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Si es Cierto, habilita el bloque de instrucción.
Cierto: ejecuta el cálculo de LIM_ALRM actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
H Entrada REAL Valor del límite superior.
X Entrada REAL La entrada es cualquier valor real.
L Entrada REAL Valor del límite inferior.
EPS Entrada REAL Valor de histéresis (debe ser mayor que cero).
QH Salida BOOL Alarma alta: CIERTO si X es superior al límite alto H.
Q Salida BOOL Salida de alarma: CIERTO si X está fuera de los límites.
QL Salida BOOL Alarma baja: CIERTO si X es inferior al límite bajo L.
ENO Salida BOOL Habilita salidas.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de temporización LIM_ALRM

Ejemplo de diagrama de bloque de funciones LIM_ALRM

70 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción de alarma Capítulo 4

Ejemplo de diagrama de lógica de escalera LIM_ALRM

Ejemplo de texto estructurado LIM_ALRM

Resultados

Consulte también

Instrucciones de alarma en la página 69

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 71


Capítulo 4 Instrucción de alarma

72 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 5

Instrucciones aritméticas

Utilice las instrucciones aritméticas para llevar a cabo cálculos matemáticos.

Función Descripción

ABS en la página 74 Devuelve el valor absoluto de un valor real.


ACOS en la página 75 Calcula el arcocoseno de un valor real.
ACOS_LREAL en la página 76 Calcula el arcocoseno de un valor real largo.
Addition en la página 78 Añade dos o más valores enteros, reales, temporales o de cadena.
ASIN en la página 79 Calcula el arcoseno de un valor real.
ASIN_LREAL en la página 81 Calcula el arcoseno de un valor real largo.
ATAN en la página 82 Calcula la arcotangente de un valor real largo.
ATAN_LREAL en la página 84 Calcula la arcotangente de un valor real largo.
COS en la página 85 Calcula el coseno de un valor real.
COS_LREAL en la página 86 Calcula el coseno de un valor real largo.
Division en la página 88 División de dos valores enteros o reales.
EXPT en la página 90 Calcula el valor real de un número base elevado a la potencia del
exponente entero.
LOG en la página 91 Calcula el logaritmo (base 10) de un valor real.
MOD en la página 92 Realiza un cálculo del módulo en valores enteros.
MOV en la página 94 Copia un valor de entrada a una salida.
Multiplication en la página 95 Multiplica dos o más valores enteros o reales.
Neg en la página 97 Convierte un valor en negativo.
POW en la página 98 Calcula el valor de un número real elevado a la potencia del
exponente real.
RAND en la página 100 Calcula valores enteros aleatorios a partir de un rango definido.
SIN en la página 101 Calcula el seno de un valor real.
SIN_LREAL en la página 103 Calcula el seno de un valor real largo.
SQRT en la página 104 Calcula la raíz cuadrada de un valor real.
Subtraction en la página 106 Resta un valor entero, real o temporal de otro valor entero, real o
temporal.
TAN en la página 108 Calcula la tangente de un valor real.
TAN_LREAL en la página 109 Calcula la tangente de un valor real largo.
TRUNC en la página 110 Trunca valores reales y deja únicamente la parte entera.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 73


Capítulo 5 Instrucciones aritméticas

ABS (valor Devuelve el valor absoluto (positivo) de un valor real.

absoluto) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo absoluto actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada REAL Cualquier valor real con signo.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.
ABS Salida REAL Valor absoluto (siempre positivo).

Ejemplo de diagrama de bloque de funciones ABS

Ejemplo de diagrama de lógica de escalera ABS

Ejemplo de texto estructurado ABS

(* Equivalencia de ST: *)

over := (ABS (delta) > range);

74 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

Resultados

Consulte también

Instrucciones aritméticas en la página 73

ACOS (arcocoseno Calcula el arcocoseno de un valor real. Los valores de entrada y salida se
expresan en radianes.
de origen)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de arcocoseno actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada REAL Debe estar en el conjunto [-1,0 .. +1,0].
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.
ACOS Salida REAL Arcocoseno del valor de entrada (en el intervalo [–p1/2..+p1/2]) = 0 para
una entrada no válida.

Ejemplo de diagrama de bloque de funciones ACOS

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 75


Capítulo 5 Instrucciones aritméticas

Ejemplo de diagrama de lógica de escalera ACOS

Ejemplo de texto estructurado ACOS

(* Equivalencia de ST: *)

cosine := COS (angle);

result := ACOS (cosine); (* igual al ángulo*)

Resultados

Consulte también

Instrucciones aritméticas en la página 73

ACOS_LREAL Calcula el arcocoseno de un valor real largo.

(arcocoseno real Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


largo) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

76 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada LREAL Debe estar en el conjunto [-1,0 .. +1,0].
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.
ACOS_LREAL Salida LREAL Arcocoseno del valor de entrada (en el conjunto [0,0 .. PI]) = 0,0 para
entrada no válida.

Ejemplo de diagrama de bloque de funciones ACOS_LREAL

Ejemplo de diagrama de lógica de escalera ACOS_LREAL

Ejemplo de texto estructurado ACOS_LREAL

(* Equivalencia de ST: *)

cosine := COS_LREAL (angle);

result := ACOS_LREAL (cosine); (* el resultado es igual al ángulo *)

Resultados

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 77


Capítulo 5 Instrucciones aritméticas

Consulte también

Instrucciones aritméticas en la página 73

Addition Añade dos o más valores enteros, reales, temporales o de cadena.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de suma actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada SINT Sumando en tipo de datos real, temporal o de cadena.
USINT Todas las entradas deben ser del mismo tipo de datos.
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
CADENA

78 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

i2 Entrada SINT Sumando en tipo de datos real, temporal o de cadena.


USINT Todas las entradas deben ser del mismo tipo de datos.
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
CADENA
o1 Salida SINT Suma de los valores de entrada en formato Real, Tiempo o
USINT Cadena.
BYTE La entrada y la salida deben usar el mismo tipo de datos.
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
CADENA
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de adición de texto estructurado

(* Equivalencia de ST: *)

ao10 := ai101 + ai102;


ao5 := (ai51 + ai52) + ai53;

Consulte también

Instrucciones aritméticas en la página 73

ASIN (arcoseno) Calcula el arcoseno de un valor real. Los valores de entrada y salida se
expresan en radianes.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 79


Capítulo 5 Instrucciones aritméticas

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de arcoseno actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada REAL Debe estar en el conjunto [-1,0 .. +1,0].
ASIN Salida REAL Arcoseno del valor de entrada (en el intervalo [-p1/2 .. +p1/2]) = 0 para una
entrada no válida.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones ASIN

Ejemplo de diagrama de lógica de escalera ASIN

Ejemplo de texto estructurado ASIN

(* Equivalencia de ST: *)

sine := SIN (angle);

result := ASIN (sine); (* el resultado es igual al ángulo *)

80 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

Resultados

Consulte también

Instrucciones aritméticas en la página 73

ASIN_LREAL Calcula el arcoseno de un valor real largo.

(arcoseno real Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


largo) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada LREAL Debe estar en el conjunto [-1,0 .. +1,0].
ASIN_LREAL Salida LREAL Arcoseno del valor de entrada (en el conjunto [-PI/2 .. +PI/2]) = 0,0 para
entrada no válida.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones ASIN_LREAL

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 81


Capítulo 5 Instrucciones aritméticas

Ejemplo de diagrama de lógica de escalera ASIN_LREAL

Ejemplo de texto estructurado ASIN_LREAL

(* Equivalencia de ST: *)

sine:= SIN_LREAL (angle);

result:= ASIN_LREAL (sine); (* el resultado es igual al ángulo *)

Resultados

Consulte también

Instrucciones aritméticas en la página 73

ATAN Calcula la arcotangente de un valor real largo.

(arcotangente) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

82 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de arcotangente actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada REAL Cualquier valor real.
ATAN Salida REAL Arcotangente del valor de entrada (en el conjunto [-PI/2 .. +PI/2]) = 0,0 para
entrada no válida.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones ATAN

Ejemplo de diagrama de lógica de escalera ATAN

Ejemplo de texto estructurado ATAN

(* Equivalencia de ST: *)

tangent := TAN (angle);

result := ATAN (tangent); (* el resultado es igual al ángulo*)

Resultados

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 83


Capítulo 5 Instrucciones aritméticas

Consulte también

Instrucciones aritméticas en la página 73

ATAN_LREAL Calcula la arcotangente de un valor real largo.

(arcotangente real Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


largo) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada LREAL Cualquier valor real largo.
ATAN_LREAL Salida LREAL Arcotangente del valor de entrada (en el conjunto [-PI/2 .. +PI/2]) = 0,0 para
entrada no válida.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones ATAN_LREAL

Ejemplo de diagrama de lógica de escalera ATAN_LREAL

Ejemplo de texto estructurado ATAN_LREAL

84 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

(* Equivalencia de ST: *)

tangent := TAN_LREAL (angle);

result := ATAN_LREAL (tangent); (* el resultado es igual al ángulo*)

Resultados

Consulte también

Instrucciones aritméticas en la página 73

COS (coseno) Calcula el coseno de un valor real.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de coseno actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada REAL Cualquier valor real.
COS Salida REAL Coseno del valor de entrada (en el conjunto [-1.0 .. +1,0]).
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 85


Capítulo 5 Instrucciones aritméticas

Ejemplo de diagrama de bloque de funciones COS

Ejemplo de diagrama de lógica de escalera COS

Ejemplo de texto estructurado COS

(* Equivalencia de ST: *)

cosine := COS (angle);

result := ACOS (cosine); (* igual al ángulo*)

Resultados

Consulte también

Instrucciones aritméticas en la página 73

COS_LREAL Calcula el coseno de un valor real largo.

(coseno real largo) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

86 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de coseno actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada LREAL Cualquier valor real largo.
COS_LREAL Salida LREAL Coseno del valor de entrada (en el conjunto [-1.0 .. +1,0]).
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones COS_LREAL

Ejemplo de diagrama de lógica de escalera COS_LREAL

Ejemplo de texto estructurado COS_LREAL

(* Equivalencia de ST: *)

cosine := COS_LREAL (angle);

result := ACOS_LREAL (cosine); (* el resultado es igual al ángulo *)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 87


Capítulo 5 Instrucciones aritméticas

Resultados

Consulte también

Instrucciones aritméticas en la página 73

Division Divide el primer valor entero o real introducido por el segundo valor entero o
real introducido.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
TRUE - execute current division computation.
FALSE - there is no computation.
Solo se aplica a programas de diagrama de lógica de escalera.

88 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

i1 Entrada SINT Dividendo en tipo de datos entero o real distinto de cero.


USINT Todas las entradas deben ser del mismo tipo de datos.
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
i2 Entrada SINT Divisor en tipo de datos entero o real distinto de cero.
USINT Todas las entradas deben ser del mismo tipo de datos.
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
o1 Salida SINT Cociente de las entradas en tipo de datos entero o real distinto de cero.
USINT La entrada y la salida deben usar el mismo tipo de datos.
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado de división

(* Equivalencia de ST: *)

ao10 := ai101 / ai102;


ao5 := (ai5 / 2) / ai53;

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 89


Capítulo 5 Instrucciones aritméticas

Consulte también

Instrucciones aritméticas en la página 73

EXPT (exponente) Aumenta el valor de IN (base) a la potencia de EXP (exponente) y genera el


resultado Real de la operación.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de exponente actual.
Falso: no se realiza ningún cálculo.
IN Entrada REAL Cualquier valor real con signo.
EXP Entrada DINT Exponente entero.
EXPT Salida REAL El valor Real de IN a la potencia de EXP.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones EXPT

Ejemplo de diagrama de lógica de escalera EXPT

90 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

Ejemplo de texto estructurado EXPT

(* Equivalencia de ST: *)

tb_size := ANY_TO_DINT (EXPT (2.0, range) );

Resultados

Consulte también

Instrucciones aritméticas en la página 73

LOG (logaritmo Calcula el logaritmo (base 10) de un valor real.

base 10) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de logaritmo actual.
Falso: no se realiza ningún cálculo.
IN Entrada REAL Debe ser mayor que cero.
LOG Salida REAL Logaritmo (base 10) del valor de entrada. El resultado obtenido es -3,4E+38
para un valor IN cero y un valor IN negativo.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 91


Capítulo 5 Instrucciones aritméticas

ENO Salida BOOL Habilita la salida.


Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones LOG

Ejemplo de diagrama de lógica de escalera LOG

Ejemplo de texto estructurado LOG

(* Equivalencia de ST: *)

xpos := ABS (xval);

xlog := LOG (xpos);

Resultados

Consulte también

Instrucciones aritméticas en la página 73

MOD (módulo) Divide la entrada IN por la entrada Base y coloca el resto en la salida MOD.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

92 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo del módulo.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada DINT Cualquier valor de entero con signo.
Base Entrada DINT Debe ser mayor que cero.
MOD Salida DINT Cálculo del módulo (base MOD de entrada) / devuelve -1 si Base <= 0.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de función MOD

Ejemplo de diagrama de lógica de escalera MOD

Ejemplo de texto estructurado MOD

(* Equivalencia de ST: *)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 93


Capítulo 5 Instrucciones aritméticas

division_result := (value / divider); (* división de entero *)

rest_of_division := MOD (value, divider); (* resto de la división *)

Resultados

Consulte también

Instrucciones aritméticas en la página 73

MOV (movimiento) Asigna el valor de la entrada (i1) a la salida (o1).

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de


lógica de escalera y texto estructurado.

En programas de texto estructurado, utilice el operador Igual que (=) en lugar


de MOV.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: se realiza el cálculo de vínculo directo a una salida.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

94 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

i1 Entrada BOOL La entrada y la salida deben usar el mismo tipo de datos.


DINT
REAL
TIME
CADENA
SINT
USINT
INT
UINT
UDINT
LINT
ULINT
DATE
LREAL
BYTE
WORD
DWORD
LWORD
o1 Salida BOOL La entrada y la salida deben usar el mismo tipo de datos.
DINT
REAL
TIME
CADENA
SINT
USINT
INT
UINT
UDINT
LINT
ULINT
DATE
LREAL
BYTE
WORD
DWORD
LWORD
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado

(* Equivalencia de ST: *)

ao23 := ai10;

Consulte también

Instrucciones aritméticas en la página 73

Multiplication Multiplica dos o más valores enteros o reales.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 95


Capítulo 5 Instrucciones aritméticas

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de multiplicación actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada SINT Factor en tipo de datos entero o real.
USINT Todas las entradas deben ser del mismo tipo de datos.
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
i2 Entrada SINT Factor en tipo de datos entero o real.
USINT Todas las entradas deben ser del mismo tipo de datos.
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
LINT
LWORD
REAL
LREAL

96 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

o1 Salida SINT Producto de las entradas en tipo de datos entero o real.


USINT La entrada y la salida deben usar el mismo tipo de datos.
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado Multiplicación

(* Equivalencia de ST *)

ao10 := ai101 * ai102;


ao5 := (ai51 * ai52) * ai53;

Consulte también

Instrucciones aritméticas en la página 73

Neg (negación) Convierte un valor en valor negado.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión actual a negativo.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 97


Capítulo 5 Instrucciones aritméticas

i1 Entrada SINT La entrada y la salida deben ser del mismo tipo de datos.
INT
DINT
LINT
REAL
LREAL
o1 Salida SINT La entrada y la salida deben ser del mismo tipo de datos.
INT
DINT
LINT
REAL
LREAL
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado Neg

(* Equivalencia de ST: *)

ao23 := - (ai10);
ro100 := - (ri1 + ri2);

Consulte también

Instrucciones aritméticas en la página 73

POW (aumento Si el primer argumento es 'base' y el segundo argumento es 'exponente',


calcula el resultado real del (exponente base).
potencia)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de parámetro Tipo de datos Descripción


EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de exponente actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada REAL Número real que se va a elevar.
EXP Entrada REAL Potencia (exponente).

98 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

POW Salida REAL (IN EXP)


1,0 si IN no es 0,0 y EXP es 0,0
0,0 si IN es 0,0 y EXP es negativo
0,0 si tanto IN como EXP son 0,0
0,0 si IN es negativo y EXP no se corresponde con un número
entero.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones POW

Ejemplo de diagrama de lógica de escalera POW

Ejemplo de texto estructurado POW

(* Equivalencia de ST: *)

result := POW (xval, power);

Resultados

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 99


Capítulo 5 Instrucciones aritméticas

Consulte también

Instrucciones aritméticas en la página 73

RAND (valor Calcula valores enteros aleatorios a partir de un rango definido.

aleatorio) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de valores enteros aleatorios.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
base Entrada DINT Define el conjunto de números admitidos.
RAND Salida DINT Valor aleatorio en el conjunto [0..base-1].
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones RAND

Ejemplo de diagrama de lógica de escalera RAND

Ejemplo de texto estructurado RAND

100 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

(* Equivalencia de ST: *)

selected := MUX4 ( RAND (4), 1, 4, 8, 16 );

(*

selección aleatoria de 1 de 4 valores predefinidos

el valor emitido de llamada de RAND está en el conjunto [0..3],

de modo que el valor 'seleccionado' emitido desde MUX4 obtendrá


'aleatoriamente' el valor

1 si se emite 0 desde RAND,

o 4 si se emite 1 desde RAND,

o 8 si se emite 2 desde RAND,

o 16 si se emite 3 desde RAND,

*)

Resultados

Consulte también

Instrucciones aritméticas en la página 73

SIN (seno) Calcula el seno de un valor real.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 101


Capítulo 5 Instrucciones aritméticas

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de seno actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada REAL Cualquier valor real.
SIN Salida REAL Seno del valor de entrada (en el conjunto [-1.0 .. +1,0]).
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones SIN

Ejemplo de diagrama de lógica de escalera SIN

Ejemplo de texto estructurado SIN

(* Equivalencia de ST: *)

sine := SIN (angle);

result := ASIN (sine); (* el resultado es igual al ángulo *)

102 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

Resultados

Consulte también

Instrucciones aritméticas en la página 73

SIN_LREAL (seno Calcula el seno de un valor real largo.

real largo) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada LREAL Cualquier valor real largo.
SIN_LREAL Salida LREAL Seno del valor de entrada (en el conjunto [-1.0 .. +1,0]).
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones SIN_LREAL

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 103


Capítulo 5 Instrucciones aritméticas

Ejemplo de diagrama de lógica de escalera SIN_LREAL

Ejemplo de texto estructurado SIN_LREAL

(* Equivalencia de ST: *)

TESTOUTPUT1 := SIN_LREAL(TESTINPUT1) ;

Resultados

Consulte también

Instrucciones aritméticas en la página 73

SQRT (raíz Calcula la raíz cuadrada de un valor real.

cuadrada) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

104 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de raíz cuadrada actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada REAL Debe ser mayor o igual que cero.
SQRT Salida REAL Raíz cuadrada del valor de entrada. El resultado obtenido es 0 para un
valor IN negativo.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones SQRT

Ejemplo de diagrama de lógica de escalera SQRT

Ejemplo de texto estructurado SQRT

(* Equivalencia de ST: *)

xpos := ABS (xval);

xroot := SQRT (xpos);

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 105


Capítulo 5 Instrucciones aritméticas

Resultados

Consulte también

Instrucciones aritméticas en la página 73

Subtraction Resta un valor entero, real o temporal de otro valor entero, real o temporal.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de suma actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

106 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

i1 Entrada SINT Minuendo en cualquier tipo de datos entero, real o temporal.


USINT Todas las entradas deben ser del mismo tipo de datos.
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
i2 Entrada SINT Sustraendo en cualquier tipo de datos entero, real o temporal.
USINT Todas las entradas deben ser del mismo tipo de datos.
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
o1 Salida SINT Diferencia entre el minuendo y el sustraendo en cualquier tipo
USINT de datos entero, real o temporal.
BYTE La salida debe ser del mismo tipo de datos que la entrada.
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado Subtraction

(* Equivalencia de ST: *)

ao10 := ai101 - ai102;


ao5 := (ai51 - 1) - ai53;

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 107


Capítulo 5 Instrucciones aritméticas

Consulte también

Instrucciones aritméticas en la página 73

TAN (tangente) Calcula la tangente de un valor real.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: realiza el cálculo de tangente actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada REAL No puede ser igual a PI/2 módulo PI.
TAN Salida REAL Tangente del valor de entrada = 1E+38 para entrada no válida.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones TAN

Ejemplo de diagrama de lógica de escalera TAN

Ejemplo de texto estructurado TAN

108 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

(* Equivalencia de ST: *)

tangent := TAN (angle);

result := ATAN (tangent); (* el resultado es igual al ángulo*)

Resultados

Consulte también

Instrucciones aritméticas en la página 73

TAN_LREAL Calcula la tangente de un valor real largo.

(tangente real larga) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
TRUE - perform current computation.
FALSE - there is no computation.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada LREAL No puede ser igual a PI/2 módulo PI.
TAN_LREAL Salida LREAL Tangente del valor de entrada = 1E+38 para entrada no válida.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 109


Capítulo 5 Instrucciones aritméticas

Ejemplo de diagrama de bloque de funciones TAN_LREAL

Ejemplo de diagrama de lógica de escalera TAN_LREAL

Ejemplo de texto estructurado TAN_LREAL

(* Equivalencia de ST: *)

tangent := TAN_LREAL (angle);

result := ATAN_LREAL (tangent); (* el resultado es igual al ángulo*)

Resultados

Consulte también

Instrucciones aritméticas en la página 73

TRUNC (truncar) Trunca valores reales y deja únicamente la parte entera.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

110 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones aritméticas Capítulo 5

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: realiza el truncamiento del cálculo de valores reales.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada REAL Cualquier valor real.
TRUNC Salida REAL Si IN>0, el mayor entero es menor o igual que la entrada.
Si IN<0, el menor entero es mayor o igual que la entrada.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones TRUNC

Ejemplo de diagrama de lógica de escalera TRUNC

Ejemplo de texto estructurado TRUNC

(* Equivalencia de ST: *)

result := TRUNC (+2,67) + TRUNC (-2,0891);

(*significa: result:= 2,0 + (–2,0):= 0,0: *)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 111


Capítulo 5 Instrucciones aritméticas

Resultados

Consulte también

Instrucciones aritméticas en la página 73

112 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 6

Instrucciones de puerto serie ASCII

Use las instrucciones de puerto serie ASCII para utilizar o alterar el canal de
comunicación para recibir o transmitir datos de transmisión.

Bloque de función Descripción

ABL en la página 113 Cuenta el número de caracteres en el búfer, incluyendo el carácter de fin de
línea.

ACB en la página 120 Cuenta el número total de caracteres en el búfer.


ACL en la página 115 Borra los búferes de recepción y transmisión.
AHL en la página 118 Establece o restablece las líneas de confirmación del módem.
ARD en la página 122 Lee los caracteres de la entrada del búfer y los coloca en una cadena.

ARL en la página 125 Lee una línea de caracteres de la entrada del búfer y los coloca en una
cadena.
AWA en la página 127 Escribe una cadena con dos caracteres anexos (configurados por el usuario)
en un dispositivo externo.
AWT en la página 129 Escribe caracteres de una cadena de origen en un dispositivo externo.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

ABL (prueba de Cuenta el número total de caracteres ASCII en el búfer de entrada, incluido
el carácter de fin de línea.
ASCII de línea de
búfer) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 113


Capítulo 6 Instrucciones de puerto serie ASCII

Parámetro Tipo de Tipo de Descripción


parámetro datos
IN Entrada BOOL Estado de entrada de línea.
CIERTO: si se detecta un flanco ascendente, se inicia el bloque de
funciones con la condición previa de que la última operación esté
completa.
FALSE - The instruction block is idle.
ABLInput Entrada ABLACB El canal que se utilizará.
Use el tipo de datos ABLACB para definir el canal, el tipo de disparador
y para cancelar parámetros de ABLInput.
Q Salida BOOL Indica si el recuento de caracteres está en curso o completo.
Las salidas se actualizan de forma asíncrona desde la exploración del
programa. La salida Q no se puede utilizar para volver a activar la
instrucción ya que IN tiene el flanco activado.
TRUE - The function block is complete.
FALSE - The function block is not complete.
Characters Salida UINT El número de caracteres del búfer. El límite de búfer es de 82
caracteres.
Error Salida BOOL Indica la existencia de una condición de error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.

ErrorID Salida UINT Un número único que identifica el error. Los errores de esta instrucción
se definen en códigos de error ABL.

Códigos de error ABL

Utilice esta tabla para determinar los códigos de error y la descripciones


ABL.

Código de Descripción del error


error
03 La transmisión no se puede completar porque la señal de borrar al enviar se ha perdido.
06 Se ha detectado un parámetro no válido.
07 No se puede completar el envío o recepción ASCII porque la configuración del canal se ha cerrado
mediante el cuadro de diálogo de configuración del canal.
08 No se puede completar la escritura ASCII porque ya hay una transmisión ASCII en progreso.
09 La comunicación ASCII solicitada no es compatible con la configuración actual del canal.
10 La cancelación se ha configurado; deteniendo la ejecución de la instrucción. No se necesita ninguna
acción.
11 La longitud solicitada de la cadena no es válida, es un número negativo, es mayor que 82 o es 0. Se aplica
a los bloques de funciones ARD y ARL.
13 El valor solicitado (.LEN) en el bloque de control es un número negativo o un valor mayor que el tamaño de
cadena almacenado en la cadena de origen. Se aplica a los bloques de funciones AWA y AWT.
14 El bloque de funciones ACL se ha cancelado.
16 El puerto serie no es compatible con las líneas de control RTS o CTS.

114 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de puerto serie ASCII Capítulo 6

Ejemplo de diagrama de bloque de funciones ABL

Ejemplo de diagrama de lógica de escalera ABL

Ejemplo de texto estructurado ABL

Consulte también

Tipo de datos ABLACB en la página 132

Instrucciones de puerto serie ASCII en la página 113

ACL (ASCII clear Borra los búferes de recepción y transmisión, y elimina las instrucciones de
la cola ASCII.
buffer, o ASCII
borra el búfer) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 115


Capítulo 6 Instrucciones de puerto serie ASCII

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
IN Entrada BOOL Estado de entrada de línea.
CIERTO: si se detecta un flanco ascendente, se inicia el bloque de
funciones con la condición previa de que la última operación esté
completa.
FALSE - The instruction block is idle.
ACLInput Entrada ACLI El canal que se utilizará y el estado de la transmisión y los búferes de
recepción.
Para RXBuffer, borra el búfer de recepción y elimina los bloques de
función de recepción ASCII (ARL y ARD) de la cola ASCII.
Para TXBuffer, borra el búfer de transmisión y elimina los bloques de
función de transmisión ASCII (AWA y AWT) de la cola ASCII.
Use el tipo de datos ACLI para definir los parámetros de canal, RXBuffer
y TXBuffer de ACLInput.

Q Salida BOOL Indica si el proceso de eliminación de la cola de ASCII está en curso o


completo.
Cierto: el bloque de funciones está completo.
FALSE - The function block is not complete.
Error Salida BOOL Indica la existencia de una condición de error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.

ErrorID Salida UINT Un número único que identifica el error. Los errores de esta instrucción
se definen en códigos de error ABL.

Códigos de error ABL

Utilice esta tabla para determinar los códigos de error y la descripciones


ABL.

Código de Descripción del error


error
03 La transmisión no se puede completar porque la señal de borrar al enviar se ha perdido.
06 Se ha detectado un parámetro no válido.
07 No se puede completar el envío o recepción ASCII porque la configuración del canal se ha cerrado
mediante el cuadro de diálogo de configuración del canal.

116 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de puerto serie ASCII Capítulo 6

08 No se puede completar la escritura ASCII porque ya hay una transmisión ASCII en progreso.
09 La comunicación ASCII solicitada no es compatible con la configuración actual del canal.
10 La cancelación se ha configurado; deteniendo la ejecución de la instrucción. No se necesita ninguna
acción.
11 La longitud solicitada de la cadena no es válida, es un número negativo, es mayor que 82 o es 0. Se aplica
a los bloques de funciones ARD y ARL.
13 El valor solicitado (.LEN) en el bloque de control es un número negativo o un valor mayor que el tamaño de
cadena almacenado en la cadena de origen. Se aplica a los bloques de funciones AWA y AWT.
14 El bloque de funciones ACL se ha cancelado.
16 El puerto serie no es compatible con las líneas de control RTS o CTS.

Ejemplo de diagrama de bloque de funciones ACL

Ejemplo de diagrama de lógica de escalera ACL

Ejemplo de texto estructurado ACL

Consulte también

Tipo de datos ACL en la página 132

Instrucciones de puerto serie ASCII en la página 113

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 117


Capítulo 6 Instrucciones de puerto serie ASCII

AHL (líneas de Define o restablece las líneas de control de protocolo de enlace RS-232 RTS
(Request to Send) de su módem.
confirmación de
ASCII) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
IN Entrada BOOL Estado de entrada de línea.
Cierto: si se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso: el bloque de instrucción está inactivo.
AHLInput Entrada AHLI El canal que se utilizará y el conjunto o restablecimiento de la línea de
control RTS para el módem.
Use el tipo de datos AHLI para definir los parámetros canal, SetRts,
ClrRts y cancelar de AHLInput.
Q Salida BOOL Indica si el conjunto o restablecimiento se ha completado.
Las salidas de esta instrucción se actualizan de forma asíncrona desde
la exploración del programa. La salida Q no se puede utilizar para volver
a activar la instrucción ya que IN tiene el flanco activado.
TRUE - The function block is complete.
FALSE - The function block is not complete.
ChannelSts Salida WORD Muestra el estado actual (0000 a 001F) de las líneas de confirmación del
canal especificado.
Error Salida BOOL Indica la existencia de una condición de error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta instrucción
se definen en códigos de error ABL.

Códigos de error ABL

Utilice esta tabla para determinar los códigos de error y la descripciones


ABL.

118 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de puerto serie ASCII Capítulo 6

Código de Descripción del error


error
03 La transmisión no se puede completar porque la señal de borrar al enviar se ha perdido.
06 Se ha detectado un parámetro no válido.
07 No se puede completar el envío o recepción ASCII porque la configuración del canal se ha cerrado
mediante el cuadro de diálogo de configuración del canal.
08 No se puede completar la escritura ASCII porque ya hay una transmisión ASCII en progreso.
09 La comunicación ASCII solicitada no es compatible con la configuración actual del canal.
10 La cancelación se ha configurado; deteniendo la ejecución de la instrucción. No se necesita ninguna
acción.
11 La longitud solicitada de la cadena no es válida, es un número negativo, es mayor que 82 o es 0. Se aplica
a los bloques de funciones ARD y ARL.
13 El valor solicitado (.LEN) en el bloque de control es un número negativo o un valor mayor que el tamaño de
cadena almacenado en la cadena de origen. Se aplica a los bloques de funciones AWA y AWT.
14 El bloque de funciones ACL se ha cancelado.
16 El puerto serie no es compatible con las líneas de control RTS o CTS.

Ejemplo de diagrama de bloque de funciones AHL

Ejemplo de diagrama de lógica de escalera AHL

Ejemplo de texto estructurado AHL

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 119


Capítulo 6 Instrucciones de puerto serie ASCII

Consulte también

Tipo de datos AHLI en la página 133

Tipo de datos AHL ChannelSts en la página 133

Instrucciones de puerto serie ASCII en la página 113

ACB (caracteres Cuenta el número total de caracteres ASCII en el búfer, incluido el de final
de línea.
ASCII en el búfer)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
IN Entrada BOOL Estado de entrada de línea.
Cierto: si se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso: el bloque de instrucción está inactivo.
ACBInput Entrada ABLACB El canal que se utilizará.
Use el tipo de datos ABLACB para definir el canal, el tipo de disparador
y para cancelar parámetros de ACBInput.
Q Salida BOOL Indica si el recuento de caracteres está en curso o completo.
Las salidas de este bloque de instrucciones se actualizan de forma
asíncrona desde la exploración del programa. La salida Q no se puede
utilizar para volver a activar la instrucción ya que IN tiene el flanco
activado.
Cierto: el recuento está completo.
Falso: el recuento está en curso.
Characters Salida UINT El número de caracteres del búfer.
Error Salida BOOL Indica la existencia de una condición de error.
FALSO: no hay ningún error.
CIERTO: se ha detectado un error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta instrucción
se definen en códigos de error ABL.

120 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de puerto serie ASCII Capítulo 6

Códigos de error ACB

Utilice esta tabla para determinar los códigos de error y la descripciones


ABL.

Código de Descripción del error


error
03 La transmisión no se puede completar porque la señal de borrar al enviar se ha perdido.
06 Se ha detectado un parámetro no válido.
07 No se puede completar el envío o recepción ASCII porque la configuración del canal se ha cerrado
mediante el cuadro de diálogo de configuración del canal.
08 No se puede completar la escritura ASCII porque ya hay una transmisión ASCII en progreso.
09 La comunicación ASCII solicitada no es compatible con la configuración actual del canal.
10 La cancelación se ha configurado; deteniendo la ejecución de la instrucción. No se necesita ninguna
acción.
11 La longitud solicitada de la cadena no es válida, es un número negativo, es mayor que 82 o es 0. Se aplica
a los bloques de funciones ARD y ARL.
13 El valor solicitado (.LEN) en el bloque de control es un número negativo o un valor mayor que el tamaño de
cadena almacenado en la cadena de origen. Se aplica a los bloques de funciones AWA y AWT.
14 El bloque de funciones ACL se ha cancelado.
16 El puerto serie no es compatible con las líneas de control RTS o CTS.

Ejemplo de diagrama de bloque de funciones ACB

Ejemplo de diagrama de lógica de escalera ACB

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 121


Capítulo 6 Instrucciones de puerto serie ASCII

Ejemplo de texto estructurado ACB

Consulte también

Tipo de datos ABLACB en la página 132

Instrucciones de puerto serie ASCII en la página 113

ARD (lectura ASCII) Lee los caracteres ASCII de la entrada del búfer y los almacena en una
cadena.

Detalles de la operación:

 La instrucción ARD se ejecuta hasta que se reciben todos los caracteres


en el búfer ASCII. Si se ejecuta otra instrucción ASCII, se pone en la
cola hasta que ARD finaliza.
 Para anular la instrucción ARD, ejecute una instrucción ACL.
 Para evitar que la instrucción ARD retrase la cola ASCII mientras
espera el número necesario de caracteres, utilice los resultados de una
instrucción ACB para activar la instrucción ARD.
 Se puede extraer el estado de la instrucción del bit de control de la
instancia de instrucción (por ejemplo, ARD_1.controlbit). Esto muestra
si la instrucción está bloqueando la cola de instrucciones ASCII a la
espera de más caracteres:
 7º bit = Instrucción habilitada.
 6º bit = Instrucción en cola.
 5º bit = Instrucción realizada.
 3º bit = Instrucción con errores.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

122 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de puerto serie ASCII Capítulo 6

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Estado de entrada de línea.
Cierto: si se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso: el bloque de instrucción está inactivo.
ARDInput Entrada ARDARL Lee los caracteres del búfer. El número máximo es 82.
Use el tipo de datos ARDARL para definir los parámetros canal,
longitud y cancelar de ARDInput.
Q Salida BOOL Indica si la lectura del búfer está en curso o completada.
Las salidas de esta instrucción se actualizan de forma asíncrona
desde la exploración del programa. La salida Q no se puede utilizar
para volver a activar la instrucción ya que IN tiene el flanco activado.
TRUE - The function block is complete.
FALSE - The function block is not complete.
Destino Salida ASCIILOCADD Elemento de cadena en que se almacenan los caracteres.
R
NumChar Salida UINT El número de caracteres.
Error Salida BOOL Indica la existencia de una condición de error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en códigos de error ABL.

Códigos de error ABL

Utilice esta tabla para determinar los códigos de error y la descripciones


ABL.

Código de Descripción del error


error
03 La transmisión no se puede completar porque la señal de borrar al enviar se ha perdido.
06 Se ha detectado un parámetro no válido.
07 No se puede completar el envío o recepción ASCII porque la configuración del canal se ha cerrado
mediante el cuadro de diálogo de configuración del canal.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 123


Capítulo 6 Instrucciones de puerto serie ASCII

08 No se puede completar la escritura ASCII porque ya hay una transmisión ASCII en progreso.
09 La comunicación ASCII solicitada no es compatible con la configuración actual del canal.
10 La cancelación se ha configurado; deteniendo la ejecución de la instrucción. No se necesita ninguna
acción.
11 La longitud solicitada de la cadena no es válida, es un número negativo, es mayor que 82 o es 0. Se aplica
a los bloques de funciones ARD y ARL.
13 El valor solicitado (.LEN) en el bloque de control es un número negativo o un valor mayor que el tamaño de
cadena almacenado en la cadena de origen. Se aplica a los bloques de funciones AWA y AWT.
14 El bloque de funciones ACL se ha cancelado.
16 El puerto serie no es compatible con las líneas de control RTS o CTS.

Ejemplo de diagrama de bloque de funciones ARD

Ejemplo de diagrama de lógica de escalera ARD

Ejemplo de texto estructurado ARD

124 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de puerto serie ASCII Capítulo 6

Consulte también

Tipo de datos ARDARL en la página 133

Instrucciones de puerto serie ASCII en la página 113

ARL (línea de Lee una línea de caracteres ASCII del búfer, incluidos los caracteres de fin, y
los almacena en una cadena.
lectura ASCII)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Estado de entrada de línea.
Cierto: si se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso: el bloque de instrucción está inactivo.
ARLInput Entrada ARDARL Lee una línea de caracteres ASCII del búfer. El número máximo es
82.
Use el tipo de datos ARDARL para definir los parámetros canal,
longitud y cancelar de ARDLInput.
Q Salida BOOL Indica si la línea de lectura en el búfer de entrada está en curso o
completada.
Las salidas de esta instrucción se actualizan de forma asíncrona
desde la exploración del programa. La salida Q no se puede utilizar
para volver a activar la instrucción ya que IN tiene el flanco activado.
TRUE - The function block is complete.
FALSE - The function block is not complete.
Destino Salida ASCIILOCADD Elemento de cadena en que se almacenan los caracteres.
R
NumChar Salida UINT El número de caracteres en la línea, incluyendo el carácter de fin.
Error Salida BOOL Indica la existencia de una condición de error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 125


Capítulo 6 Instrucciones de puerto serie ASCII

ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en códigos de error ABL.

Códigos de error ABL

Utilice esta tabla para determinar los códigos de error y la descripciones


ABL.

Código de Descripción del error


error
03 La transmisión no se puede completar porque la señal de borrar al enviar se ha perdido.
06 Se ha detectado un parámetro no válido.
07 No se puede completar el envío o recepción ASCII porque la configuración del canal se ha cerrado
mediante el cuadro de diálogo de configuración del canal.
08 No se puede completar la escritura ASCII porque ya hay una transmisión ASCII en progreso.
09 La comunicación ASCII solicitada no es compatible con la configuración actual del canal.
10 La cancelación se ha configurado; deteniendo la ejecución de la instrucción. No se necesita ninguna
acción.
11 La longitud solicitada de la cadena no es válida, es un número negativo, es mayor que 82 o es 0. Se aplica
a los bloques de funciones ARD y ARL.
13 El valor solicitado (.LEN) en el bloque de control es un número negativo o un valor mayor que el tamaño de
cadena almacenado en la cadena de origen. Se aplica a los bloques de funciones AWA y AWT.
14 El bloque de funciones ACL se ha cancelado.
16 El puerto serie no es compatible con las líneas de control RTS o CTS.

Ejemplo de diagrama de bloque de funciones ARL

Ejemplo de diagrama de lógica de escalera ARL

126 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de puerto serie ASCII Capítulo 6

Ejemplo de texto estructurado ARL

Consulte también

Tipo de datos ARDARL en la página 133

Instrucciones de puerto serie ASCII en la página 113

AWA (escritura Escribe una cadena con dos caracteres anexos (configurados por el usuario)
en un dispositivo externo.
ASCII con anexo)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Estado de entrada de línea.
Cierto: se detecta un flanco ascendente, se inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso: el bloque de instrucción está inactivo.
AWAInput Entrada AWAAWT El canal y el número (longitud) de los caracteres que se van a escribir
en el búfer. El máximo es 82.
Use el tipo de datos AWAAWT para definir los parámetros de canal,
longitud y cancelación de AWAInput.
Source Entrada ASCIILOCADD La cadena de origen que aparecía como salida de una matriz de
R caracteres por instrucción ARD o ARL.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 127


Capítulo 6 Instrucciones de puerto serie ASCII

Q Salida BOOL Indica si la escritura está en curso o completa.


Las salidas de esta instrucción se actualizan de forma asíncrona
desde la exploración del programa. La salida Q no se puede utilizar
para volver a activar la instrucción ya que IN tiene el flanco activado.
TRUE - The function block is complete.
FALSE - The function block is not complete.
NumChar Salida UINT El número de caracteres. El número de caracteres puede ser inferior a
la longitud solicitada que se transmitirá si la longitud de la cadena de
origen es menor que la longitud solicitada.
Se actualiza cuando la transmisión se completa y Q es Cierto.
Error Salida BOOL Indica la existencia de una condición de error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en códigos de error ABL.

Códigos de error ABL

Utilice esta tabla para determinar los códigos de error y la descripciones


ABL.

Código de Descripción del error


error
03 La transmisión no se puede completar porque la señal de borrar al enviar se ha perdido.
06 Se ha detectado un parámetro no válido.
07 No se puede completar el envío o recepción ASCII porque la configuración del canal se ha cerrado
mediante el cuadro de diálogo de configuración del canal.
08 No se puede completar la escritura ASCII porque ya hay una transmisión ASCII en progreso.
09 La comunicación ASCII solicitada no es compatible con la configuración actual del canal.
10 La cancelación se ha configurado; deteniendo la ejecución de la instrucción. No se necesita ninguna
acción.
11 La longitud solicitada de la cadena no es válida, es un número negativo, es mayor que 82 o es 0. Se aplica
a los bloques de funciones ARD y ARL.
13 El valor solicitado (.LEN) en el bloque de control es un número negativo o un valor mayor que el tamaño de
cadena almacenado en la cadena de origen. Se aplica a los bloques de funciones AWA y AWT.
14 El bloque de funciones ACL se ha cancelado.
16 El puerto serie no es compatible con las líneas de control RTS o CTS.

Ejemplo de diagrama de bloque de funciones AWA

128 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de puerto serie ASCII Capítulo 6

Ejemplo de diagrama de lógica de escalera AWA

Ejemplo de texto estructurado AWA

Consulte también

Instrucciones de puerto serie ASCII en la página 113

Tipos de datos AWAAWT en la página 134

AWT (escritura Escribe caracteres ASCII de una cadena de origen en un dispositivo externo.

ASCII) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 129


Capítulo 6 Instrucciones de puerto serie ASCII

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Estado de entrada de línea.
Cierto: si se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso: el bloque de instrucción está inactivo.
AWTInput Entrada AWAAWT El canal y el número (longitud) de los caracteres que se van a escribir
en el búfer. El máximo es 82.
Use el tipo de datos AWAAWT para definir los parámetros de canal,
longitud y cancelación de AWTInput.
Source Entrada ASCIILOCADD La cadena de origen que aparecía como salida de una matriz de
R caracteres por instrucción ARD o ARL.
Q Salida BOOL Indica si la escritura está en curso o completa.
Las salidas de esta instrucción se actualizan de forma asíncrona
desde la exploración del programa. La salida Q no se puede utilizar
para volver a activar la instrucción ya que IN tiene el flanco activado.
TRUE - The function block is complete.
FALSE - The function block is not complete.
NumChar Salida UINT El número de caracteres. El número de caracteres puede ser inferior a
la longitud solicitada que se transmitirá si la longitud de la cadena de
origen es menor que la longitud solicitada.
Se actualiza cuando la transmisión se completa y Q es Cierto.
Error Salida BOOL Indica la existencia de una condición de error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en códigos de error ABL.

Códigos de error ABL

Utilice esta tabla para determinar los códigos de error y la descripciones


ABL.

Código de Descripción del error


error
03 La transmisión no se puede completar porque la señal de borrar al enviar se ha perdido.
06 Se ha detectado un parámetro no válido.
07 No se puede completar el envío o recepción ASCII porque la configuración del canal se ha cerrado
mediante el cuadro de diálogo de configuración del canal.
08 No se puede completar la escritura ASCII porque ya hay una transmisión ASCII en progreso.
09 La comunicación ASCII solicitada no es compatible con la configuración actual del canal.
10 La cancelación se ha configurado; deteniendo la ejecución de la instrucción. No se necesita ninguna
acción.
11 La longitud solicitada de la cadena no es válida, es un número negativo, es mayor que 82 o es 0. Se aplica
a los bloques de funciones ARD y ARL.
13 El valor solicitado (.LEN) en el bloque de control es un número negativo o un valor mayor que el tamaño de
cadena almacenado en la cadena de origen. Se aplica a los bloques de funciones AWA y AWT.
14 El bloque de funciones ACL se ha cancelado.
16 El puerto serie no es compatible con las líneas de control RTS o CTS.

130 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de puerto serie ASCII Capítulo 6

Ejemplo de diagrama de bloque de funciones AWT

Ejemplo de diagrama de lógica de escalera AWT

Ejemplo de texto estructurado AWT

Consulte también

Instrucciones de puerto serie ASCII en la página 113

Tipos de datos AWAAWT en la página 134

Detalles de Los siguientes temas proporcionan detalles adicionales sobre parámetros


ASCII y tipos de datos estructurados.
parámetros ASCII
 Tipo de datos ABLACB
 Tipo de datos ACL
 Tipo de datos AHL ChannelSts
 Tipo de datos AHLI
 Tipo de datos ARDARL
 Tipos de datos AWAAWT

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 131


Capítulo 6 Instrucciones de puerto serie ASCII

Consulte también

Instrucciones de puerto serie ASCII en la página 113

Tipo de datos ABLACB Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos ABLACB.

Parámetro Tipo de Descripción


datos
Canal UINT Número del puerto serie:
 2 para el puerto serie integrado, o bien
 5-9 para puertos serie enchufables instalados en las ranuras 1 a 5:
 5 para la ranura 1
 6 para la ranura 2
 7 para la ranura 3
 8 para la ranura 4
 9 para la ranura 5
TriggerType USINT Representa una de las siguientes acciones:
 0: mensaje activado una vez (si IN cambia de Falso a Cierto)
 1: mensaje activado continuamente si IN es Cierto
 Otro valor: Reservado
Cancelar BOOL Si esta entrada está definida a Cierto, este bloque de función no se ejecuta.

Consulte también

Detalles de parámetros ASCII en la página 131

Tipo de datos ACL Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos ABL.

Parámetro Tipo de Descripción


datos
Canal UINT Número del puerto serie:
 2 para el puerto serie integrado, o bien
 5-9 para puertos serie enchufables instalados en las ranuras 1 a 5:
 5 para la ranura 1
 6 para la ranura 2
 7 para la ranura 3
 8 para la ranura 4
 9 para la ranura 5
RXBuffer BOOL Si es Cierto, borra el búfer de recepción y elimina los bloques de función de recepción ASCII
(ARL y ARD) de la cola ASCII.
TXBuffer BOOL Si es Cierto, borra el búfer de transmisión y elimina los bloques de función de transmisión
ASCII (AWA y AWT) de la cola ASCII.

Consulte también

Detalles de parámetros ASCII en la página 131

132 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de puerto serie ASCII Capítulo 6

Tipo de datos AHL Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos AHL ChannelSts.
ChannelSts
Parámetro Tipo de Descripción
datos
DTRstatus UINT Se utiliza para la señal DTR (reservada)
DCDstatus UINT Se utiliza para la señal DCD (bit 3 de palabra)
1 indica activo
DSRstatus UINT Se utiliza para la señal DSR (reservada)
RTSstatus UINT Se utiliza para la señal RTS (bit 1 de palabra)
1 indica activo
CTSstatus UINT Se utiliza para la señal CTS (bit 0 de palabra)
1 indica activo

Consulte también

Detalles de parámetros ASCII en la página 131

Tipo de datos AHLI en la página 133

Tipo de datos AHLI Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos AHL.

Parámetro Tipo de Descripción


datos
Canal UINT Número del puerto serie:
 2 para el puerto serie integrado, o bien
 5-9 para puertos serie enchufables instalados en las ranuras 1 a
5:
 5 para la ranura 1
 6 para la ranura 2
 7 para la ranura 3
 8 para la ranura 4
 9 para la ranura 5
ClrRts BOOL Se utiliza para restablecer la línea de control RTS.
SetRts BOOL Se utiliza para definir la línea de control RTS.
Cancelar BOOL Si esta entrada está definida a Cierto, este bloque de función no se
ejecuta.

Consulte también

Detalles de parámetros ASCII en la página 131

Tipo de datos AHL ChannelSts en la página 133

Tipo de datos ARDARL Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos ARDARL.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 133


Capítulo 6 Instrucciones de puerto serie ASCII

Parámetro Tipo de Descripción


datos
Canal UINT Número del puerto serie:
 2 para el puerto serie integrado, o bien
 5-9 para puertos serie enchufables instalados en las ranuras 1 a 5:
 5 para la ranura 1
 6 para la ranura 2
 7 para la ranura 3
 8 para la ranura 4
 9 para la ranura 5
Longitud UINT El número de caracteres que desea leer del búfer (el máximo es 82).
Cancelar BOOL Si esta entrada está definida a Cierto, este bloque de función no se ejecuta. Si ya se está
ejecutando, se cancela la operación.

Consulte también

Detalles de parámetros ASCII en la página 131

Tipos de datos Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos AWAAWT.
AWAAWT
Parámetro Tipo de Descripción
datos
Canal UINT Número del puerto serie:
 2 para el puerto serie integrado, o bien
 5-9 para puertos serie enchufables instalados en las ranuras 1 a 5:
 5 para la ranura 1
 6 para la ranura 2
 7 para la ranura 3
 8 para la ranura 4
 9 para la ranura 5
Longitud UINT Define el número de caracteres que desee escribir en el búfer (el máximo es 82).
Cuando se define la longitud en 0, AWA envía 0 bytes de datos de usuario y 2 bytes de
caracteres anexados al búfer.
Cancelar BOOL Si es Cierto, el bloque de funciones no se ejecuta. Si ya se está ejecutando, se cancela la
operación.

Consulte también

Detalles de parámetros ASCII en la página 131

134 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 7

Instrucciones binarias

Utilice las instrucciones binarias para llevar a cabo operaciones matemáticas.

Operador Descripción

AND_MASK en la página 135 Realiza un AND bit a bit entre dos valores enteros.
NOT_MASK en la página 143 Máscara de negación bit a bit de enteros, invierte un valor de
parámetro.
BSL en la página 137 Desplaza a la izquierda un bit de elemento de matriz.
BSR en la página 140 Desplaza a la derecha un bit de elemento de matriz.
OR_MASK en la página 145 Máscara OR bit a bit de enteros; activa bits.
ROL en la página 146 Con números enteros de 32 bits, gira los bits del entero hacia la
izquierda.
ROR en la página 148 Con números enteros de 32 bits, gira los bits del entero hacia la
izquierda.
SHL en la página 150 Con números enteros de 32 bits, desplaza los enteros hacia la
izquierda y coloca un 0 en el bit menos relevante.
SHR en la página 152 Con números enteros de 32 bits, desplaza los enteros hacia la
derecha y coloca un 0 en el bit más relevante.
XOR_MASK en la página 153 La máscara OR exclusiva bit a bit de enteros devuelve valores de bit
invertidos.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

AND_MASK Realiza un AND bit a bit entre dos valores enteros.

(máscara AND) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 135


Capítulo 7 Instrucciones binarias

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de entero AND máscara bit a bit.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada DINT Debe tener formato de entero.
MSK Entrada DINT Debe tener formato de entero.
AND_MASK Salida DINT Bit a bit lógica AND entre IN y MSK.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones AND_MASK

Ejemplo de diagrama de lógica de escalera AND_MASK

Ejemplo de texto estructurado AND_MASK

(* Equivalencia de ST: *)

parity := AND_MASK (xvalue, 1); (* 1 si xvalue es impar *)

result := AND_MASK (16#abc, 16#f0f); (* igual a 16#a0c *)

136 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones binarias Capítulo 7

Resultados

Consulte también

Instrucciones binarias en la página 135

BSL (desplaza un Desplaza a la izquierda un bit de elemento de matriz.

bit hacia la Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


izquierda) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Detalles de la operación:

La instrucción BSL es un proceso inmediato en transición de línea de falso a


cierto, que actualiza la salida de forma síncrona. Si Ejecutar es Cierto, el bit
del extremo izquierdo (Src + OffsetDeSrc y Longitud) se copia en el bit
Descargar y todos los bits de la matriz o los que no sean de matriz se
desplazan un bit a la izquierda. Se tienen en cuenta los valores Longitud y el
límite de 16 bits, salvo para los tipos de datos BOOL. A continuación, el bit
externo se mueve al bit 0 (Src + OffsetDeSrc) del primer elemento.

En el caso de las operaciones de habilitación del ajuste de línea, establezca la


posición de DirecDeBit en la posición del último bit o en el bit Descargar.
Un posible uso de la instrucción BSL es el seguimiento de las botellas a
través de una línea de embotellado en que cada bit representa una botella.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 137


Capítulo 7 Instrucciones binarias

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar instrucción.
Cierto: se ha detectado un flanco ascendente, se desplaza un bit una
posición a la izquierda.
 Compruebe primero las condiciones de error.
 Si Longitud = 0, el bit externo se mueve al bit Descargar. No hay
desplazamiento de bit en Scr. Se restablecen los bits Error e
IdDeError. Se define el bit Hecho.
 Si Longitud > 0 y Longitud ≤ 2048, se restablecen los bits Error e
IdDeError. Una vez completado el desplazamiento de bit, se define
el bit Hecho.
 Si Longitud > 0 y Longitud ≤ 2048, el bit situado más a la izquierda
(direccionado por Src + SrcOffset y Longitud) se copia en el bit
Descargar y todos los bits que son parte de la matriz o no son de
matriz se desplazan un bit hacia la izquierda (hasta la Longitud de
bits y el límite de 16 bits excepto para BOOL). El bit externo se
mueve al bit 0 (Src + OffsetDeSrc) del primer elemento.
Falso: no se ha detectado ningún flanco ascendente, no se habilita la
operación BSL.
Scr Entrada ANY_ELEMENTAR Dirección del (bit) Src que debe desplazarse. Tipos de datos
Y compatibles: BOOL, DWORD, INT, UINT, WORD, DINT y UDINT.
 Matrices: Establezca Scr en una dirección basada en una variable,
tal como: Origen1, Origen1[0], u Origen1[1].
 No matriciales: Establezca Scr en una dirección de variable, tal
como Origen1.
SrcOffset Entrada UINT Si OffsetDeSrc es 0, empiece a partir del primer elemento.
 Matrices: Establezca OffsetDeSrc en 0. Si se establece en
Origen1[0] u Origen1[1], se produce el error siguiente: "El offset de
origen supera el tamaño de la matriz".
 No matriciales: Se establece OffsetDeSrc en 0 o se produce el
error siguiente: "El offset de origen supera el tamaño de la matriz".
DirecDeBit Entrada BOOL Ubicación del bit desplazado en Src.
Longitud Entrada UINT Longitud contiene el número de bits del Src que deben desplazarse.
Es compatible con el desplazamiento entre elementos de matriz.
 En el caso del tipo de datos BOOL, se trata del número de
booleanos de la matriz que deben desplazarse.
 En el caso de los tipos de datos de 16 y 32 bits, los bits se
desplazan en múltiplos de 16 (como, por ejemplo, 16, 32 y 64). Si
Longitud no es un múltiplo par de 16, el número de bits
desplazados se envía al siguiente límite de 16 bits.
 Longitud se basa en el tamaño del tipo de datos. Si Longitud
supera el rango, se produce el siguiente error: "El offset de origen
supera el tamaño de la matriz". Valores de Longitud:
 BOOL: 1
 Palabra de 16 bits: 1-16
 Palabra de 32 bits: 1-32
 Palabra de 64 bits: 1-64
Listo Salida BOOL Si es Cierto, quiere decir que la operación se realizó
satisfactoriamente.
Si es Falso, se produjo una condición de error.
Descargad Salida BOOL Bit desplazado fuera de la dirección Src.
o

138 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones binarias Capítulo 7

Error Salida BOOL Cuando se produce un error, Error se establece en Cierto.


ErrorID Salida USINT Cuando se produce un error, IdDeError contiene el código de error.

Códigos de error BSL

Código de Descripción del error


error
01 Dimensión no admitida.
02 Tipo de datos no admitido.
03 La longitud de bits supera 2048.
04 El desplazamiento en origen supera el tamaño de la matriz.
05 La longitud de bits supera el tamaño de la matriz.
07 Parámetros no válidos.

Ejemplo de diagrama de bloque de funciones BSL

Ejemplo de diagrama de lógica de escalera BSL

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 139


Capítulo 7 Instrucciones binarias

Ejemplo de texto estructurado BSL

Resultados

Consulte también

Instrucciones binarias en la página 135

BSR (desplaza un Desplaza a la derecha un bit de elemento de matriz.

bit hacia la derecha) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Detalles de la operación:

La instrucción BSR es un proceso inmediato en transición de línea de falso a


cierto, que actualiza la salida de forma síncrona. Si Ejecutar es Cierto, el bit
del extremo derecho (bit 0 del elemento al que dirigen Src + OffsetDeSrc y
Longitud) se copia en el bit Descargar y todos los bits de la matriz o los que
no son de matriz se desplazan un bit a la derecha. Se tienen en cuenta los
valores Longitud y el límite de 16 bits, salvo para los tipos de datos BOOL.
A continuación, el bit externo se mueve al bit 0 (Src + OffsetDeSrc) del
primer elemento.

140 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones binarias Capítulo 7

En el caso de las operaciones de habilitación del ajuste de línea, establezca la


posición de DirecDeBit en la posición del último bit o en el bit Descargar.
Un posible uso de la instrucción BSL es el seguimiento de las botellas a
través de una línea de embotellado en que cada bit representa una botella.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar instrucción.
Cierto: se ha detectado un flanco ascendente, se desplaza un bit una
posición a la derecha.
Falso: no se ha detectado ningún flanco ascendente, no se habilita la
operación BSR.
Scr Entrada ANY_ELEMENTAR Dirección del (bit) Src que debe desplazarse. Tipos de datos
Y compatibles: BOOL, DWORD, INT, UINT, WORD, DINT y UDINT.
 Matrices: Establezca Scr en una dirección basada en una variable,
tal como: Origen1, Origen1[0], u Origen1[1].
 No matriciales: Establezca Scr en una dirección de variable, tal
como Origen1.
SrcOffset Entrada UINT Si OffsetDeSrc es 0, empiece a partir del primer elemento.
 Matrices: Establezca OffsetDeSrc en 0. Si se establece en
Origen1[0] u Origen1[1], se produce el error siguiente: "El offset de
origen supera el tamaño de la matriz".
 No matriciales: Se establece OffsetDeSrc en 0 o se produce el error
siguiente: "El offset de origen supera el tamaño de la matriz".
DirecDeBit Entrada BOOL Ubicación del bit desplazado en Src.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 141


Capítulo 7 Instrucciones binarias

Longitud Entrada UINT Longitud contiene el número de bits del Src que deben desplazarse.
Es compatible con el desplazamiento entre elementos de matriz.
 En el caso del tipo de datos BOOL, se trata del número de
booleanos de la matriz que deben desplazarse.
 En el caso de los tipos de datos de 16 y 32 bits, los bits se
desplazan en múltiplos de 16 (como, por ejemplo, 16, 32 y 64). Si
Longitud no es un múltiplo par de 16, el número de bits
desplazados se envía al siguiente límite de 16 bits.
 Longitud se basa en el tamaño del tipo de datos. Si Longitud supera
el rango, se produce el siguiente error: "El offset de origen supera el
tamaño de la matriz". Valores de Longitud:
 BOOL: 1
 Palabra de 16 bits: 1-16
 Palabra de 32 bits: 1-32
 Palabra de 64 bits: 1-64
Listo Salida BOOL Si es Cierto, quiere decir que la operación se realizó
satisfactoriamente.
Si es Falso, se produjo una condición de error.
Descargad Salida BOOL Bit desplazado fuera de la dirección Src.
o
Error Salida BOOL Cuando se produce un error, Error se establece en Cierto.
ErrorID Salida USINT Cuando se produce un error, IdDeError contiene el código de error.

Códigos de error BSR

Código de Descripción del error


error
01 Dimensión no admitida.
02 Tipo de datos no admitido.
03 La longitud de bits supera 2048.
04 El desplazamiento en origen supera el tamaño de la matriz.
05 La longitud de bits supera el tamaño de la matriz.
07 Parámetros no válidos.

Ejemplo de diagrama de bloque de funciones BSR

142 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones binarias Capítulo 7

Ejemplo de diagrama de lógica de escalera BSR

Ejemplo de texto estructurado BSR

Resultados

Consulte también

Instrucciones binarias en la página 135

NOT_MASK Máscara de negación bit a bit de enteros, invierte un valor de parámetro.

(máscara de Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


negación bit a bit) de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 143


Capítulo 7 Instrucciones binarias

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: realiza el cálculo de máscara de negación bit a bit.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada DINT Debe tener formato de entero.
NOT_MASK Salida DINT Negación bit a bit en 32 bits de IN.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de función NOT_MASK

Ejemplo de diagrama de lógica de escalera NOT_MASK

Ejemplo de texto estructurado NOT_MASK

(* Equivalencia de ST: *)

result := NOT_MASK (16#1234);

(* el resultado es 16#FFFF_EDCB *)

144 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones binarias Capítulo 7

Resultados

Consulte también

Instrucciones binarias en la página 135

OR_MASK (máscara Máscara OR bit a bit de enteros; activa bits.

OR bit a bit) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de entero OR máscara bit a bit.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada DINT Debe tener formato de entero.
MSK Entrada DINT Debe tener formato de entero.
OR_MASK Salida DINT Bit a bit lógica OR entre IN y MSK.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 145


Capítulo 7 Instrucciones binarias

Ejemplo de diagrama de bloque de funciones OR_MASK

Ejemplo de diagrama de lógica de escalera OR_MASK

Ejemplo de texto estructurado OR_MASK

(* Equivalencia de ST: *)

parity := OR_MASK (xvalue, 1); (* hace que el valor sea siempre impar*)

result := OR_MASK (16#abc, 16#f0f); (* igual a 16#fbf *)

Resultados

Consulte también

Instrucciones binarias en la página 135

ROL (girar a la Con números enteros de 32 bits, gira los bits del entero hacia la izquierda.

izquierda) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

146 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones binarias Capítulo 7

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el giro hacia la izquierda de bits del valor entero.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada DINT Valor entero.
NbR Entrada DINT Número de giros de 1 bit (en el conjunto [1..31]).
ROL Salida DINT Valor girado hacia la izquierda. Si NbR <= 0, no hay cambios.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones ROL

Ejemplo de diagrama de lógica de escalera ROL

Ejemplo de texto estructurado ROL

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 147


Capítulo 7 Instrucciones binarias

(* Equivalencia de ST: *)

result := ROL (register, 1);

(* register = 2#0100_1101_0011_0101*)

(* result = 2#1001_1010_0110_1010*)

Resultados

Consulte también

Instrucciones binarias en la página 135

ROR (girar a la Con números enteros de 32 bits, gira los bits del entero hacia la derecha.

derecha) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el giro hacia la derecha de bits del valor entero.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.

148 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones binarias Capítulo 7

IN Entrada DINT Cualquier valor entero.


NbR Entrada DINT Número de giros de 1 bit (en el conjunto [1..31]).
ROR Salida DINT Valor girado hacia la derecha. No tiene ningún efecto si NbR <= 0.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones ROR

Ejemplo de diagrama de lógica de escalera ROR

Ejemplo de texto estructurado ROR

(* Equivalencia de ST: *)

result := ROR (register, 1);

(* registro = 2#0100_1101_0011_0101 *)

(* resultado = 2#1010_0110_1001_1010 *)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 149


Capítulo 7 Instrucciones binarias

Resultados

Consulte también

Instrucciones binarias en la página 135

SHL (desplaza hacia Con números enteros de 32 bits, desplaza los enteros hacia la izquierda y
coloca un 0 en el bit menos relevante.
la izquierda)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: mueve enteros a la izquierda.
Falso: no realiza ningún movimiento de enteros.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada DINT Cualquier valor entero.
NbS Entrada DINT Número de desplazamientos de 1 bit (en el conjunto [1..31]).
SHL Salida DINT Valor desplazado hacia la izquierda. No tiene ningún efecto si NbS <= 0.
Si el valor es 0, reemplaza al bit menos significativo.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

150 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones binarias Capítulo 7

Ejemplo de diagrama de bloque de funciones SHL

Ejemplo de diagrama de lógica de escalera SHL

Ejemplo de texto estructurado SHL

(* Equivalencia de ST: *)

result := SHL (register,1);

(* registro = 2#0100_1101_0011_0101 *)

(* resultado = 2#1001_1010_0110_1010 *)

Resultados

Consulte también

Instrucciones binarias en la página 135

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 151


Capítulo 7 Instrucciones binarias

SHR (desplaza Con números enteros de 32 bits, desplaza los enteros hacia la derecha y
coloca un 0 en el bit más relevante.
hacia la derecha)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: mueve enteros hacia la derecha.
Falso: no realiza ningún movimiento de enteros.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada DINT Cualquier valor entero.
NbS Entrada DINT Número de desplazamientos de 1 bit (en el conjunto [1..31]).
SHR Salida DINT Valor desplazado hacia la derecha. No tiene ningún efecto si NbS <= 0.
Si el valor es 0, reemplaza al bit más significativo.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones SHR

Ejemplo de diagrama de lógica de escalera SHR

152 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones binarias Capítulo 7

Ejemplo de texto estructurado SHR

(* Equivalencia de ST: *)

result := SHR (register,1);

(* registro = 2#1100_1101_0011_0101 *)

(* resultado = 2#0110_0110_1001_1010 *)

Resultados

Consulte también

Instrucciones binarias en la página 135

XOR_MASK La máscara OR exclusiva bit a bit de enteros devuelve valores de bit


invertidos.
(máscara OR
exclusiva) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 153


Capítulo 7 Instrucciones binarias

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: se realiza el cálculo de máscara bit a bit OR exclusiva.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.

IN Entrada DINT Debe tener formato de entero.


MSK Entrada DINT Debe tener formato de entero.
XOR_MASK Salida DINT OR exclusiva lógica bit a bit entre IN y MSK.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones XOR_MASK

Ejemplo de diagrama de lógica de escalera XOR_MASK

Ejemplo de texto estructurado XOR_MASK

(* Equivalencia de ST: *)

crc32 := XOR_MASK (prevcrc, nextc);

result := XOR_MASK (16#012, 16#011); (* igual a 16#003 *)

154 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones binarias Capítulo 7

Resultados

Consulte también

Instrucciones binarias en la página 135

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 155


Capítulo 7 Instrucciones binarias

156 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 8

Instrucciones booleanas

Use instrucciones booleanas para determinar la salida de un valor a partir de


un cálculo lógico basado en entradas. Las salidas del módulo pueden
controlarse directamente desde el programa o independientemente mediante
el módulo utilizando las expresiones booleanas.

Función Descripción

MUX4B en la página 172 Multiplicador entre cuatro entradas BOOL, salidas de un valor de tipo
BOOL.
MUX8B en la página 169 Multiplicador entre ocho entradas BOOL, salidas de un valor de tipo
BOOL.
TTABLE en la página 166 Proporciona el valor de la salida en función de la combinación de
entradas.
Bloque de función Descripción

F_TRIG en la página 157 Detecta un flanco descendente de una variable booleana.


RS en la página 160 Restablecimiento de biestable dominante.

R_TRIG en la página 159 Detecta un flanco ascendente de una variable booleana.


SR en la página 165 Definición de biestable dominante.
Operador Descripción

AND en la página 163 Realiza una operación booleana AND entre dos o más valores.
NOT en la página 164 Convierte un valor booleano en valor negado.
XOR en la página 163 Función booleana OR exclusiva de dos valores.
OR en la página 162 Función booleana OR de dos o más valores.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

F_TRIG (Detección Detecta un flanco descendente de una variable booleana. Cada vez que se
detecta un flanco descendente, se define la salida para un ciclo más.
de flanco
descendente) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 157


Capítulo 8 Instrucciones booleanas

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
CLK Entrada BOOL Comprueba la entrada de un flanco descendente. Cualquier variable
booleana.
Cierto = no se ha detectado un flanco descendente.
Falso = se ha detectado un flanco descendente en CLK de entrada, la
salida Q se define como Cierto.
Q Salida BOOL Indica el estado de la salida Q.
Cierto = se ha detectado un flanco descendente, establece la salida Q
durante un ciclo más.
Falso = No se realiza ningún cambio a la salida Q.

Ejemplo de diagrama de bloque de funciones F_TRIG

Ejemplo de diagrama de lógica de escalera F_TRIG

Ejemplo de texto estructurado F_TRIG

(* Equivalencia de ST: F_TRIG1 es una instancia de un bloque F_TRIG*)

F_TRIG1(cmd);
nb_edge := ANY_TO_DINT(F_TRIG1.Q) + nb_edge;

158 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones booleanas Capítulo 8

Resultados

Consulte también

Instrucciones booleanas en la página 157

R_TRIG (detector de Detecta un flanco ascendente de una variable booleana.

flanco ascendente) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
CLK Entrada BOOL Cualquier variable booleana.
Cierto: se ha detectado un flanco ascendente, establecer Q en Cierto.
Falso: no se ha detectado ningún flanco ascendente, establecer Q en
falso.
Q Salida BOOL Cierto: si CLK es CIERTO
FALSO: en el resto de casos.

Ejemplo de diagrama de bloque de funciones R_TRIG

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 159


Capítulo 8 Instrucciones booleanas

Ejemplo de diagrama de lógica de escalera R_TRIG

Ejemplo de texto estructurado R_TRIG

(* Equivalencia de ST: R_TRIG1 es una instancia de un bloque R_TRIG*)

R_TRIG1(cmd);
nb_edge := ANY_TO_DINT(R_TRIG1.Q) + nb_edge;

Resultados

Consulte también

Instrucciones booleanas en la página 157

RS Establece o restablece el biestable dominante.

(establecer/restable Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


cer) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

160 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones booleanas Capítulo 8

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
SET Entrada BOOL Cierto: establece Q1 en Cierto.
RESET1 Entrada BOOL Cierto: restablece Q1 en Falso (dominante).
Q1 Salida BOOL Estado de memoria booleano.

Ejemplo de diagrama de bloque de funciones RS

Ejemplo de diagrama de lógica de escalera RS

Ejemplo de texto estructurado RS

(* Equivalencia de ST: RS1 es una instancia de un bloque RS*)

RS1(start_cmd, (stop_cmd OR alarm));


command := RS1.Q1;

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 161


Capítulo 8 Instrucciones booleanas

Resultados

Consulte también

Instrucciones booleanas en la página 157

OR Realiza una operación OR lógica de dos o más valores booleanos y devuelve


el valor booleano cierto si es cierto o, de lo contrario, devolverá falso.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
i1 Entrada BOOL
i2 Entrada BOOL
o1 Salida BOOL Función booleana OR de los términos introducidos.
Cierto: si una o más de las entradas son Cierto.
Falso: cuando las entradas son FALSO.

Ejemplo de texto estructurado OR

(* Equivalencia de ST: *)

bo10 := bi101 OR NOT (bi102);


bo5 := (bi51 OR bi52) OR bi53;

162 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones booleanas Capítulo 8

Consulte también

Instrucciones booleanas en la página 157

AND Realiza una operación booleana AND entre dos o más valores.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
i1 Entrada BOOL Valor en tipo de datos booleanos.
i2 Entrada BOOL Valor en tipo de datos booleanos.
o1 Salida BOOL Resultado de la operación booleana AND de los valores de entrada.

Ejemplo de texto estructurado AND

(* Equivalencia de ST: *)

bo10 := bi101 AND NOT (bi102);


bo5 := (bi51 AND bi52) AND bi53;

Consulte también

Instrucciones booleanas en la página 157

XOR (OR exclusiva) Realiza una operación OR exclusiva de dos valores booleanos.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 163


Capítulo 8 Instrucciones booleanas

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
i1 Entrada BOOL
i2 Entrada BOOL
o1 Salida BOOL Función booleana OR exclusiva de los dos términos introducidos.
Cierto: si una o las dos entradas son ciertas.
Falso: si ambas entradas son falsas.

Ejemplo de texto estructurado XOR

(* Equivalencia de ST: *)

bo10 := bi101 XOR NOT (bi102);


bo5 := (bi51 XOR bi52) XOR bi53;

Consulte también

Instrucciones booleanas en la página 157

NOT Convierte un valor booleano en valor negado.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
i1 Entrada BOOL Cualquier expresión compleja o valor booleano.
o1 Salida BOOL Cierto cuando IN es Falso.
Falso cuando IN es Cierto.

Ejemplo de texto estructurado NOT

(* Equivalencia de ST: *)

bo10 := NOT (bi101);

164 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones booleanas Capítulo 8

Consulte también

Instrucciones booleanas en la página 157

SR Definición de biestable dominante.

(establecer/restable Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


cer) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
SET1 Entrada BOOL Cierto: establece Q1 en Cierto (dominante).
RESET Entrada BOOL Cierto: restablece Q1 en Falso.
Q1 Salida BOOL Estado de memoria booleano.
Cierto: si SET1 es Cierto.
Falso: si RESET es Cierto.

Ejemplo de biestable dominante

Set1 Reset Q1 Result Q1


0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1

Ejemplo de diagrama de bloque de funciones SR

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 165


Capítulo 8 Instrucciones booleanas

Ejemplo de diagrama de lógica de escalera SR

Ejemplo de texto estructurado SR

(* Equivalencia de ST: SR1 es una instancia de un bloque SR*)

SR1((auto_mode & start_cmd), stop_cmd);


command := SR1.Q1;

Resultados

Consulte también

Instrucciones booleanas en la página 157

TTABLE (tabla de Proporciona el valor de la salida en función de la combinación de entradas.

verdad) Si el valor es 0xABCD, y desde In3 a In0 se corresponden con el número 7,


entonces TTABLE es el valor del bit 7 en la tabla (que es 1). El bit menos
relevante en la tabla es el bit 0.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

166 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones booleanas Capítulo 8

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Table Entrada UINT Tabla cierto-falso de función BOOLEANA.
IN0 Entrada BOOL Cualquier valor de entrada BOOL.
IN1 Entrada BOOL Cualquier valor de entrada BOOL.
IN2 Entrada BOOL Cualquier valor de entrada BOOL.
IN3 Entrada BOOL Cualquier valor de entrada BOOL.
TTABLE Salida BOOL El valor de la salida en función de la combinación de entradas.

Combinaciones de entradas TTABLE

La instrucción TTABLE tiene cuatro entradas, por lo que hay 16


combinaciones. Estas combinaciones se pueden encontrar en una tabla de
verdad; para cada combinación se puede ajustar el valor de salida. El número
de combinaciones configurables depende del número de entradas conectadas
a la función.

Ejemplo de combinaciones de tabla de verdad.

Número In3 In2 In1 In0


1 0 0 0 0
2 0 0 0 1
3 0 0 1 0
4 0 1 1 1
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
10 1 0 1 0
11 1 0 1 1
12 1 1 0 0

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 167


Capítulo 8 Instrucciones booleanas

13 1 1 0 1
14 1 1 1 0
15 1 1 1 1

Ejemplo de diagrama de bloque de funciones TTABLE

Ejemplo de diagrama de lógica de escalera TTABLE

Ejemplo de texto estructurado TTABLE

168 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones booleanas Capítulo 8

Resultados

Consulte también

Instrucciones booleanas en la página 157

MUX8B Multiplicador entre ocho entradas BOOL, salidas de un valor de tipo BOOL.

(multiplicador de 8 Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


entradas BOOL) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Selector Entrada USINT Valor entero de selector, debe estar en el conjunto [0...7].
IN0 Entrada BOOL Cualquier valor de entrada BOOL.
Cierto: cuando el selector es 0.
Falso: cuando el selector es 0.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 169


Capítulo 8 Instrucciones booleanas

IN1 Entrada BOOL Cualquier valor de entrada BOOL.


Cierto: cuando el selector es 1.
Falso: cuando el selector es 1.
IN2 Entrada BOOL Cualquier valor de entrada BOOL.
Cierto: cuando el selector es 2.
Falso: cuando el selector es 2.
IN3 Entrada BOOL Cualquier valor de entrada BOOL.
Cierto: cuando el selector es 3.
Falso: cuando el selector es 3.
IN4 Entrada BOOL Cualquier valor de entrada BOOL.
Cierto: cuando el selector es 4.
Falso: cuando el selector es 4.
IN5 Entrada BOOL Cualquier valor de entrada BOOL.
Cierto: cuando el selector es 5.
Falso: cuando el selector es 5.
IN6 Entrada BOOL Cualquier valor de entrada BOOL.
Cierto: cuando el selector es 6.
Falso: cuando el selector es 6.
IN7 Entrada BOOL Cualquier valor de entrada BOOL.
Cierto: cuando el selector es 7.
Falso: cuando el selector es 7.
MUX8B Salida BOOL Cierto: cuando:
 In0 si selector = 0
 In1 si selector = 1
 In2 si selector = 2
 In3 si selector = 3
 In4 si selector = 4
 In5 si selector = 5
 In6 si selector = 6
 In7 si selector = 7

Falso: para el resto de los valores del selector.

Ejemplo de diagrama de bloque de función MUX8B

170 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones booleanas Capítulo 8

Ejemplo de diagrama de lógica de escalera MUX8B

Ejemplo de texto estructurado MUX8B

(* Equivalencia de ST: *)

range := MUX8 (choice, 1, 5, 10, 50, 100, 500, 1000, 5000);

(* seleccione entre 8 intervalos predefinidos; por ejemplo, si la selección es


3, el intervalo será 50 *)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 171


Capítulo 8 Instrucciones booleanas

Resultados

Consulte también

Instrucciones booleanas en la página 157

MUX4B Multiplicador entre cuatro entradas BOOL, salidas de un valor de tipo


BOOL.
(multiplicador de 4
entradas BOOL) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Selector Entrada USINT Valor entero de selector, debe estar en el conjunto [0...3].
IN0 Entrada BOOL Cualquier valor de entrada BOOL.
Cierto: cuando el selector es 0.
Falso: cuando el selector es 0.
IN1 Entrada BOOL Cualquier valor de entrada BOOL.
Cierto: cuando el selector es 1.
Falso: cuando el selector es 1.

172 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones booleanas Capítulo 8

IN2 Entrada BOOL Cualquier valor de entrada BOOL.


Cierto: cuando el selector es 2.
Falso: cuando el selector es 2.
IN3 Entrada BOOL Cualquier valor de entrada BOOL.
Cierto: cuando el selector es 3.
Falso: cuando el selector es 3.
MUX4B Salida BOOL Cierto: cuando:
 In0 si selector = 0
 In1 si selector = 1
 In2 si selector = 2
 In3 si selector = 3

Falso: para el resto de los valores del selector.

Ejemplo de diagrama de bloque de función MUX4B

Ejemplo de diagrama de lógica de escalera MUX4B

Ejemplo de texto estructurado MUX4B

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 173


Capítulo 8 Instrucciones booleanas

(* Equivalencia de ST: *)

range := MUX4 (choice, 1, 10, 100, 1000);

(* seleccione entre 4 intervalos predefinidos; por ejemplo, si la selección es


1, el intervalo será 10 *)

Resultados

Consulte también

Instrucciones booleanas en la página 157

174 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 9

Instrucciones de comunicación

Use las instrucciones de comunicación para leer, escribir, comparar y


convertir cadenas de comunicación.

Bloque de función Descripción

MSG_CIPGENERIC en la página Envía un mensaje CIP explícito genérico.


175
MSG_CIPSYMBOLIC en la Envía un mensaje CIP explícito simbólico.
página 185
MSG_MODBUS en la página 190 Envía un mensaje Modbus.
MSG_MODBUS2 en la página Envía un mensaje MODBUS/TCP a través de un canal Ethernet.
196

Consulte también

Compatibilidad con protocolos de comunicación en la página 237

Configurar valores de datos de objeto para mensajes explícitos en la


página 210

Conjunto de instrucciones en orden alfabético en la página 23

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Utilizar los bloques de funciones de comunicación (mensajes) en la


página 210

MSG_CIPGENERIC Envía un mensaje explícito de protocolo industrial común (CIP) a través de


un canal Ethernet o de un puerto serie.
(mensaje genérico
de protocolo En una exploración puede procesarse un máximo de cuatro solicitudes de
mensaje por canal. En el caso de programas de diagrama de lógica de
industrial común) escalera, las solicitudes de mensaje se ejecutan al final de una exploración de
lógica de escalera.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 175


Capítulo 9 Instrucciones de comunicación

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Estado de entrada de línea.
Cierto: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso: no se ha detectado un flanco ascendente, inactivo.
CtrlCfg Entrada CIPCONTROLC Configuración del control de ejecución del bloque de instrucciones.
FG Utilice los parámetros de tipo de datos CIPCONTROLCFG para
definir CtrlCfg.
AppCfg Entrada CIPAPPCFG Configuración del servicio CIP y de la ruta de aplicación (EPATH).
Utilice los parámetros de tipo de datos CIPAPPCFG para definir
AppCfg.
TargetCfg Entrada CIPTARGETCF Configuración del dispositivo de destino.
G Utilice los parámetros de tipo de datos CIPTARGETCFG para definir
TargetCfg.
ReqData Entrada USINT[1..1] Datos de la solicitud de mensaje CIP. El tamaño de la matriz debe
ser superior al tamaño de ReqLength.
ReqLength Entrada UINT Longitud de datos de la solicitud de mensaje CIP:
 0 - 490
ResData Entrada USINT[1..1] Datos de la respuesta de mensaje CIP. El tamaño de la matriz debe
ser superior al tamaño de ReqLength.
Cuando se activa o reactiva un MSG, se borran los datos de la matriz
ResData.
Q Salida BOOL Las salidas de esta instrucción se actualizan de forma asíncrona
desde la exploración del programa. La salida Q no se puede utilizar
para volver a activar la instrucción ya que IN tiene el flanco activado.
Cierto: la instrucción MSG ha finalizado correctamente.
Falso: la instrucción MSG no se finaliza.
Estado Salida CIPSTATUS El estado del bloque de instrucción.
Cuando se activa o reactiva un MSG, se restablecen todos los
elementos de Status.
La salida de estado está definida en el tipo de datos CIPSTATUS.

176 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

ResLength Salida UINT Longitud de datos de la respuesta de mensaje CIP:


 0 - 490
Cuando se activa o reactiva un MSG, ResLength se restablece en 0.

Ejemplo de diagrama de bloque de funciones MSG_CIPGENERIC

Ejemplo de diagrama de lógica de escalera MSG_CIPGENERIC

Ejemplo de texto estructurado MSG_CIPGENERIC

Consulte también

Tipo de datos CIPCONTROLCFG en la página 178

Tipo de datos CIPAPPCFG en la página 178

Tipo de datos CIPTARGETCFG en la página 182

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 177


Capítulo 9 Instrucciones de comunicación

Tipo de datos CIPSTATUS en la página 179

Ejemplo: Cómo crear un programa de mensajería MSG_CIPGENERIC


para leer datos de un controlador en la página 213

Tipo de datos Utilice esta tabla para definir los valores de los parámetros para el tipo de
datos CIPAPPCFG.
CIPAPPCFG
Parámetro Tipo de datos Descripción

Servicio USINT Código de servicio:


1–127
Clase UINT Valor de ID de clase del segmento lógico:
1–65.535
Instancia UDINT Valor de ID de instancia del segmento lógico:
0–4.294.967.295
Atributo UINT Valor de ID de atributo del segmento lógico:
1-65.535, 0: no se utiliza ningún ID de atributo
MemberCnt USINT Recuento de ID de miembro. Valores máximos de ID
de miembro utilizados:
1-3, 0: no se utiliza ningún ID de miembro
MemberId UINT[3] Valores de ID de miembro:
0 - 65535

Consulte también

MSG_CIPSYMBOLIC en la página 185

MSG_CIPGENERIC en la página 175

Tipo de datos Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos CIPCONTROLCFG.
CIPCONTROLCFG
Parámetro Tipo de Descripción
datos
Cancelar BOOL Cierto: se cancela la ejecución del bloque de función.
Se desactiva el bit cuando se habilita el mensaje.
Si se establece el parámetro Cancel y el mensaje está habilitado (bit EN activado) pero no
ha finalizado (bit DN desactivado), se cancela la ejecución del mensaje y se activa el bit
ER.
TriggerType USINT Representa una de las siguientes acciones:
 0: mensaje activado una vez (si IN cambia de Falso a Cierto)
 De 1 a 65.535: Valor del activador cíclico en milisegundos. El MSG se activa se forma
periódica si IN es Cierto. Establezca el valor en 1 para activar el MSG lo más rápido
posible.
StrMode USINT Reservado para uso futuro.

178 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Activación de mensajes CIP

Los mensajes CIP se pueden activar de forma periódica estableciendo un


valor distinto de cero para el parámetro de tipo de activador.

Utilice esta tabla para definir las acciones de los parámetros de Tipo de
disparador.

Acción Resultados
Se habilita el mensaje Se inicia el temporizador del activador
Caduca el temporizador del activador antes de que Se activa el mensaje inmediatamente en el siguiente ciclo de
se complete el mensaje exploración de lógica de escalera
Se completa el mensaje antes de que caduque el Se activa el mensaje cuando caduca el temporizador del activador
temporizador del activador

Ejemplo: activación de mensajes

En el siguiente ejemplo, el valor de tipo de activador está establecido en 100.

Consulte también

MSG_CIPSYMBOLIC en la página 185

MSG_CIPGENERIC en la página 175

CIPSTATUS data type Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos CIPSTATUS.

Parámetro Tipo de datos Descripción

Error BOOL Este bit se establece en Cierto cuando la ejecución del bloque de
funciones detecta una condición de error.
ErrorID UINT Valor del código de error.
Los IdDeError se definen en los códigos de error CIPSTATUS.
SubErrorID UINT Valor del código de suberror.
Los IdDeSubError se definen en los códigos de error CIPSTATUS.
ExtErrorID UINT Valor del código de error del estado extendido de CIP.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 179


Capítulo 9 Instrucciones de comunicación

StatusBits UINT Este parámetro se puede utilizar para comprobar los bits de control:
 Bit 0: EN: Enable
 Bit 1: EW: Enable Wait
 Bit 2: ST: Start
 Bit 3: ER: Error
 Bit 4: DN: Done
 Bit 5: CIPCONN: Cierre de conexión CIP
 Bit 6: EIPSESS: Cierre de sesión EIP
 Los otros bits están reservados.
Los BitsDeEstado se definen para los bits de estado CIPSTATUS.

Consulte también

Códigos de error CIPSTATUS en la página 181

Bits de estado CIPSTATUS en la página 180

MSG_CIPSYMBOLIC en la página 185

MSG_CIPGENERIC en la página 175

Bits de estado CIPSTATUS Los bits de estado CIPSTATUS se activan en función del estado de la
ejecución de mensajes, los búferes de comunicación y las condiciones de
peldaño.

- - - - - - - - - - - 4 3 2 1 0

Bit Nombre Descripción Comportamiento


0 EN Enable Se activa cuando el peldaño cambia a Cierto y permanece activo hasta que se activa
el bit DN o el bit ER y el peldaño cambia a Falso.
1 EW Enable Se activa cuando el búfer de comunicación se asigna para la solicitud del mensaje. Se
Waiting desactiva cuando se activa el bit ST.
2 ST Inic Se activa cuando el mensaje se ha transmitido y espera una respuesta. Se desactiva
cuando se activa el bit DN.
3 ER Error Se activa cuando se produce un error en la transmisión del mensaje. Se escribe un
código de error en ErrorID. El bit ER y los valores de código de error se desactivan la
próxima vez que el peldaño cambia de Falso a Cierto.
4 DN Done Se activa cuando el mensaje se transmite correctamente. El bit DN se desactiva la
próxima vez que el peldaño cambia de Falso a Cierto.
Cuando se activa el bit Done, se desactivan todos los otros bits para indicar que el
MSG se completó correctamente. Cuando se detecta un error y se activa el bit Error,
no se desactivan los otros bits de estado (EN/EW/ST).
5 CIPCONN Done Se establece cuando se cierra la conexión CIP para la comunicación. El bit CIPCONN
se aplica cuando ConnClose es Cierto, para el resto de los casos el CIPCONN bit es
Falso. El bit CIPCONN también se utiliza para Serie, Ethernet y USB.
6 EIPSESS Done Se establece cuando se cierra la sesión CIP encapsulado para la comunicación. El bit
EIPSESS es aplicable cuando ConnClose es Cierto, para el resto de casos el
EIPSESS bit es Falso. Este bit se utiliza únicamente para Ethernet.

180 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Consulte también

CIPSTATUS data type en la página 179

Códigos de error Utilice esta tabla para determinar los valores de parámetro que se muestran
CIPSTATUS en los campos ErrorID y SubErrorID del parámetro CIPSTATUS cuando se
activa el bit ER.

Código SubErrorID Descripción del código de error


de
ErrorID
33 Errores relacionados con la configuración de parámetros
32 Número de canal incorrecto.

36 Tipo de conexión CIP no compatible.


40 Tipo de datos CIP simbólico no compatible.
41 Nombre de símbolo CIP no válido.
43 Recuento de MemberID o valor de clase CIP no compatible.
48 El tamaño de la matriz de datos de entrada del bloque de instrucciones no es suficiente.
49 Ruta de destino no válida.
50 Código de servicio incorrecto.
51 El tamaño de la matriz de datos de transmisión del bloque de instrucciones es demasiado
grande para la comunicación CIP.
La longitud máxima de los datos de usuario que se transmitirán varía según la configuración
del mensaje. Si la carga total del mensaje CIP (incluida la sobrecarga de datos de usuario y
mensaje CIP) supera los 504 bytes, se notifica un error 0x21 (subError 0x33).
52 Valor de tipo de segmento erróneo.
53 Valor de tiempo de espera UCCM erróneo.
Si el valor de tiempo de espera de encapsulado es menor que el tiempo de espera UCCM o la
diferencia entre el tiempo de espera de encapsulado y el tiempo de espera UCCM es menor o
igual que un segundo, se notifica un error 0x21 (subError 0x35).
54 Valor de tiempo de espera conectado erróneo.
Si el valor de tiempo de espera de encapsulado es menor que el tiempo de espera de mensaje
CONECTADO o la diferencia entre el primero y el segundo es menor o igual que un segundo,
se notifica un error 0x21 (subError 0x36).
55 Errores relacionados con el tiempo de espera
112 El mensaje superó el tiempo de espera mientras aguardaba en la cola de espera de mensajes.
113 El mensaje superó el tiempo de espera mientras aguardaba a que se estableciera la conexión
con la capa del vínculo.
114 El mensaje superó el tiempo de espera mientras aguardaba a transmitir a la capa del vínculo.
115 El mensaje superó el tiempo de espera mientras aguardaba una respuesta desde la capa del
vínculo.
69 Errores relacionados con el formato de la respuesta del servidor
65 La respuesta del servidor no coincide con la solicitud.
68 El tipo de datos de la respuesta del servidor no es válido o no se admite.
(MSG_CIPSYMBOLIC).
208 No se ha configurado ninguna dirección IP para la red.
209 Se utilizó el número máximo de conexiones y ya no hay ninguna disponible.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 181


Capítulo 9 Instrucciones de comunicación

Código SubErrorID Descripción del código de error


de
ErrorID
210 Dirección de nodo o de Internet no válida.
217 El usuario canceló la ejecución del mensaje. (El parámetro Cancel se estableció en Cierto).
218 No hay espacio disponible en el búfer de red.
222 Reservado.
223 La dirección del vínculo no está disponible. Un cambio de configuración de TCP/IP o Ethernet está en curso.
224 Código de error de respuesta CIP. SubErrorID especifica el estado de CIP y ExtErrorID especifica el valor del
estado extendido de CIP. Consulte la especificación de CIP para conocer los valores de código de error
posibles.
255 Está apagado el canal o se encuentra en curso una reconfiguración. Se genera el código de error
inmediatamente después del encendido hasta que se establezca una conexión. Este es el comportamiento
normal.
También puede suceder en algunas de las situaciones siguientes:
 Se desconecta un cable Ethernet
 No se puede detectar una dirección IP
 Está presente un puerto serie enchufable pero no está configurado

Consulte también

CIPSTATUS data type en la página 179

Tipo de datos Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos CIPTARGETCFG.
CIPTARGETCFG
Parámetro Tipo de datos Descripción
Ruta STRING[80] Ruta del destino. Se puede especificar un máximo de dos saltos. La
sintaxis de la ruta es la siguiente:
 {"<puerto>,<dirección de nodo/ranura>"}2
CipConnMode USINT Tipo de conexión CIP.
 0: no conectado (predeterminado)
 1: conexión de clase 3
UcmmTimeout UDINT Tiempo de espera de mensaje no conectado (en milisegundos). El
tiempo que se esperará una respuesta para mensajes no
conectados, incluido el establecimiento de conexión para mensajes
conectados.
 Los valores válidos son 250-10.000 ms.
 Set to 0 to use the default value of 3000 ms (3 seconds).
 Un valor inferior a 250 ms se establecerá en 250 ms (mínimo).
 Un valor superior a 10.000 ms se establecerá en 10.000 ms
(máximo).

182 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Parámetro Tipo de datos Descripción


ConnMsgTimeout UDINT Tiempo de espera de conexión de clase 3 (en milisegundos). El
tiempo que se esperará una respuesta para mensajes conectados.
La conexión se cierra cuando se agota el tiempo de espera.
 Los valores válidos son 800-10.000 ms.
 Establézcalo en 0 para utilizar el valor predeterminado de 10.000
(10 segundos).
 Un valor inferior a 800 se establecerá en 800 ms (mínimo).
 Un valor superior a 10.000 ms se establecerá en 10.000 ms
(máximo).
ConnClose BOOL Comportamiento de cierre de conexión:
 Cierto: cerrar la conexión cuando se completa el mensaje.
 Falso: no cerrar la conexión cuando se completa el mensaje
(predeterminado).

Consulte también

Conexiones de mensaje CIP/EIP en la página 184

Temporizadores de tiempo de espera de mensajes CIP en la página 185

MSG_CIPSYMBOLIC en la página 185

MSG_CIPGENERIC en la página 175

Ruta de destino de mensajes CIP en la página 183

Ruta de destino de La ruta de destino para mensajes CIP contiene parámetros que determinan la
mensajes CIP ruta y el destino del mensaje CIP.

El parámetro de cadena de ruta de destino utiliza la siguiente sintaxis:

 "<puerto local>, <dirección del primer destino>, [<puerto local del


primer destino>, <dirección del segundo destino>]"

El primer salto debe estar presente; el segundo es opcional.

Elemento de cadena Descripción


Puerto local Puerto local utilizado para enviar el mensaje. Debe ser un puerto
serie CIP o Ethernet/IP activo (no se admiten puertos USB).
Dirección del primer Dirección de destino del primer salto.
destino  Para EIP, se debe especificar la dirección IP de destino. Esta
debe ser una dirección de unidifusión y no puede ser 0, de
multidifusión, de difusión, local ni de bucle invertido
(127.x.x.x).
 Para serie CIP, se debe especificar la dirección de nodo de
destino. El valor admitido es 1.
Puerto local del primer Puerto local utilizado para enviar el mensaje.
destino
Dirección del segundo Dirección de destino del segundo salto.
destino

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 183


Capítulo 9 Instrucciones de comunicación

Ejemplo de ruta de destino

En la siguiente tabla se enumeran valores de ejemplo utilizados en una


cadena de ruta de destino y se describen los resultados de cada cadena.

Elemento de cadena Descripción


0,0 El dispositivo de destino es el dispositivo local.
6,1 A través del puerto 6 (puerto serie UPM Micro830), se alcanza el
nodo en 1.
4,192.168.1.100 A través del puerto 4 (puerto Ethernet integrado Micro850), se
alcanza el nodo en 192.168.1.100.
4,192.168.1.100,1,0 A través del puerto 4 (puerto Ethernet integrado Micro850), se
alcanza el nodo en 192.168.0.100 (módulo ENET de Logix).
Desde el módulo ENET, a través del puerto del backplane
(puerto 1), se alcanza el controlador Logix en la ranura 0.

Consulte también

Tipo de datos CIPTARGETCFG en la página 182

Conexiones de mensaje Se admite un máximo de 16 conexiones CIP (clase 3) y 16 conexiones EIP


CIP/EIP para la ejecución de mensajes de clientes. La siguiente tabla describe el
comportamiento de las conexiones CIP/EIP.

Escenario Resultados
La solicitud de mensaje está habilitada y Si no existe una conexión con el destino, se establece
CipConnMode=1. una conexión CIP.
Si ya existe una conexión con el destino, se utiliza la
conexión CIP existente.

La solicitud de mensaje está habilitada, Si no existe una conexión EIP con el destino, se
CipConnMode=1 y el puerto local del mensaje establece una conexión EIP antes de establecer una
es Ethernet. conexión CIP.
La solicitud de mensaje está habilitada, Si no existe una conexión EIP con el destino, se
CipConnMode=0 y el puerto local del mensaje establece una conexión EIP.
es Ethernet.
Se completa la ejecución del mensaje y Si solo hay una conexión con el destino, se cierra la
ConnClose se configura como Cierto. conexión.
Si hay más de una conexión con el destino, la conexión
se cierra cuando se completa la ejecución del último
mensaje.
Cuando se cierra una conexión CIP, se cierran también
las conexiones EIP asociadas.
Si hay más de una conexión CIP que utiliza la misma
conexión EIP, la conexión EIP se cerrará una vez
cerradas todas las conexiones CIP asociadas.
Cuando ConnClose es Cierto, se cierran la Si más de un mensaje comparte la misma conexión, la
conexión de mensaje y la sesión EIP al terminar conexión se cierra al terminar el último mensaje.
la ejecución del mensaje.

184 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Escenario Resultados
Una conexión CIP o EIP que no está asociada Consulte objetos TCP/IP CIP volumen II de
con ningún mensaje activo se cierra si está especificación CIP para obtener información relacionada
inactivo durante x segundos. con el servicio CIP establecido.
Donde x es un valor de tiempo de espera de
inactividad de encapsulado configurable que
puede configurarse mediante el servicio CIP
establecido.
Se completa la ejecución del mensaje y La conexión no se cierra.
ConnClose se configura como Falso.
La conexión no se asocia a ningún mensaje La conexión se cierra.
activo y permanece inactiva la cantidad de
tiempo especificada en el parámetro
ConnTimeOut.
El controlador pasa de un modo de ejecución Se fuerza el cierre de todas las conexiones activas.
(Ejecución, Ejecución remota, Exploración única
de prueba remota y Peldaño único remoto) a un
modo de no ejecución.

Consulte también

Tipo de datos CIPTARGETCFG en la página 182

Temporizadores de tiempo En la siguiente tabla se describe el comportamiento de los temporizadores de


de espera de mensajes CIP los parámetros de tiempo de espera CIPTARGETCFG (UcmmTimeout y
ConnMsgTimeout) en función del estado y las solicitudes de mensajes.

Acción Resultados
Se habilita el mensaje Se activa el temporizador
UcmmTimeout
Se solicita la conexión Se activa el temporizador
ConnMsgTimeout
El temporizador Se deshabilita el temporizador
ConnMsgTimeout está activo UcmmTimeout
Se completa la solicitud de Se reactiva el temporizador
conexión UcmmTimeout

Consulte también

Tipo de datos CIPTARGETCFG en la página 182

MSG_CIPSYMBOLI Envía un mensaje simbólico de protocolo industrial común (CIP) a través de


un canal Ethernet o de un puerto serie.
C (mensaje
simbólico de Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.
protocolo industrial
común)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 185


Capítulo 9 Instrucciones de comunicación

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Operación MSG_CIPSYMBOLIC

Cuando el bloque de funciones está habilitado, los búferes de recepción de


las operaciones Read se borran en el extremo de incremento de Enable.

Argumentos

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Estado de entrada de línea.
Cierto: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso: no se ha detectado un flanco ascendente, inactivo.
CtrlCfg Entrada CIPCONTROLCFG Configuración del control de ejecución del bloque de instrucciones.
Utilice los parámetros de tipo de datos CIPCONTROLCFG para
definir CtrlCfg.
SymbolicCfg Entrada CIPSYMBOLICCF Información para lectura y escritura del símbolo.
G
TargetCfg Entrada CIPTARGETCFG Configuración del dispositivo de destino.
Utilice los parámetros de tipo de datos CIPTARGETCFG para
definir TargetCfg.
Datos Entrada USINT[490] El comando de lectura almacena los datos devueltos desde el
servidor.
El comando de escritura almacena en búfer los datos que se van a
enviar al servidor.
Cuando se activa o reactiva un MSG, Data se borra para el
comando Read de MSG.
Q Salida BOOL Las salidas de esta instrucción se actualizan de forma asíncrona
desde la exploración del programa. La salida Q no se puede
utilizar para volver a activar la instrucción ya que IN tiene el flanco
activado.
Cierto: la instrucción MSG ha finalizado correctamente.
Falso: la instrucción MSG no se finaliza.
Estado Salida CIPSTATUS Estado de ejecución de bloque de función
Cuando se activa o reactiva un MSG, se restablecen todos los
elementos de Status.
La salida de estado está definida en el tipo de datos CIPSTATUS.

186 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

DataLength Salida UDINT Número de bytes de datos leídos. Para el servicio de escritura es
0.
Cuando se activa o reactiva un MSG, DataLength se restablece en
0 para el comando Read de MSG.

Ejemplo de diagrama de bloque de funciones MSG_CIPSYMBOLIC

Ejemplo de diagrama de lógica de escalera MSG_CIPSYMBOLIC

Ejemplo de texto estructurado MSG_CIPSYMBOLIC

Consulte también

Tipo de datos CIPCONTROLCFG en la página 178

Tipo de datos CIPTARGETCFG en la página 182

Tipo de datos CIPSYMBOLICCFG en la página 188

Instrucciones de comunicación en la página 175

Ejemplo: Cómo crear un programa de mensajería


MSG_CIPSYMBOLIC para escribir un valor en una variable en la
página 223

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 187


Capítulo 9 Instrucciones de comunicación

Tipo de datos Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos CIPSYMBOLICCFG.
CIPSYMBOLICCFG
Parámetro Tipo de Descripción
datos
Servicio USINT Código de servicio:
 0: lectura (predeterminado)
 1: escritura
Símbolo CADENA Nombre de la variable para lectura/escritura.
 El máximo es de 80 caracteres.
 El campo no puede estar vacío.
Sintaxis de símbolo definida en sintaxis de lectura/escritura simbólica.
Recuento UINT Número de elementos de variable para lectura/escritura:
 Los valores válidos son 1 - 490
 Se utiliza 1 si el valor se establece en 0.
Tipo Definido por Tipo de datos definido por el usuario para la variable de destino.
el usuario Tipo definido en compatibilidad de tipos de datos simbólicos.
Offset USINT Reservado para uso futuro.
Un desplazamiento de bytes de la variable de lectura/escritura que se
utiliza para la lectura/escritura de una variable de gran tamaño que no
puede procesarse en un solo mensaje.
 0–0xFF
Reservado para uso futuro.

Compatibilidad con tipos de datos simbólicos

Utilice esta tabla para determinar los tipos de datos que


MSG_CIPSYMBOLIC admite.

Tipo de Valor del tipo de datos Descripción


datos (hexadecimal)

BOOL 193 (0xC1) Booleano lógico con los valores Cierto (1) o Falso (0)
SINT 194 (0xC2) Valor entero con signo de 8 bits
INT 195 (0xC3) Valor entero con signo de 16 bits
DINT 196 (0xC4) Valor entero con signo de 32 bits
LINT 197 (0xC5) Valor entero con signo de 64 bits
USINT 198 (0xC6) Valor entero sin signo de 8 bits
UINT 199 (0xC7) Valor entero sin signo de 16 bits
UDINT 200 (0xC8) Valor entero sin signo de 32 bits
ULINT 201 (0xC9) Valor entero sin signo de 64 bits
REAL 202 (0xCA) Valor de coma flotante de 32 bits
LREAL 203 (0xCB) Valor de coma flotante de 64 bits
CADENA 218 (0xDA) Cadena de caracteres

188 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Consulte también

MSG_CIPSYMBOLIC en la página 185

Sintaxis de lectura/escritura simbólica en la página 189

Sintaxis de Sintaxis define las combinaciones de símbolos de un bloque de instrucción


lectura/escritura simbólica de lectura/escritura válido.
Nombres de símbolo válidos

Para ser válido, cada nombre de símbolo debe cumplir los siguientes
requisitos:

 Empezar con una letra o un carácter de subrayado, seguidos de letras,


dígitos o un solo carácter de subrayado.
 Tener como máximo 40 caracteres.
 No contener dos caracteres de subrayado consecutivos.
 Utilizar los caracteres especiales [ ] . , como separadores.

Sintaxis de los símbolos

Utilice esta tabla para ayudar a determinar la sintaxis válida para los
símbolos. Solo se admiten variables globales.

Símbolo Sintaxis Ejemplo


Variable PROGRAM:<nombre de programa>,<nombre PROGRAM:POU1.MyTag
de símbolo>
Matriz <nombre de símbolo>[dim3, dim2, dim1] MyTag1[0]
(La dimensión máxima admitida es 3). MyTag2[3,6]
MyTag3[1,0,4]
Estructura <nombre de símbolo>.<nombre de símbolo de MyTag4.time.year
campo de estruct.> MyTag5.local.time[1].year

Consulte también

MSG_CIPSYMBOLIC en la página 185

Tipo de datos CIPSYMBOLICCFG en la página 188

Tamaño admitido de Para los controladores Micro830 y Micro850, el puerto serie integrado y los
puertos serie enchufables pueden admitir comunicación serie CIP. El paquete
paquete de datos para de datos de comunicación serie CIP incluye datos de usuario y encabezado
la función serie CIP de paquete CIP.

Al trabajar como cliente serie CIP, los puertos serie de Micro830/Micro850


pueden admitir un máximo de 490 bytes de datos de usuario de
lectura/escritura. Esta especificación se aplica a los paquetes de datos serie
CIP con un tamaño de encabezado de paquete mínimo. Cuando el tamaño de

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 189


Capítulo 9 Instrucciones de comunicación

un encabezado de paquete es mayor que el tamaño de encabezado de paquete


mínimo, el tamaño máximo de datos de usuario que puede admitir el cliente
CIP es inferior a 490 bytes. Si el tamaño del paquete de datos es mayor que
el tamaño de datos máximo admitido por el cliente CIP, el bloque de
funciones informa de un error (0x21) y un suberror (0x33).

Al trabajar como servidor serie CIP, los puertos serie de Micro830 y


Micro850 pueden admitir un mínimo de 255 bytes de datos de usuario de
lectura/escritura. Esta especificación se aplica a los paquetes de datos serie
CIP con un tamaño de encabezado de paquete máximo. Cuando el tamaño de
un encabezado de paquete CIP es menor que el tamaño de encabezado de
paquete máximo, el cliente CIP puede admitir un tamaño de paquete de datos
mayor que la especificación mínima (es decir, superior a 255 bytes). No
obstante, si el tamaño de datos de usuario es mayor que el tamaño de datos
máximo admitido por la función del servidor CIP, el paquete de datos CIP
puede eliminarse y el cliente agotará el tiempo de espera.

Importante: Para la función de servidor serie CIP, se recomienda no leer/escribir más de 255
bytes de datos de usuario en un solo mensaje CIP.

Consulte también

MSG_CIPSYMBOLIC en la página 185

MSG_MODBUS Envía un mensaje Modbus a través de un puerto serie.

(mensaje modbus) Detalles de la operación:

 En una exploración puede procesarse un máximo de cuatro solicitudes


de mensaje por canal. En el caso de programas de diagrama de lógica
de escalera, las solicitudes de mensaje se ejecutan al final de una
exploración de lógica de escalera.
 Si el activador se ha definido como continuo, los códigos de error
también se borrarán de forma continua. Para ver los códigos de error,
agregue un peldaño antes de la instrucción MSG_MODBUS.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

190 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Estado de entrada de línea.
Cierto: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso: no se ha detectado un flanco ascendente, no iniciado.
Cancelar Entrada BOOL Cierto: cancela la ejecución del bloque de función.
Falso: si IN es Cierto.
LocalCfg Entrada MODBUSLOCPARA Define la entrada de la estructura (dispositivo local).
Define la estructura de entrada para el dispositivo local utilizando el tipo
de datos MODBUSLOCPARA.
TargetCfg Entrada MODBUSTARPARA Define la entrada de la estructura (dispositivo de destino).
Define la estructura de entrada para el dispositivo de destino mediante
el tipo de datos MODBUSTARPARA.
LocalAddr Entrada MODBUSLOCADDR MODBUSLOCADDR es una matriz de 125 palabras que utilizan los
comandos Read para almacenar los datos (1-125 palabras) que
devuelve el esclavo Modbus y los comandos Write para almacenar en
búfer los datos (1-125 palabras) que se enviarán al dispositivo esclavo
Modbus.
Q Salida BOOL Las salidas de esta instrucción se actualizan de forma asíncrona desde
la exploración del programa. La salida Q no se puede utilizar para volver
a activar la instrucción ya que IN tiene el flanco activado.
Cierto: la instrucción MSG ha finalizado correctamente.
Falso: la instrucción MSG no se finaliza.

Error Salida BOOL Indica que se ha producido un error.


CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta instrucción
se definen en códigos de error MSG_MODBUS.

Códigos de error de MSG_MODBUS

Esta tabla describe los códigos de error de MSG_MODBUS.

Código de Descripción del error


error
3 El valor de TriggerType se ha modificado de 2 - 255.
20 El driver de comunicación local no es compatible con la instrucción de MSG.
21 Se ha detectado un error de parámetro de configuración del canal local.
22 La dirección de destino o del puente local es superior a la dirección del nodo máximo.

33 Se ha detectado un parámetro de archivo NSG incorrecto.


54 Un módem perdido.
55 El mensaje de ha sobrepasado el tiempo de espera del procesador local. La capa del
vínculo ha superado el tiempo de espera.
217 El usuario ha cancelado el mensaje.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 191


Capítulo 9 Instrucciones de comunicación

Código de Descripción del error


error
129 Una función no válida.
130 Una dirección de datos no válida.
131 Un valor de datos no válido.
132 Un error en el dispositivo esclavo.
133 Confirmación.
134 El dispositivo esclavo está ocupado.
135 Confirmación negativa.
136 Un error de paridad de memoria.
137 Una respuesta no estándar.
255 El canal se ha cerrado.

Ejemplo de diagrama de bloque de funciones MSG_MODBUS

Ejemplo de diagrama de lógica de escalera MSG_MODBUS

Ejemplo de texto estructurado MSG_MODBUS

192 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Consulte también

Instrucciones de comunicación en la página 175

Ejemplo: Cómo configurar una comunicación de Modbus para leer una


unidad y escribir en ella en la página 233

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Tipo de datos MODBUSTARPARA en la página 196

Tipo de datos MODBUSLOCPARA en la página 193

MODBUSLOCPARA Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos MODBUSLOCPARA.
data type
Parámetro Tipo de Descripción
datos
Canal UINT Número de puerto de serie de Micro800 PLC:
 2 para el puerto serie integrado, o bien
 5-9 para módulos enchufables de puerto serie instalados en las ranuras
1a
 5 para la ranura 1
 6 para la ranura 2
 7 para la ranura 3
 8 para la ranura 4
 9 para la ranura 5
TriggerType USINT Representa una de las siguientes acciones:
 0: mensaje activado una vez (si IN cambia de Falso a Cierto)
 1: mensaje activado continuamente si IN es Cierto
 Otro valor: Reservado

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 193


Capítulo 9 Instrucciones de comunicación

Parámetro Tipo de Descripción


datos
Cmd USINT Representa una de las siguientes acciones:
 01: Lectura de estado de bobina (0xxxx)
 02: Lectura de estado de entrada (1xxxx)
 03: Lectura de Holding Registers (4xxxx)
 04: Lectura de registros de entrada (3xxxx)
 05: Escritura de bobina simple (0xxxx)
 06: Escritura de registro único (4xxxx)
 15: Escritura de bobinas múltiples (0xxxx)
 16: Escritura de registros múltiples (4xxxx)
 Otros: Compatibilidad con comandos personalizados.

Compatibilidad con comandos personalizados MODBUSLOCPARA:


También se admiten los comandos personalizados en el intervalo de 0 a
255 que aún no están asignados a un comando de Modbus. Si se utiliza
un comando personalizado, LocalCfg:ElementCnt contiene el número de
bytes recibidos.
La respuesta se recibe en los datos de dirección local y sobrescribe los
datos de la solicitud.
 Ejemplo de CMD=0x2B
 Datos de dirección local 1:0x0E, READ_DEVICE_ID_MEI
 Datos de dirección local 2:0x01, READ_DEV_ID_BASIC
 Datos de dirección local 3:0x00, Lectura de objeto de proveedor
ElementCnt UINT Límites
 Para entradas de lectura de bobina/discretas: 2000 bits
 Para lectura de registros: 125 palabras
 Para escritura de bobinas: 1968 bits
 Para escritura de registros: 123 palabras

Activación de mensajes MSG_MODBUS

Los mensajes Modbus se pueden activar de forma periódica estableciendo un


valor distinto de cero para el parámetro de tipo de activador.

Esta tabla describe el comportamiento del parámetro de tipo de disparador


cuando se utiliza con el bloque de funciones MSG_MODBUS.

Acción Resultados
Se habilita el mensaje Se inicia el temporizador del activador
Caduca el temporizador del activador antes de Se activa el mensaje inmediatamente en el siguiente
que se complete el mensaje ciclo de exploración de lógica de escalera
Se completa el mensaje antes de que caduque Se activa el mensaje cuando caduca el temporizador del
el temporizador del activador activador

194 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Ejemplo: activación de mensajes

En el siguiente ejemplo, el valor de tipo de activador está establecido en 100.

Consulte también

MSG_MODBUS en la página 190

Proceso de ejecución El siguiente diagrama de proceso describe los eventos de instrucción de


mensaje que tienen lugar cuando la condición Peldaño se establece en Cierto.
de mensajes (Peldaño
= CIERTO)

Cola de comunicaciones: Las solicitudes de mensaje agregadas a la cola de


comunicaciones tienen un búfer asignado y procesado por la tarea de
comunicación. El tamaño máximo de la cola está limitado a 4.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 195


Capítulo 9 Instrucciones de comunicación

Cola de espera: Los mensajes que no se pueden agregar a la cola de


comunicaciones se agregan a la cola de espera para procesarse más adelante.
La cola de espera no tiene ningún límite de tamaño máximo.

Consulte también

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Instrucciones de comunicación en la página 175

MSG_MODBUS en la página 190

MODBUSTARPARA The following table describes the MODBUSTARPARA data type.


data type
Parámetro Tipo de datos Descripción
Addr UDINT Dirección de datos de destino (1 - 65536). Se reduce en uno cuando se envía.
Nodo USINT La dirección de nodo esclavo predeterminada es 1. El intervalo es de 1 a 247. La
dirección de difusión de Modbus es 0 y solo es válida para los comandos de
escritura de Modbus (por ejemplo: 5, 6, 15 y 16).

Consulte también

MSG_MODBUS en la página 190

MSG_MODBUS2 Envía un mensaje MODBUS/TCP a través de un canal Ethernet.

(mensajes Detalles de la operación:


MODBUS/TCP)
 En una exploración puede procesarse un máximo de cuatro solicitudes
de mensaje por canal. En el caso de programas de diagrama de lógica
de escalera, las solicitudes de mensaje se ejecutan al final de una
exploración de lógica de escalera.
 Cuando MSG_MODBUS2 está habilitado, los búferes de recepción de
las operaciones Read se borran en el extremo de incremento de Enable.
 Cancelar la ejecución de la instrucción MSG_MODBUS2 no garantiza
que la solicitud de mensaje saliente se ha cancelado, pero sí garantiza
que la respuesta no se procesa.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

196 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Esta instrucción se aplica a los controladores Micro820, Micro850 y


Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Estado de entrada de línea.
CIERTO: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
FALSO: no se ha detectado un flanco ascendente, inactivo.
Cancelar Entrada BOOL CIERTO: cancela la ejecución del bloque de función. Cancelar la
ejecución de la instrucción MSG_MODBUS2 no garantiza que la
solicitud de mensaje saliente se ha cancelado, pero sí garantiza que
la respuesta no se procesa.
FALSO: si IN es Cierto.
LocalCfg Entrada MODBUS2LOCPARA Define la entrada de la estructura (dispositivo local).
Define la estructura de entrada para el dispositivo local utilizando el
tipo de datos MODBUS2LOCPARA.
TargetCfg Entrada MODBUS2TARPARA Define la entrada de la estructura (dispositivo de destino).
Define la estructura de entrada para el dispositivo de destino
mediante el tipo de datos MODBUS2TARPARA.
LocalAddr Entrada MODBUSLOCADDR El tipo de datos MODBUSLOCADDR es una matriz de 125
palabras.
Uso de LocalAddr:
 Para los comandos Read, almacena los datos (1-125 palabras)
que devuelve el esclavo Modbus.
 Para los comandos de escritura, almacena en búfer los datos
(1-125 palabras) que se enviarán al dispositivo esclavo Modbus.
Q Salida BOOL Las salidas de esta instrucción se actualizan de forma asíncrona
desde la exploración del programa. La salida Q no se puede utilizar
para volver a activar la instrucción ya que IN tiene el flanco
activado.
CIERTO: la instrucción MSG ha finalizado correctamente.
FALSO: la instrucción MSG no se finaliza.
Error Salida BOOL Indica que se ha detectado un error.
Cierto: ha ocurrido un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en códigos de error Modbus2.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 197


Capítulo 9 Instrucciones de comunicación

SuberrorID Salida UINT Se utiliza para verificar los bits de estado:


 Bit 0: EN: Enable
 Bit 1: EW: Enable Wait
 Bit 2: ST: Start
 Bit 3: ER: Error
 Bit 4: DN: Done
Otros bits están reservados.
StatusBits Salida UINT Valor de código inferior a Error cuando Error es Cierto.
Cuando se activa o reactiva un MSG, se borra un SubErrorID
configurado con anterioridad.

Códigos de error y de código inferior a error MSG_MODBUS2

Cuando se activa el bit ER, los campos ErrorID y SubErrorID muestran los
siguientes códigos de error.

ID de SubErrorID Descripción
error

33 Errores relacionados con la configuración de parámetros


32 Número de canal incorrecto.
37 Recuento de elementos erróneo.
38 Dirección de datos incorrecta.
55 Errores relacionados con el tiempo de espera
112 El mensaje superó el tiempo de espera mientras aguardaba en la cola de espera de mensajes.
113 El mensaje superó el tiempo de espera mientras aguardaba a que se estableciera una
conexión con la capa del vínculo.
114 El mensaje superó el tiempo de espera mientras aguardaba a transmitir a la capa del vínculo.
115 El mensaje superó el tiempo de espera mientras aguardaba una respuesta desde la capa del
vínculo.
69 Códigos de error relacionados con el formato de la respuesta del servidor.
208 No se ha configurado ninguna dirección IP para la red.
209 Se utilizó el número máximo de conexiones y ya no hay ninguna disponible.
210 Dirección de nodo o de Internet no válida.
217 El usuario canceló la ejecución del mensaje. (El parámetro Cancel se estableció en Cierto).
222 No se ha podido establecer la conexión de red antes del período de espera.
255 Está apagado el canal o se encuentra en curso una reconfiguración. Se genera el código de error
inmediatamente después del encendido hasta que se establezca una conexión. Este es el comportamiento
normal. También puede generarse si hay un cable Ethernet desconectado o si no se detecta una dirección IP.
Códigos de error de respuesta de esclavo
129 Código de función no válida
130 Dirección de datos no válida

131 Valor de datos no válido


132 Error del servidor
133 Confirmación
134 Confirmación negativa

198 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

136 Error de paridad de memoria


137 Código de error de respuesta no estándar. El código de error real puede encontrarse en el SubErrorID.

Ejemplo de diagrama de bloque de funciones MSG_MODBUS2

Ejemplo de diagrama de lógica de escalera MSG_MODBUS2

Ejemplo de texto estructurado MSG_MODBUS2

Consulte también

Instrucciones de comunicación en la página 175

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Tipo de datos MODBUS2LOCPARA en la página 200

Tipo de datos MODBUS2TARPARA en la página 201

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 199


Capítulo 9 Instrucciones de comunicación

Tipo de datos Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos MODBUS2LOCPARA.
MODBUS2LOCPARA
Parámetro Tipo de Descripción
datos
Canal UINT Número de puerto Ethernet local:
 4 para puerto Ethernet integrado de Micro850 y Micro820.
TriggerType UDINT Tipo de activador de mensaje:
 0: mensaje activado una vez (si IN cambia de Falso a Cierto)
 De 1 a 65 535: valor del activador cíclico en milisegundos. El mensaje
se activa de forma periódica cuando IN es Cierto y se completa la
ejecución del mensaje anterior.
 Establezca el valor en 1 para activar los mensajes lo más rápido
posible.
Consulte la activación de mensajes MSG_MODBUS2.
Cmd USINT Comando Modbus:
 01: Lectura de estado de bobina (0xxxx)
 02: Lectura de estado de entrada (1xxxx)
 03: Lectura de Holding Registers (4xxxx)
 04: Lectura de registros de entrada (3xxxx)
 05: Escritura de bobina simple (0xxxx)
 06: Escritura de registro único (4xxxx)
 15: Escritura de bobinas múltiples (0xxxx)
 16: Escritura de registros múltiples (4xxxx)
 Otros: Compatibilidad con comandos personalizados

Compatibilidad con comandos personalizados MODBUS2LOCPARA:


También se admiten los comandos personalizados en el intervalo de 0 a
255 que aún no estén asignados a un comando de Modbus. Si se utiliza
un comando personalizado, LocalCfg:ElementCnt contiene el número de
bytes recibidos.
La respuesta se recibe en datos de dirección local y sobrescribe los datos
de la solicitud.
Ejemplo de CMD=0x2B:
 Datos de dirección local 1:0x0E, READ_DEVICE_ID_MEI
 Datos de dirección local 2:0x01, READ_DEV_ID_BASIC
 Datos de dirección local 3:0x00, Lectura de objeto de proveedor
ElementCnt UINT Límites
 Para entradas de lectura de bobina/discretas: 2000 bits
 Para lectura de registros: 125 palabras
 Para escritura de bobinas: 1968 bits
 Para escritura de registros: 123 palabras

Activación de mensajes MSG_MODBUS2

Los mensajes Modbus se pueden activar de forma periódica estableciendo un


valor distinto de cero para el parámetro de tipo de activador.

200 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Esta tabla describe lo que sucede cuando se utiliza el parámetro de tipo de


activador con el bloque de funciones MSG_MODBUS2.

Acción Resultados
Se habilita el mensaje. Se inicia el temporizador del activador.
Caduca el temporizador del activador antes de Se activa el mensaje inmediatamente en el siguiente
que se complete el mensaje. ciclo de exploración de lógica de escalera
Se completa el mensaje antes de que caduque el Se activa el mensaje cuando caduca el temporizador
temporizador del activador. del activador

Consulte también

MSG_MODBUS2 en la página 196

Tipo de datos Utilice esta tabla para determinar los valores de los parámetros para el tipo
de datos MODBUS2TARPARA.
MODBUS2TARPARA
Parámetro Tipo de Descripción
datos
Addr UDINT Dirección de datos de Modbus del dispositivo de destino:
 De 1 a 65.536.
 Se reduce en uno cuando se envía.
 El firmware utiliza direcciones con palabra baja si el valor de dirección es superior a
65.536.
NodeAddress[4] USINT Dirección IP del dispositivo de destino. Esta debe ser una dirección de unidifusión
válida y no puede ser 0, de multidifusión, de difusión, local ni de bucle invertido
(127.x.x.x).
Por ejemplo, para especificar 192.168.2.100:
 NodeAddress[0]=192
 NodeAddress[1]=168
 NodeAddress[2]=2
 NodeAddress[3]=100
Puerto UINT Número de puerto TCP de destino. El puerto Modbus/TCP estándar es 502.
1 - 65535
Establezca el valor en 0 para utilizar el predeterminado de 502.

UnitId USINT Identificador de unidad. Se utiliza para la comunicación con los dispositivos esclavos a
través de un puente de Modbus. Consulte la especificación de Modbus para obtener
más detalles. Tenga en cuenta que Micro800 no intentará validar este valor.
0 - 255
Establezca el valor en 255 si el dispositivo de destino no es un puente.

MsgTimeOut UDINT Tiempo de espera de mensaje (en milisegundos). Tiempo que se esperará una
respuesta para un comando iniciado.
 De 250 a 10.000
 Establezca el valor en 0 para utilizar el valor predeterminado 3.000.
 Un valor inferior a 250 (mínimo) se establece en 250.
 Un valor superior a 10.000 (máximo) se establece en 10.000.
Consulte Temporizadores de tiempo de espera de mensajes Modbus/TCP.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 201


Capítulo 9 Instrucciones de comunicación

Parámetro Tipo de Descripción


datos
ConnTimeOut UDINT Tiempo de espera de establecimiento de conexión TCP (en milisegundos). Tiempo que
se esperará para establecer una conexión TCP correcta con el dispositivo de destino.
 De 250 a 10.000
 Establezca el valor en 0 para utilizar el valor predeterminado 5.000.
 Un valor inferior a 250 (mínimo) se establece en 250.
 Un valor superior a 10.000 (máximo) se establece en 10.000.
Consulte Temporizadores de tiempo de espera de mensajes Modbus/TCP.
ConnClose BOOL Comportamiento de cierre de conexión TCP.
 Cierto: se cierra la conexión TCP cuando se completa el mensaje.
 Falso: no se cierra la conexión TCP cuando se completa el mensaje
(predeterminado).
Consulte Conexiones de mensajes Modbus/TCP.

Temporizadores de tiempo de espera de mensajes Modbus/TCP

Esta tabla describe el comportamiento de MsgTimeOut y ConnTimeOut,


basado en las solicitudes de mensaje y el estado.

Acción Resultados
Se habilita el mensaje. Activa el temporizador MsgTimeOut.
Se solicita conexión TCP. Activa el temporizador ConnTimeOut.
El temporizador ConnTimeOut está Deshabilita el temporizador MsgTimeOut.
activo.
Se ha completado la solicitud de Reactiva el temporizador MsgTimeOut.
conexión.

Conexiones de mensajes Modbus/TCP

El cliente Modbus/TCP admite un máximo de 16 conexiones. Esta tabla


describe el comportamiento de las conexiones Modbus/TCP.

Escenario Resultados
La solicitud de mensaje está habilitada y no Si no existe una conexión con el destino, se establece una nueva.
existe una conexión con el destino. Si ya existe una conexión con el destino, se utiliza la existente.
Se completa la ejecución del mensaje y Si solo hay una conexión con el destino, se cierra la conexión.
ConnClose se configura como Cierto. Si hay más de una conexión con el destino, la conexión se cierra cuando
se completa la ejecución del último mensaje.
Se completa la ejecución del mensaje y La conexión no se cierra.
ConnClose se configura como Falso.
La conexión no se asocia a ningún mensaje La conexión se cierra.
activo y permanece inactiva la cantidad de
tiempo especificada en el parámetro
ConnTimeOut.
El controlador pasa de un modo de ejecución Se fuerza el cierre de todas las conexiones activas.
(Ejecución, Ejecución remota, Exploración única
de prueba remota y Peldaño único remoto) a un
modo de no ejecución.

202 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Consulte también

MSG_MODBUS2 en la página 196

Procesos y Los siguientes temas resumen cómo y cuándo se ejecutan las instrucciones
de mensaje MSG_CIPGENERIC, MSG_CIPSYMBOLIC y
diagramas de MSG_MODBUS2 a partir de las condiciones de bit y de peldaño.
temporización de
 Proceso de ejecución de mensajes (general)
ejecución de
 Proceso de ejecución de mensajes (Peldaño = CIERTO)
mensajes
 Diagrama de temporización de ejecución de mensajes (Peldaño =
Cierto)
 Proceso de ejecución de mensajes (Peldaño = Falso)
 Diagrama de temporización de ejecución de mensajes (Peldaño =
Falso)
 Proceso de ejecución de mensajes (Error)
 Diagrama de temporización de ejecución de mensajes (Error)

Consulte también

Instrucciones de comunicación en la página 175

MSG_MODBUS2 en la página 196

MSG_CIPSYMBOLIC en la página 185

MSG_CIPGENERIC en la página 175

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 203


Capítulo 9 Instrucciones de comunicación

Proceso de ejecución En el siguiente diagrama se muestra cómo y cuándo se ejecutan los mensajes
en función del estado de la cola de comunicaciones.
de mensajes (general)

La siguiente tabla describe la secuencia de eventos identificados en el


diagrama anterior.

N.º Descripción de eventos

1 Se habilita el mensaje.
Si la cola de comunicaciones está vacía, se asigna el búfer del mensaje y el mensaje se
agrega a la cola de comunicaciones para transmitirse.
El tamaño de la cola de comunicaciones es de 4; cada canal tiene una cola independiente.
2 Si la cola de comunicaciones está llena, el mensaje se agrega a la cola de espera.
Cuando de la cola de comunicaciones esté vacía, el mensaje de la cola de espera se
agregará a la cola de comunicaciones.
No existe ningún límite para el tamaño de la cola de espera; cada canal tiene una cola
independiente.
3 La tarea de comunicación ejecuta los mensajes de la cola de comunicaciones con cada fin de
exploración para transmitirlos.
Las colas de los canales se procesan de una en una de forma circular.
Se ejecuta un mensaje de cada canal y el proceso continúa hasta que se ejecutan todos los
mensajes o hasta que caduca el programa de comunicaciones (10 ms).
El canal situado justo al lado del último procesado se programa para ser el primero en
aparecer en el siguiente fin de exploración.

Consulte también

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Instrucciones de comunicación en la página 175

204 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Proceso de ejecución El siguiente diagrama de proceso describe los eventos de instrucción de


mensaje que tienen lugar cuando la condición Peldaño se establece en Cierto.
de mensajes (Peldaño
= CIERTO)

Cola de comunicaciones: Las solicitudes de mensaje agregadas a la cola de


comunicaciones tienen un búfer asignado y procesado por la tarea de
comunicación. El tamaño máximo de la cola está limitado a 4.

Cola de espera: Los mensajes que no se pueden agregar a la cola de


comunicaciones se agregan a la cola de espera para procesarse más adelante.
La cola de espera no tiene ningún límite de tamaño máximo.

Consulte también

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Instrucciones de comunicación en la página 175

MSG_MODBUS en la página 190

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 205


Capítulo 9 Instrucciones de comunicación

Diagrama de La siguiente tabla describe las condiciones de mensaje y el estado de bit para
cada paso de ejecución identificado en el diagrama de temporización
temporización de mientras la condición de peldaño siga establecida en Cierto.
ejecución de mensajes
(Línea = Cierto)
Paso Descripción del mensaje Estado de bit
1 La condición Peldaño cambia a CIERTO. Se activa el bit EN.
Se habilita la ejecución del mensaje. El resto de los bits se
borran.
2 Se adquiere el búfer de control de mensajes. En este Se activa el bit EW.
momento, los datos de entrada (esto es, el parámetro
de datos de los mensajes de escritura) se copian para
transmitirse. Los cambios realizados posteriormente en
los datos de entrada no se reflejarán en el mensaje
transmitido.
3 Se inicia la transmisión del mensaje. Se borra el bit EW.
Se activa el bit ST.
4 Se recibe la respuesta del mensaje. Se borra el bit ST.
Se activa el bit DN.
5 La condición Peldaño cambia a Falso. Se borra el bit EN.

Diagrama de temporización para (Línea = Cierto)

Consulte también

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Instrucciones de comunicación en la página 175

206 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Proceso de ejecución El siguiente diagrama de proceso describe los eventos de instrucción de


mensaje que tienen lugar cuando la condición Línea se establece en Falso.
de mensajes (Peldaño
= Falso)

Consulte también

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Instrucciones de comunicación en la página 175

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 207


Capítulo 9 Instrucciones de comunicación

Diagrama de La siguiente tabla describe las condiciones de mensaje y el estado de bit para
cada paso de ejecución identificado en el diagrama de temporización cuando
temporización de el peldaño cambia a Falso durante la ejecución.
ejecución de mensajes
(Peldaño = Falso)
Paso Descripción del mensaje Estado de bit
1 La condición Peldaño cambia a CIERTO. Se activa el bit EN.
Se habilita la ejecución del mensaje. El resto de los bits se borran.
2 La condición Peldaño cambia a Falso.
Continúa la ejecución del mensaje.
3 Se adquiere el búfer del mensaje. En este momento, Se activa el bit EW.
los datos de entrada (esto es, el parámetro de datos
de los mensajes de escritura) se copian para
transmitirse. Los cambios realizados posteriormente
en los datos de entrada no se reflejarán en el
mensaje transmitido.
4 Se inicia la transmisión del mensaje. Se borra el bit EW.
Se activa el bit ST.
5 Se recibe la respuesta del mensaje. Se borra el bit ST.
Se activa el bit DN.
6 El mensaje se vuelve a explorar tras el paso 5. Se borra el bit EN.

Diagrama de temporización para (Línea = Falso)

Consulte también

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Instrucciones de comunicación en la página 175

Proceso de ejecución La siguiente tabla describe las condiciones de mensaje y el estado de bit para
cada paso de ejecución identificado en el diagrama de temporización cuando
de mensajes (Error) se produce un error durante la ejecución.

208 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Paso Descripción del mensaje Estado de bit


1 La condición Peldaño cambia a Se activa el bit EN.
CIERTO. El resto de los bits se borran.
Se habilita la ejecución del mensaje.
2 Se adquiere el búfer del mensaje. Se activa el bit EW.
3 Se inicia la transmisión del mensaje. Se borra el bit EW.
Se activa el bit ST.
4 Se agota el tiempo de transmisión Los bits EW y ST no cambian.
del mensaje.
4-6 La condición Peldaño cambia a Se borra el bit EN.
Falso. Se activa el bit ER.

Consulte también

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Instrucciones de comunicación en la página 175

Diagrama de El siguiente diagrama de temporización muestra un patrón típico cuando se


produce un error durante la ejecución.
temporización de
ejecución de mensajes
(Error)

Consulte también

Procesos y diagramas de temporización de ejecución de mensajes en la


página 203

Instrucciones de comunicación en la página 175

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 209


Capítulo 9 Instrucciones de comunicación

Utilizar los bloques En esta sección se proporcionan ejemplos y detalles específicos sobre el uso
de instrucciones de comunicación en programas de lógica. Consulte los
de funciones de siguientes temas para obtener detalles y ejemplos del uso de los bloques de
comunicación funciones MSG_CIPGENERIC y MSG_CIPSYMBOLIC para crear
programas.
(mensajes)
Consulte también

Instrucciones de comunicación en la página 175

Configurar valores de datos de objeto para mensajes explícitos en la


página 210

Ejemplo: Cómo crear un programa de mensajería MSG_CIPGENERIC


para leer datos de un controlador en la página 213

Ejemplo: Cómo crear un programa de mensajería


MSG_CIPSYMBOLIC para escribir un valor en una variable en la
página 223

Ejemplo: Cómo configurar una comunicación de Modbus para leer una


unidad y escribir en ella en la página 233

Configurar valores de Para utilizar el bloque de funciones para mensajes explícitos de


MSG_CIPGENERIC, configure el parámetro AppCfg con los valores
datos de objetos para correctos.
mensajes explícitos
(MSG_CIPGENERIC) Para obtener información adicional sobre la comunicación de mensajes

Hay varias fuentes de información que cubren la implementación y el uso de


la comunicación de mensajes, incluyendo la Ayuda de Connected
Components Workbench, los manuales de usuario y la biblioteca de
referencia de Rockwell Automation.

En la siguiente tabla se enumeran fuentes de información adicionales


relacionadas con la comunicación de mensajes.

Fuente de información Descripción Cómo encontrar la información


Manual de usuario de su Contiene información importante sobre Menú de ayuda de Connected
dispositivo de mensajería e información específica sobre la Components Workbench
comunicación concreto configuración de bloques de funciones de
mensajes.
Adaptador Ethernet/IP Proporciona información sobre los objetos de Menú de ayuda de Connected
22-COMM-E FRN 1.xxx, Ethernet/IP a los que se puede acceder Components Workbench
apéndice C mediante mensajes explícitos.
Especificación de Define los objetos que se incluirán en cada Sitio web de ODVA
Ethernet/IP dispositivo CIP: Objetos de identidad, de (http://www.odva.org)
enrutador de mensajes y de red.
Controladores Proporciona instrucciones de inicio rápido para Biblioteca de documentación de
programables Micro800: utilizar mensajes CIP simbólicos y genéricos en Rockwell Automation
Inicio con la mensajería de los controladores lógicos programables (PLC)
clientes de CIP Micro830 y Micro850.

210 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Para acceder a los manuales de usuario y a las guías de inicio rápido:

1. Para acceder a las guías de inicio rápido, en el menú Ayuda, haga clic
en Ver ayuda.

2. Haga doble clic en Connected Components Workbench.

3. Haga doble clic en Inicio con Connected Components Workbench.

4. Para acceder a los manuales del controlador, en el menú Ayuda, haga


clic en Manuales de usuario para mostrar el cuadro de diálogo
Manuales.

5. Haga clic en el signo más (+) junto a Unidades para expandir la


categoría y, a continuación, amplíe la clase hasta que encuentre el
manual.

6. Haga doble clic en el nombre para abrir el archivo PDF.

7. Para acceder a los manuales de EtherNet/IP, en el menú Ayuda, haga


clic en Manuales de usuario para mostrar el cuadro de diálogo
Manuales.

8. Haga clic en el signo más (+) junto a Unidades para expandir la


categoría y, a continuación, amplíe la clase Periféricos de la clase de
PowerFlex 4.

9. Haga doble clic en el manual de usuario del adaptador Ethernet/IP


22-COMM-E para abrir el archivo PDF.

Para acceder a los manuales desde la Biblioteca de documentación de


Rockwell Automation:

1. Vaya a http://literature.rockwellautomation.com.

2. Haga clic en Advanced Search (Búsqueda avanzada).

3. Escriba la información del producto y otros criterios de búsqueda.

4. Haga clic en Buscar.

En este ejemplo se muestran los criterios de búsqueda de manuales


de Kinetix:

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 211


Capítulo 9 Instrucciones de comunicación

5. Para acceder a las versiones de los diferentes idiomas de manuales de


usuario, seleccione el idioma en el cuadro desplegable Idioma de la
publicación (en la esquina derecha).

6. Escriba el número parcial o total del catálogo del dispositivo en el


cuadro Buscar. Por ejemplo, introduzca 2080-LC30 para ver los
manuales de usuario de Micro830.

7. En el cuadro desplegable Idioma de la publicación (esquina derecha),


seleccione un idioma.

8. En el cuadro Buscar, escriba el número total o parcial de catálogo del


dispositivo. Por ejemplo, introduzca 2080-LC30 para ver los manuales
de usuario de Micro830.

Datos del objeto de registro CIP

Los bloques de funciones MSG_CIPGENERIC utilizan los datos del objeto


de registro CIP en el parámetro AppCfg. Los datos del objeto incluyen los
siguientes:

 Código de clase
 Instancia
 Atributo de instancia
 Servicio

Valores del parámetro AppCfg de MSG_CIPGENERIC

Utilice los valores del objeto de registro CIP en las variables de entrada para
configurar los parámetros de los bloques de funciones MSG_CIPGENERIC.
En la siguiente imagen se muestran los valores de datos del objeto de registro
CIP en los parámetros de los bloques de funciones MSG_CIPGENERIC.

Consulte también

MSG_CIPGENERIC en la página 175

Utilizar los bloques de funciones de comunicación (mensajes) en la


página 210

212 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Ejemplo: Cómo crear En este ejemplo se muestra cómo crear un programa de mensajería que
recupere información de catálogo del controlador B desde el controlador A
un programa de mediante un bloque de funciones MSG_CIPGENERIC y un bloque de
mensajería funciones COP.
MSG_CIPGENERIC
para leer datos de un
controlador

Realice las siguientes tareas para crear un programa de mensajería


MSG_CIPGENERIC que lea información desde otro controlador.

No Tarea
1 Identificar los valores iniciales de las variables de entrada
(MSG_CIPGENERIC) en la página 213
2 Agregar un bloque de funciones MSG_CIPGENERIC y variables en la
página 214
3 Configurar los valores iniciales de las variables en la página 216

4 Agregar un contacto y una bobina en la página 219

5 Agregar un bloque de funciones COP, variables y un contacto


(MSG_CIPGENERIC) en la página 220
6 Comprobar si la configuración de IP es correcta en el controlador B en la
página 222

Consulte también

Configurar valores de datos de objeto para mensajes explícitos en la


página 210

Utilizar los bloques de funciones de comunicación (mensajes) en la


página 210

Identificar los valores Siga estos pasos genéricos para agregar variables de entrada y valores
iniciales de las variables iniciales, y obtener los valores del objeto de identidad para configurar los
de entrada valores iniciales del parámetro AppCfg.
(MSG_CIPGENERIC)
Para agregar variables de entrada y valores iniciales:

1. En el menú Ayuda, haga clic en Manuales de usuario.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 213


Capítulo 9 Instrucciones de comunicación

2. Expanda la selección Unidades y busque el manual de usuario del tipo


de adaptador de comunicaciones que utiliza (manual de usuario del
adaptador Ethernet/IP).

3. Haga doble clic en el manual para abrirlo.

4. Revise los encabezados de apéndice para encontrar la sección que


proporciona información sobre los objetos de Ethernet/IP a los que se
puede acceder mediante mensajes explícitos (apéndice C).

5. Vaya a la sección del apéndice e identifique el tipo de objeto


relacionado con su mensaje explícito (objeto de identidad).

6. Identifique los valores iniciales de los parámetros AppCfg en función


de la información de tipos que recupera.

Ejemplo de datos de objetos de Ethernet/IP y parámetros AppCfg

En la tabla siguiente se identifican los datos de objetos Ethernet/IP utilizados


para leer la información de catálogo desde un controlador.

Ejemplo de Parámetro Opción de datos de Descripción Valor inicial


variable de AppCfg objetos de
entrada Ethernet/IP
MyAppCfg.Service Servicio Código de servicio Implementar para clase = Sí 14
Implementar para instancia = Sí (0x0E en
Obtener atributo único hexadecimal)

MyAppCfg.Class Clase Código de clase Clase de objeto de Ethernet/IP = Objeto de 01


identidad
MyAppCfg.Instance Instancia Instancias 22-COMM-E 01
MyAppCfg.Attribute Atributo Atributo de instancia Obtener nombre y clasificación del producto 07
como una cadena corta

Consulte también

Agregar un bloque de funciones de mensaje genérico y variables en la


página 214

Ejemplo: Cómo configurar mensajería explícita (MSG_CIPGENERIC)


en la página 213

Agregar un bloque de Siga estos pasos para agregar un bloque de funciones MSG_CIPGENERIC a
funciones un programa de diagrama de lógica de escalera y, a continuación, añadirle a
MSG_CIPGENERIC y este variables de entrada.
variables
Para agregar un bloque de funciones MSG_CIPGENERIC:

1. Agregar un controlador:

214 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

 Expanda las carpetas Controladores y Micro850 para ver todos


los controladores Micro850.
 Haga doble clic en un controlador (2080-LC50-48QVB) para
agregarlo al organizador de proyectos.

2. Agregar un programa de diagrama de lógica de escalera:

 En el organizador de proyectos, haga clic con el botón secundario


en Programas, haga clic en Agregar y, a continuación, haga clic
en Nuevo LD: diagrama de lógica de escalera.
 Haga clic con el botón secundario en el icono del diagrama de
lógica de escalera en el organizador de proyectos, haga clic en
Cambiar de nombre y escriba CIPExplicitMessage.
 Haga doble clic en el programa de diagrama de lógica de escalera
en el organizador de proyectos para mostrar el POU del LD en el
editor de idioma.

3. Agregar el bloque de funciones MSG_CIPGENERIC:

 En el cuadro de herramientas, seleccione Bloque de instrucción,


arrástrelo y colóquelo en la línea de lógica de escalera para mostrar
el Selector de bloque de instrucciones.
 En Buscar, escriba MSG para mostrar los bloques de funciones de
mensaje.
 Escriba MSG_ReadDrive en el campo Instancia.
 Haga doble clic en MSG_CIPGENERIC para agregar una
instancia del bloque de funciones al diagrama de lógica de
escalera.

4. Agregar variables de entrada locales MSG_CIPGENERIC:

 En el organizador de proyectos, haga doble clic en Variables


locales para mostrar la página Variables locales.
 En la página Variables, agregue las variables y los tipos de datos
enumerados en la tabla.
Parámetro Nombre de la Tipo de datos
variable
CtrlCfg MyCtrlCfg CIPCONTROLCFG
AppCfg MyAppCfg CIPAPPCFG
TargetCfg MyTargetCfg CIPTARGETCFG
ReqData MyReqData USINT
ReqLength MyReqLength UINT
ResData MyResData USINT (matriz)

5. Para la variable MyResData, haga doble clic en Dimensión y cambie el


tamaño de matriz a [1-81].
Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 215
Capítulo 9 Instrucciones de comunicación

La página Variables debe tener un aspecto similar al de la imagen


siguiente.

Consulte también

Configurar valores iniciales (MSG_CIPGENERIC) en la página 216

Ejemplo: Cómo configurar mensajería explícita (MSG_CIPGENERIC)


en la página 213

Identificar los valores iniciales de las variables de entrada


(MSG_CIPGENERIC) en la página 213

Configurar los valores Siga estos pasos para agregar valores iniciales a las variables de entrada que
iniciales de las variables creó anteriormente y, a continuación, asígnelas al parámetro de entrada del
bloque de funciones MSG_CIPGENERIC correcto.

Para asignar variables a MSG_CIPGENERIC:

1. Para configurar valores iniciales para la variable de entrada


MyCtrlCfg:

 Desde la página Variables locales, amplíe MyCtrlCfg para ver sus


parámetros.
 Introduzca los valores siguientes en la columna Valor inicial de
cada parámetro.
Parámetro Valor inicial Comentarios
MyCtrlCfg.Cancel Dejar vacío. No es necesario.
MyCtrlCfg.TriggerType 0 Solo es necesario recuperar el
número de catálogo una vez.
MyCtrlcfg.StrMode Dejar vacío. No es necesario.

2. Para configurar valores iniciales para la variable de entrada MyAppCfg

216 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

 Desde la página Variables locales, amplíe MyAppCfg para ver sus


parámetros.
 Introduzca los valores siguientes en la columna Valor inicial de
cada parámetro.
Parámetro Valor inicial
MyAppCfg.Service 14
MyAppCfg.Class 01
MyAppCfg.Instance 01
MyAppCfg.Attribute 07

3. Para configurar valores iniciales para la variable de entrada


MyTargetCfg

 Desde la página Variables locales, amplíe MyTargetCfg para ver


sus parámetros.
 Introduzca los valores siguientes en la columna Valor inicial de
cada parámetro.
Parámetro Valor inicial Comentarios
MyTargetCfg.Path 4,192.168.100.4 El primer 4 indica que el mensaje se está enviando desde el
puerto Ethernet integrado.
192.168.100.4 es la dirección IP de la interfaz Ethernet de la
unidad.
MyTargetCfg.CipConnMode 0 Se prefiere No conectado para los mensajes CIP.
MyTargetCfg.UcmmTimeout vacío Los mensajes no conectados tienen un tiempo de espera
predeterminado de 3.000 milisegundos si sus valores iniciales
están vacíos.
MyTargetCfg.ConnMsgTimeout vacío Los mensajes conectados tienen un tiempo de espera
predeterminado de 3.000 milisegundos si sus valores iniciales
están vacíos.
MyTargetCfg.ConnClose Falso En el caso de los mensajes conectados, la conexión CIP se
puede cerrar inmediatamente una vez completada la instrucción
del mensaje si se establece el valor inicial en Cierto.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 217


Capítulo 9 Instrucciones de comunicación

Los parámetros de la página Variables deben tener un aspecto similar


al de la imagen siguiente.

4. Para asignar las variables a los parámetros

 En el POU del diagrama de lógica de escalera, haga clic en la parte


superior del bloque de entrada de la variable para mostrar la lista
desplegable de esta.
 En la lista, asigne cada parámetro de entrada a su variable de
entrada correcta, tal como se identifica en la siguiente tabla.
Parámetro Variable de entrada Comentarios
CtrlCfg MyCtrlCfg El número de catálogo solo se debe recuperar una vez, por lo que
el valor inicial MyCtrlCfg.TriggerType está establecido en 0.
AppCfg MyAppCfg Los valores iniciales se determinaron buscando los valores de datos
de objeto de Servicio, Clase, Instancia y Atributo.
Destino MyTargetCfg Los valores iniciales corresponden a la configuración del dispositivo
de destino.
ReqData MyReqData Puesto que se trata de un mensaje de lectura, no se solicitan datos,
por lo que no se utilizan los parámetros ReqData.
ReqLength MyReqLength Puesto que se trata de un mensaje de lectura, no se solicitan datos,
por lo que no se utilizan los parámetros ReqLength.

218 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

ResData MyResData La cadena de número de catálogo está almacenada en el formato


de cadena corta ODVA.
El primer elemento de matriz define la longitud de la cadena y el
resto de los elementos almacenan el valor hexadecimal del carácter
de cadena.
El número máximo de caracteres es 80, más el elemento de
longitud, por lo que MyResData se define como una matriz de una
dimensión con 81 elementos.

La instancia del bloque de funciones MSG_CIPGENERIC debe tener un


aspecto similar al de la imagen siguiente.

Consulte también

Agregar un bloque de funciones de mensaje genérico y variables en la


página 214

Agregar un contacto y una bobina en la página 219

Ejemplo: Cómo configurar mensajería explícita (MSG_CIPGENERIC)


en la página 213

Agregar un contacto y una Siga estos pasos para agregar una bobina y un contacto a la instrucción
bobina MSG_CIPGENERIC que convierte la información de catálogo en una
cadena legible por un humano.

Para agregar una bobina a MSG_CIPGENERIC:

1. En el cuadro de herramientas, seleccione Contacto directo,


arrástrelo y colóquelo a la izquierda de la entrada del bloque de
funciones MSG_CIPGENERIC en la primera línea de lógica de
escalera.

2. En el selector de variables, escriba Get_Catalog en el campo Nombre


del contacto.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 219


Capítulo 9 Instrucciones de comunicación

3. En el cuadro de herramientas, seleccione Bobina directa, arrástrela


y colóquela a la derecha de la salida del bloque de funciones
MSG_CIPGENERIC en la primera línea de lógica de escalera.

4. En el selector de variables, escriba Convert_String en el campo


Nombre de la bobina.

El primer peldaño de su programa de diagrama de lógica de escalera


para mensajes MSG_CIPGENERIC debe tener un aspecto similar al de
la imagen siguiente.

Consulte también

Agregar un bloque de funciones COP, variables y un contacto en la


página 220

Configurar valores iniciales (MSG_CIPGENERIC) en la página 216

Ejemplo: Cómo configurar mensajería explícita (MSG_CIPGENERIC)


en la página 213

Agregar un bloque de Siga estos pasos para agregar un bloque de funciones, variables y un
funciones COP, variables y contacto COP. La instrucción COP se utiliza para convertir datos del tipo de
un contacto datos de origen (por ejemplo, DINT o REAL) al de destino. En este ejemplo,
(MSG_CIPGENERIC) la información de catálogo se convierte en una cadena legible para el ojo
humano.

Para agregar un bloque de función COP:

1. En el cuadro de herramientas, seleccione Línea y arrástrela y


colóquela directamente debajo de la primera línea de lógica de escalera
para agregar una segunda línea.

2. Agregar el bloque de funciones COP:

220 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

 En el cuadro de herramientas, seleccione Bloque y arrástrelo y


colóquelo en la segunda línea de lógica de escalera para abrir el
Selector de bloque de instrucción.
 Haga doble clic en COP para agregar una instancia del bloque de
funciones al diagrama de lógica de escalera.

3. Agregar variables de entrada locales para COP:

 En el organizador de proyectos, haga doble clic en Variables


locales para mostrar la página Variables locales.
 En la página Variables locales, agregue las variables y los tipos de
datos enumerados en la tabla siguiente.
Parámetro Nombre de la Tipo de datos
variable
Src MyResData Matriz USINT
SrcOffset 0 UINT
Dest CatalogID Matriz STRING
DestOffset 0 UINT
Longitud 1 UINT
Swap Falso Booleano

4. Para la variable CatalogID, haga doble clic en Dimensión y cambie el


tamaño de matriz a [1..1].

5. Agregar un contacto:

 En el cuadro de herramientas, seleccione Contacto directo,


arrástrelo y colóquelo a la izquierda de la entrada del bloque de
funciones COP en la segunda línea de lógica de escalera.
 En el selector de variables, seleccione la variable Convert_String
del contacto.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 221


Capítulo 9 Instrucciones de comunicación

Resultado

El segundo peldaño de su programa de diagrama de lógica de escalera para


mensajes MSG_CIPGENERIC debe tener un aspecto similar al de la imagen
siguiente.

Consulte también

Agregar un contacto y una bobina en la página 219

Configurar valores iniciales (MSG_CIPGENERIC) en la página 216

Comprobar si la configuración de IP es correcta en el controlador B en


la página 222

Comprobar si la Siga estos pasos para comprobar que la configuración de la dirección IP sea
configuración de IP es correcta en el controlador B.
correcta en el controlador
B Para verificar la dirección IP:

1. Abrir el espacio de trabajo de aplicación del controlador:

2. En el Organizador de proyectos, haga doble clic en el controlador


para abrir el espacio de trabajo del controlador.

3. En el espacio de trabajo del controlador, expanda Ethernet en el árbol


del controlador y, a continuación, haga clic en Protocolo de Internet
para mostrar la página de configuración del controlador.

4. Compruebe que la configuración de la dirección IP sea correcta, tal


como se identifica en la tabla siguiente.

Opción de Valor
configuración IP
Dirección IP 192.168.1.19
Máscara de subred 255.255.255.0

222 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Dirección de puerta de 192.168.1.1


enlace

Resultados

Las opciones de Protocolo de Internet en la página de configuración del


controlador deben tener un aspecto similar al de la imagen siguiente.

Consulte también

Agregar un bloque de funciones COP, variables y un contacto en la


página 220

Agregar un bloque de funciones MSG_CIPSYMBOLIC, variables y un


contacto en la página 227

Crear una variable global para el controlador B en la página 231

Ejemplo: Cómo crear un programa de mensajería


MSG_CIPSYMBOLIC para escribir un valor en una variable en la
página 223

Ejemplo: Cómo crear En este ejemplo se muestra cómo crear un programa de mensajería para
escribir un valor en una variable global del controlador B desde el
un programa de controlador A.
mensajería
MSG_CIPSYMBOLIC
para escribir un valor
en una variable

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 223


Capítulo 9 Instrucciones de comunicación

Para crear un programa de mensajería MSG_CIPSYMBOLIC que se use


para escribir un valor en una variable global de otro controlador, realice las
siguientes tareas:

No Tarea
1 Agregar un bloque de funciones COP, variables y un contacto
(MSG_CIPSYMBOLIC) en la página 224
2 Agregar un operador Equal y una bobina en la página 226

3 Agregar un bloque de funciones MSG_CIPSYMBOLIC, variables y un contacto


en la página 227
4 Comprobar si la configuración de IP es correcta en el controlador B en la página
222
5 Crear una variable global para el controlador B en la página 231

6 Revisar los resultados del programa completo en la página 232

Consulte también

Utilizar los bloques de funciones de comunicación (mensajes) en la


página 210

Agregar un bloque de La instrucción COP se utiliza para convertir los datos que escribió en el tipo
funciones COP, variables y de datos de destino, de modo que sean compatibles con la variable del
un contacto controlador.
(MSG_CIPSYMBOLIC)
Para agregar un bloque de función COP:

1. Agregar un controlador:

 Expanda las carpetas Controladores y Micro850 para ver todos


los controladores Micro850.
 Haga doble clic en un controlador (2080-LC50-48QVB) para
agregarlo al organizador de proyectos.

2. Agregar un programa de diagrama de lógica de escalera:

 En el organizador de proyectos, haga clic con el botón secundario


en Programas, haga clic en Agregar y, a continuación, haga clic
en Nuevo LD: diagrama de lógica de escalera.
 Haga clic con el botón secundario en el icono del diagrama de
lógica de escalera en el organizador de proyectos, haga clic en
Cambiar de nombre y escriba CIPSymbolicMessage.
 Haga doble clic en el programa de diagrama de lógica de escalera
en el organizador de proyectos para mostrar el POU del LD en el
editor de idioma.

3. Agregar un bloque de funciones COP:

224 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

 En el Cuadro de herramientas, seleccione Bloque de


instrucción, arrástrelo y colóquelo en la línea de lógica de escalera
para abrir el Selector de bloque de instrucción.
 En Buscar, escriba COP y, a continuación, haga doble clic en el
texto que acaba de escribir para agregar una instancia del bloque de
funciones al diagrama de lógica de escalera.

4. Agregar variables COP y valores iniciales:

 En el POU del diagrama de lógica de escalera, haga doble clic en


Variables locales para mostrar la página Variables locales.
 En la página Variables, agregue las variables y los tipos de datos
enumerados en la tabla siguiente.

5. Crear matrices:

 Para ValueToWrite, haga doble clic en Dimensión y cambie el


tamaño de matriz a [1-1].
 Para A_Data, haga doble clic en Dimensión y cambie el tamaño de
matriz a [1-4].

6. Escriba los datos de la columna Valor de la tabla siguiente en el campo


Valor inicial de cada variable.

7. Agregar un contacto:

 En el cuadro de herramientas, seleccione Contacto directo y


arrástrelo y colóquelo a la izquierda de la entrada del bloque de
funciones COP en la primera línea de lógica de escalera.
 En el selector de variables, asigne una variable llamada
Convert_Data al contacto.

Use las variables definidas en la tabla para el bloque de funciones COP.

Parámetro Nombre de la Tipo de datos


variable
Src ValueToWrite UDINT de matriz
Valor inicial:
987654321
SrcOffset 0 UINT
Dest A_Data Matriz USINT
DestOffset 0 UINT
Longitud 4 UINT
Swap Cierto Booleano
STS COPsts Matriz UINT

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 225


Capítulo 9 Instrucciones de comunicación

El primer peldaño de su programa de diagrama de lógica de escalera para


mensajes MSG_CIPSYMBOLIC debe tener un aspecto similar al de la
imagen siguiente.

Consulte también

Agregar un operador Equal y una bobina en la página 226

Ejemplo: Cómo crear un programa de mensajería


MSG_CIPSYMBOLIC para escribir un valor en una variable en la
página 223

Agregar un operador Equal La instrucción Equal se utiliza para activar la escritura de un valor si la
y una bobina conversión de tipo de datos se completó correctamente. Para agregar un
operador Equal (=), variables y una bobina, realice los siguientes pasos.

Para agregar un operador Equal:

1. En el cuadro de herramientas, seleccione Línea y arrástrela y


colóquela directamente debajo de la primera línea de lógica de escalera
para agregar una segunda línea.

2. Agregar un operador Equal:

 En el Cuadro de herramientas, seleccione Bloque de instrucción


y arrástrelo y colóquelo en la segunda línea de lógica de escalera
para abrir el Selector de bloque de instrucción.
 En Buscar, escriba el signo igual (=) y, a continuación, haga doble
clic en él para agregar una instancia del operador al diagrama de
lógica de escalera.

3. Para agregar variables Equal:

 En el POU del diagrama de lógica de escalera, haga doble clic en


una variable para mostrar el selector de variables.

226 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

 En el selector de variables, asigne nombres de variables, tal como


se enumeran en la tabla siguiente.
Parámetro Nombre de la
variable
i1 COPsts
i2 1

4. Para agregar una bobina al operador Equal:

En el cuadro de herramientas, seleccione Bobina directa y


arrástrela y colóquela a la derecha de la salida del operador Equal,
en la segunda línea de lógica de escalera.
En el selector de variables, escriba WriteValue en el campo
Nombre de la bobina.
El segundo peldaño de su programa de diagrama de lógica de escalera
para mensajes MSG_CIPGENERIC debe tener un aspecto similar al de
la imagen siguiente.

Consulte también

Agregar un bloque de funciones COP, variables y un contacto en la


página 224

Agregar un bloque de funciones MSG_CIPSYMBOLIC, variables y un


contacto en la página 227

Ejemplo: Cómo crear un programa de mensajería


MSG_CIPSYMBOLIC para escribir un valor en una variable en la
página 223

Agregar un bloque de Siga estos pasos para agregar un bloque de funciones


funciones MSG_CIPSYMBOLIC, variables de entrada y un contacto a un diagrama de
MSG_CIPSYMBOLIC, lógica de escalera.
variables y un contacto
Para agregar un bloque de funciones y variables:

1. En el cuadro de herramientas, seleccione Línea, arrástrela y


colóquela directamente debajo de la segunda línea de lógica de escalera
para agregar una tercera línea.

2. Agregar el bloque de funciones MSG_CIPSYMBOLIC:

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 227


Capítulo 9 Instrucciones de comunicación

 En el cuadro de herramientas, seleccione Bloque de instrucción,


arrástrelo y colóquelo en la línea de lógica de escalera para mostrar
el Selector de bloque de instrucciones.
 En Buscar, escriba MSG para mostrar los bloques de funciones de
mensaje.
 Escriba MSG_WriteVariable en el campo Instancia.
 Haga doble clic en MSG_CIPSYMBOLIC para agregar una
instancia del bloque de funciones llamada MSG_WriteVariable al
diagrama de lógica de escalera.

3. Asignar nombres de variables:

 En el POU del diagrama de lógica de escalera, haga doble clic en


una variable para mostrar el selector de variables.
 En el selector de variables, asigne nombres de variables, tal como
se enumeran en la tabla siguiente.

4. Para la variable Data, haga doble clic en Dimensión y cambie el


tamaño de matriz a [1-4].

5. Para configurar los valores iniciales de las variables locales, agregue


los valores iniciales CtrlCfg:

 En la página Variables locales, expanda el parámetro CtrlCfg para


ver parámetros adicionales.
 Introduzca los valores siguientes en la columna Valor inicial de
cada parámetro.
Parámetro Valor inicial
A_CtrlCfg.Cancel Dejar vacío.
A_CtrlCfg.TriggerTy 300
pe
A_Ctrlcfg.StrMode Dejar vacío.

6. Agregar valores iniciales de SymCfg:

 En la página Variables locales, expanda el parámetro SymCfg


para ver parámetros adicionales.
 Introduzca los valores siguientes en la columna Valor inicial de
cada parámetro.
Parámetro Valor inicial
A_SymCfg.Service 1
A_SymCfg.Symbol 'UDINT_FromA'
A_SymCfg.Count Dejar vacío.
A_SymCfg.DataTyp 200
e

228 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

A_SymCfg.Offset Dejar vacío.

El selector de variables locales debe tener un aspecto similar al de la


imagen siguiente.

7. Configurar los valores iniciales de TargetCfg

 En el POU del diagrama de lógica de escalera, haga doble clic en


la variable A_TarCfg para abrir el selector de variables globales.
 Expanda el parámetro TargetCfg para ver parámetros adicionales.
 Introduzca los valores siguientes en la columna Valor inicial de
cada parámetro.
Parámetro Valor inicial
A_TarCfg.Path 4,192.168.1.19
A_TarCfg.CipConnMode 1
A_TarCfg.UcmmTimeout 0
A_TarCfg.ConnMsgTimeout 0
A_TarCfg.ConnClose Dejar vacío.

El selector de variables globales del usuario debe tener un aspecto


similar al de la imagen siguiente.

8. Agregar un contacto:

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 229


Capítulo 9 Instrucciones de comunicación

 En el Cuadro de herramientas, seleccione Contacto directo y


arrástrelo y colóquelo a la izquierda de la entrada del bloque de
funciones MSG_CIPSYMBOLIC, en la tercera línea de lógica de
escalera.
 En el selector de variables, asigne la variable WriteValue al
contacto.
El tercer peldaño de su programa de diagrama de lógica de escalera
para mensajes MSG_CIPSYMBOLIC debe tener un aspecto similar al de
la imagen siguiente.

Consulte también

Agregar un operador Equal y una bobina en la página 226

Ejemplo: Cómo crear un programa de mensajería


MSG_CIPSYMBOLIC para escribir un valor en una variable en la
página 223

Comprobar si la configuración de IP es correcta en el controlador B en


la página 222

Comprobar si la Siga estos pasos para comprobar que la configuración de la dirección IP sea
configuración de IP es correcta en el controlador B.
correcta en el controlador
B Para verificar la dirección IP:

1. Abrir el espacio de trabajo de aplicación del controlador:

2. En el Organizador de proyectos, haga doble clic en el controlador


para abrir el espacio de trabajo del controlador.

3. En el espacio de trabajo del controlador, expanda Ethernet en el árbol


del controlador y, a continuación, haga clic en Protocolo de Internet
para mostrar la página de configuración del controlador.

4. Compruebe que la configuración de la dirección IP sea correcta, tal


como se identifica en la tabla siguiente.

230 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Opción de Valor
configuración IP
Dirección IP 192.168.1.19
Máscara de subred 255.255.255.0
Dirección de puerta de 192.168.1.1
enlace

Resultados

Las opciones de Protocolo de Internet en la página de configuración del


controlador deben tener un aspecto similar al de la imagen siguiente.

Consulte también

Agregar un bloque de funciones COP, variables y un contacto en la


página 220

Agregar un bloque de funciones MSG_CIPSYMBOLIC, variables y un


contacto en la página 227

Crear una variable global para el controlador B en la página 231

Ejemplo: Cómo crear un programa de mensajería


MSG_CIPSYMBOLIC para escribir un valor en una variable en la
página 223

Crear una variable global Siga estos pasos para crear una variable global para el controlador B.
para el controlador B
Para crear una variable global:

1. En el organizador de proyectos, haga doble clic en Variables


globales para mostrar el selector de variables globales.

2. Escriba UDINT_FromA en la columna Nombre.

3. Configurar los parámetros restantes:

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 231


Capítulo 9 Instrucciones de comunicación

 Compruebe que el tipo de datos sea UDINT.


 Compruebe que el atributo Lectura/Escritura esté seleccionado.

El selector de variables globales debe tener un aspecto similar al de la


imagen siguiente.

Consulte también

Comprobar si la configuración de IP es correcta en el controlador B en


la página 222

Revisar los resultados del programa completo en la página 232

Revisar los resultados del En el siguiente ejemplo se muestra el programa de mensajería


programa completo MSG_CIPSYMBOLIC completo una vez ejecutado.

Resultados del controlador B

En las dos imágenes siguientes se muestran los valores del controlador B


antes y después de la ejecución del programa.

232 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Antes de la ejecución del programa

Después de la ejecución del programa

Consulte también

Crear una variable global para el controlador B en la página 231

Ejemplo: Cómo En estos ejemplos se describe cómo configurar una comunicación Modbus
para leer datos de estado de una unidad PowerFlex 4 y escribir datos de
configurar una control en ella con la instrucción MSG_MODBUS.
comunicación de
Modbus para leer una
unidad y escribir en
ella

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 233


Capítulo 9 Instrucciones de comunicación

Conexión de Micro830

Este ejemplo usa un controlador Micro830 con un módulo SERIALISOL


enchufado en la primera ranura (canal 5). Hay un único driver PowerFlex 40
conectado, pero el diagrama siguiente muestra cómo realizar una conexión
múltiple. Consulte el manual del usuario para obtener información adicional
sobre conexiones.

Ejemplo de lectura de Modbus

La siguiente instrucción MSG_MODBUS se puede utilizar para leer los


datos de estado de la unidad PowerFlex 40.

Estado de la unidad

Un valor de 1.807 indica que la unidad tiene uno de los siguientes estados:

 Lista (bit 0 activado)


 Activa (bit 1 activado)
 Avance por comando (bit 2 activado)
 Giro adelante (bit 3 activado)
 Estado de algunas entradas digitales de la unidad

Un valor de 278 indica 27,8 Hz.

234 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Consulte el manual de usuario de PowerFlex para obtener información


adicional sobre bits de palabra de estado lógico, descripciones de código de
error, velocidades solicitadas y reales, y otros códigos de estado.

Configuración de lectura de MSG_MODBUS

En la siguiente imagen se muestran las opciones de variable del bloque de


instrucciones MSG_MODBUS utilizado para leer datos de estado de una
unidad PowerFlex 40.

Lectura de variables de MSG_MODBUS

En la siguiente tabla se identifican las variables y los valores que se utilizan


para configurar la instrucción MSG_MODBUS de modo que lea datos de
estado de una unidad PowerFlex 4.

Variable Valor Descripción


*.Channel 5 Canal 5: ubicación del módulo SERIALISOL
*.TriggerType 0 Activador en transición Falso - Cierto
*.Cmd 3 Código de función de Modbus “03”: Lectura de Holding Registers
*.ElementCnt 4 Longitud
*.Addr 8449 Dirección de palabra de estado lógico de PowerFlex + 1
*.Node 2 Dirección del nodo de PowerFlex
*_laddr[1] {data} Palabra de estado lógico de PowerFlex
*_laddr[2] {data} Código de error de PowerFlex
*_laddr[3] {data} Velocidad solicitada de PowerFlex (referencia de velocidad)
*_laddr[4] {data} Retorno de velocidad de PowerFlex (velocidad real)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 235


Capítulo 9 Instrucciones de comunicación

Ejemplo de instrucción MOV

En las siguientes imágenes se muestra un ejemplo de cómo utilizar la


instrucción MOV para mover el valor de matriz *_l[1] a una palabra, lo que
permite acceder a los bits individuales directamente.

Ejemplo de escritura de Modbus

La siguiente instrucción MSG_MODBUS se utiliza para escribir datos de


control en una unidad PowerFlex 40.

236 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Configuración de escritura MSG_MODBUS

En la siguiente imagen se muestran las variables y los valores que se utilizan


para configurar la instrucción MSG_MODBUS de modo que escriba datos de
control en una unidad PowerFlex 4.

Variables de escritura de MSG_MODBUS

La siguiente tabla muestra las variables y valores, y describe el propósito de


cada variable.

Variable Valor Descripción


*.Channel 5 Canal 5: ubicación del módulo SERIALISOL
*.TriggerType 0 Activador en transición Falso - Cierto
*.Cmd 16 Código de función de Modbus "16": Escritura de Holding Registers
*.ElementCnt 2 Longitud
*.Addr 8193 Dirección de palabra de estado lógico de PowerFlex + 1
*.Node 2 Dirección del nodo de PowerFlex
*_laddr[1] {data} Palabra de comando lógico de PowerFlex
*_laddr[2] {data} Palabra de referencia de velocidad de owerFlex

Consulte también

MSG_MODBUS en la página 190

Utilizar los bloques de funciones de comunicación (mensajes) en la


página 210

Compatibilidad con Los bloques de funciones MSG_CIP admiten distintos protocolos de


comunicación, tal como se describe en esta sección.
protocolos de
comunicación Compatibilidad de bloques de funciones con protocolos de comunicación de
mensajes.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 237


Capítulo 9 Instrucciones de comunicación

Protocolo de mensajes Medio de comunicación Utilizar este bloque de funciones


Cliente y servidor de A través de un puerto serie MSG_MODBUS en la página 190
Modbus/RTU configurado como Modbus RTU.
Cliente y servidor de A través de Ethernet (en lugar de MSG_MODBUS2 en la página 196
Modbus/TCP utilizar un puerto serie).
Cliente y servidor de Ethernet A través de un canal Ethernet MSG_CIPSYMBOLIC en la página 185
IP integrado. MSG_CIPGENERIC en la página 175
Cliente y servidor de serie Cable Ethernet o cable serie. MSG_CIPSYMBOLIC en la página 185
CIP
ASCII A través de un puerto RS-232 Consulte Instrucciones de puerto serie ASCII.
configurado con un driver ASCII.

Modbus RTU

Modbus es un protocolo de comunicación maestro-esclavo dúplex medio que


permite que un solo dispositivo maestro se comunique con un máximo de
247 esclavos. El maestro de red Modbus lee y escribe bits y registros. RTU
de Modbus se admite al configurar el puerto serie como RTU de Modbus.

Para obtener más información sobre el protocolo Modbus, consulte las


especificaciones del protocolo Modbus (disponibles en
http://www.modbus.org).

Modbus/TCP

El protocolo de comunicación de servidor Modbus/TCP utiliza las mismas


funciones de asignación de Modbus como RTU de Modbus, pero no se
admite mediante un puerto serie, sino a través de Ethernet.

El controlador Micro850 admite hasta 16 conexiones de servidor


Modbus/TCP simultáneas. La única configuración de protocolo necesaria es
la de la tabla de asignación de Modbus.

Ethernet/IP

Los controladores Micro820 y Micro850 admiten hasta 16 conexiones de


servidor Ethernet/IP simultáneas a través de un canal de comunicación
Ethernet integrado. El canal se puede utilizar para conectar un controlador
Micro850 a diversos dispositivos a través de una red de área local a una
velocidad de transferencia de 10 Mbps/100 Mbps.

Protocolo industrial común (CIP)

El protocolo CIP es un protocolo de la capa de la aplicación y de transporte


que se utiliza para el envío de mensajes a través de redes Ethernet/IP,
ControlNet y DeviceNet. Permite conectar HMI fácilmente a un controlador
Micro830 o Micro850.

238 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comunicación Capítulo 9

Mensajes CIP explícitos

El protocolo CIP se utiliza para el envío de mensajes explícitos. Los


mensajes explícitos (configuración, recolección de datos y diagnóstico) se
utilizan para transferir datos que no requieren actualizaciones continuas. Los
mensajes explícitos se admiten mediante la mensajería de clientes de CIP
genéricos a través del bloque de funciones MSG_CIPGENERIC y mediante
la mensajería de clientes de CIP simbólicos a través del bloque de funciones
MSG_CIPSYMBOLIC.

Serie CIP

La serie CIP utiliza el protocolo dúplex completo DF1 y proporciona


conexión de punto a punto entre dos dispositivos. Combina la transparencia
de datos (especificación ANSI (American National Standards Institute)
X3.28-1976, subcategoría D1) con la transmisión simultánea bidireccional
con respuestas integradas (subcategoría F1).

Los controladores Micro830 y Micro850 admiten la serie CIP a través de una


conexión RS-232 con dispositivos externos, como equipos que ejecutan
software RSLinx Classic, terminales de PanelView Component (revisiones
del firmware a partir de 1.70) u otros controladores que admiten la serie CIP
a través de dúplex completo DF1, como controladores ControlLogix y
CompactLogix con puertos serie integrados.

El driver del puerto serie se puede configurar como Serie CIP, RTU de
Modbus, ASCII o Apagar en el árbol de configuración del dispositivo.

Consulte también

Instrucciones de puerto serie ASCII en la página 113

Canales de comunicación integrados en la página 239

Canales de Los controladores Micro820, Micro830 y Micro850 tienen los siguientes


canales de comunicación integrados adicionales:
comunicación
integrados  Un puerto combinado RS-232/485 no aislado
 Un puerto de programación USB no aislado (solo Micro830 y
Micro850)
 Un puerto ethernet RJ-45 (solo Micro820 y Micro850)

Consulte también

Compatibilidad con protocolos de comunicación en la página 237

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 239


Capítulo 9 Instrucciones de comunicación

240 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 10

Instrucciones de comparación

Utilice las instrucciones de comparación para comparar valores de entero,


real, de hora, fecha y valores de cadena mediante una expresión o una
instrucción de comparación específica.

Instrucción Descripción

(=) Equal en la página 241 Compara la primera entrada con la segunda entrada para
determinar la igualdad. Para los tipos de datos de entero, real,
de hora, fecha y cadena.
(>) Greater Than en la página 244 Compara los valores de entrada para determinar si el primero
es mayor que el segundo.
(>=) Greater Than o Equal en la página Compara los valores de entrada para determinar si el primero
246 es mayor o igual que el segundo.
(<) Less Than en la página 248 Compara los valores de entrada para determinar si el primero
es menor que el segundo.
(<=) Less Than o Equal en la página 249 Compara los valores de entrada para determinar si el primero
es menor o igual que el segundo.
(<>) Not Equal en la página 250 Compara los valores de entrada para determinar si el primero
no es igual que el segundo.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

Equal Realiza una operación que compara la primera entrada con la segunda para
determinar la igualdad de los tipos de datos Integer, Real, Time, Date y
String.

Detalles de la operación:

 No se recomienda efectuar la prueba de igualdad de valores temporales


en el caso de los bloques de instrucción TON, TP y TOF.
 No se recomienda utilizar el tipo de datos Real si se compara si los
valores son iguales, ya que los números de la operación matemática se
redondean de forma diferente de aquellos que se muestran en la
pantalla de salida de la variable. Por tanto, dos valores de salida pueden
aparecer iguales en la pantalla, aunque se evalúen como falsos. Por
ejemplo, al comparar 23,500001 con 23,499999 ambos aparecen como
23,5 en la pantalla de entrada de variable, pero no serán iguales en el
controlador.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 241


Capítulo 10 Instrucciones de comparación

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar función.
Cierto: ejecuta la comparación de igualdad.
Falso: no se realiza ninguna comparación.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Todas las entradas deben ser del mismo tipo de datos.
SINT La entrada Tiempo se aplica al texto estructurado, diagrama de
USINT lógica de escalera y diagrama de bloque de funciones.
BYTE No se recomienda el tipo de datos real.
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA

242 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comparación Capítulo 10

Parámetro Tipo de Tipo de datos Descripción


parámetro
i2 Entrada BOOL
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida BOOL Cierto si i1 = i2.

Ejemplo de comparación de valores reales utilizando Subtraction (-)


ABS y Less than (<)

El tipo de datos real no se recomienda al comparar la igualdad de valores, ya


que los números se redondean de forma diferente. Dos valores de salida
pueden aparecer iguales en la pantalla del Área de trabajo de componentes
conectados, pero seguirán evaluándose como falsos.

Por ejemplo, al comparar 23,500001 con 23,499999 ambos aparecerán como


23,5 en la pantalla de entrada de variable, pero no serán iguales en el
controlador.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 243


Capítulo 10 Instrucciones de comparación

Para probar si dos tipos de datos reales son iguales, puede utilizar una
instrucción Subtraction para obtener la diferencia entre los valores y
determinar si esta es menor que (Less Than) un valor de precisión
establecido. Observe el siguiente ejemplo de programa de LD en el que se
comparan dos valores de tipo de datos real.

Ejemplo de texto estructurado Equal (=)

(* Equivalencia de ST: *)

aresult := (10 = 25); (* aresult es Falso *)


mresult := ('ab' = 'ab'); (* mresult es Cierto *)

Consulte también

Instrucciones de comparación en la página 241

Greater than Compara los valores de entrada entero, real, temporal, fecha y cadena para
determinar si el primero es mayor que el segundo.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

244 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comparación Capítulo 10

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
CIERTO: ejecuta la comparación de entrada.
FALSO: no se realiza ninguna comparación.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada SINT Todas las entradas deben ser del mismo tipo de datos.
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 245


Capítulo 10 Instrucciones de comparación

i2 Entrada SINT
USINT
- BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida BOOL Cierto si i1 > i2.

Ejemplo de texto estructurado Mayor que (>)

(* Equivalencia de ST: *)

aresult := (10 > 25); (* aresult es Falso *)


mresult := ('ab' > 'a'); (* mresult es Cierto *)

Consulte también

Instrucciones de comparación en la página 241

Greater than or Compara los valores de entrada entero, real, temporal, fecha y cadena para
determinar si el primero es mayor o igual que el segundo.
equal
No se recomienda realizar la prueba de igualdad de valores temporales en el
caso de TON, TP y TOF.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

246 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comparación Capítulo 10

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
CIERTO: ejecuta la comparación de entrada.
FALSO: no se realiza ninguna comparación.
Solo se aplica a programas de diagrama de lógica de escalera.

i1 Entrada SINT Todas las entradas deben ser del mismo tipo de datos. La entrada
USINT Tiempo se aplica al texto estructurado, diagrama de lógica de
BYTE escalera y diagrama de bloque de funciones.
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
i2 Entrada SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida BOOL Cierto si i1 >= i2.

Ejemplo de texto estructurado Mayor o igual que (>=)

(* Equivalencia de ST: *)

aresult := (10 >= 25); (* aresult es Falso *)


mresult := ('ab' >= 'ab'); (* mresult es Cierto *)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 247


Capítulo 10 Instrucciones de comparación

Consulte también

Instrucciones de comparación en la página 241

Less than Compara los valores de entrada entero, real, temporal, fecha y cadena para
determinar si el primero es menor que el segundo.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
CIERTO: ejecuta la comparación de entrada.
FALSO: no se realiza ninguna comparación.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada SINT Todas las entradas deben ser del mismo tipo de datos.
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA

248 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comparación Capítulo 10

i2 Entrada SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida BOOL Cierto si i1 < i2.

Ejemplo de texto estructurado Menor que (<)

(* Equivalencia de ST: *)

aresult := (10 < 25); (* aresult es Cierto *)


mresult := ('z' < 'B'); (* mresult es Falso *)

(* Equivalencia de IL: *)

LD 10
LT 25
ST aresult
LD 'z'
LT 'B'
ST mresult

Consulte también

Instrucciones de comparación en la página 241

Less than or equal Compara los valores de entrada entero, real, temporal, fecha y cadena para
determinar si el primero es menor o igual que el segundo.

No se recomienda realizar la prueba de igualdad de valores temporales en el


caso de TON, TP y TOF.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 249


Capítulo 10 Instrucciones de comparación

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
CIERTO: ejecuta la comparación de entrada.
FALSO: no se realiza ninguna comparación.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada SINT - USINT - BYTE - Todas las entradas deben ser del mismo tipo de datos. La entrada
INT - UINT - WORD - Tiempo se aplica al texto estructurado, diagrama de lógica de
DINT - UDINT - escalera y diagrama de bloque de funciones.
DWORD - LINT -
ULINT - LWORD -
REAL - LREAL - TIME
- DATE - STRING
i2 Entrada SINT - USINT - BYTE -
INT - UINT - WORD -
DINT - UDINT -
DWORD - LINT -
ULINT - LWORD -
REAL - LREAL - TIME
- DATE - STRING
o1 Salida BOOL Cierto si i1 <= i2.

Ejemplo de texto estructurado Menor o igual que (<=)

(* Equivalencia de ST: *)

aresult := (10 <= 25); (* aresult es Cierto *)


mresult := ('ab' <= 'ab'); (* mresult es Cierto *)

Consulte también

Instrucciones de comparación en la página 241

Not equal Compara los valores de entrada entero, real, temporal, fecha y cadena para
determinar si el primero no es igual que el segundo.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

250 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de comparación Capítulo 10

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de comparación actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Todas las entradas deben ser del mismo tipo de datos.
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 251


Capítulo 10 Instrucciones de comparación

i2 Entrada BOOL
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida BOOL Cierto: si primero <> segundo

Ejemplo de texto estructurado Not equal (<>)

(* Equivalencia de ST: *)

aresult := (10 <> 25); (* aresult es Cierto *)


mresult := ('ab' <> 'ab'); (* mresult es Falso *)

Consulte también

Instrucciones de comparación en la página 241

252 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 11

Instrucciones de contador

Use las instrucciones de contador se utilizan para controlar operaciones en


función del número de eventos.

Instrucción Descripción

CTD en la página 253 Cuenta (enteros) de forma descendente desde un valor concreto
hasta cero, de 1 en 1.
CTU en la página 255 Cuenta enteros de forma ascendente desde 0 hasta un valor concreto,
de 1 en 1.
CTUD en la página 257 Cuenta enteros de forma ascendente desde 0 hasta un valor concreto,
de 1 en 1, o de forma descendente desde un valor concreto hasta 0,
de 1 en 1.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

CTD (recuento Cuenta (enteros) de forma descendente desde un valor concreto hasta cero,
de 1 en 1.
descendente)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
CD Entrada BOOL Recuento descendente.
Cierto: flanco ascendente detectado, el recuento descendente
se realiza en incrementos de uno.
Falso: flanco descendente detectado, retiene el valor del
contador en el mismo valor.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 253


Capítulo 11 Instrucciones de contador

LOAD Entrada BOOL Carga comprueba el valor de PV respecto al valor de recuento


descendente.
Cierto: cuando el valor de recuento descendente es igual al
valor PV, defina el valor CV para que sea igual que el valor PV.
Falso: continua incrementando el recuento descendente de uno
en uno.
PV Entrada DINT Valor máximo programado del contador.
Q Salida BOOL Indica si la instrucción del recuento descendente ha resultado
en un número menor o igual al valor máximo del contador.
Cierto: CV es menor o igual que cero (condición de caudal
insuficiente).
Falso: el valor de recuento descendente es mayor que cero.
CV Salida DINT Valor de contador actual.

Ejemplo de diagrama de bloque de funciones CTD

Ejemplo de diagrama de lógica de escalera CTD

Ejemplo de texto estructurado CTD

(* Equivalencia de ST: CTD1 es una instancia de un bloque CTD *)

CTD1(trigger,load_cmd,100);

Caudal insuficiente:= CTD1.Q;

resultado:= CTD1.CV;

254 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de contador Capítulo 11

Resultados

Consulte también

Instrucciones de contador en la página 253

CTU (recuento CTU cuenta (enteros) de forma ascendente desde 0 hasta un valor concreto,
de 1 en 1.
ascendente)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
CU Entrada BOOL Recuento ascendente.
Cierto: flanco ascendente detectado, el recuento ascendente se
realiza en incrementos de uno.
Falso: flanco descendente detectado, retiene el valor del
contador en el mismo valor.
RESET Entrada BOOL Reset comprueba el valor de PV respecto al valor de recuento
ascendente.
Cierto: cuando el valor de recuento ascendente es igual al valor
PV, defina el valor CV como cero.
Falso: continua incrementando el recuento ascendente de uno
en uno.
PV Entrada DINT Valor máximo programado del contador.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 255


Capítulo 11 Instrucciones de contador

Q Salida BOOL Indica si la instrucción del recuento ascendente ha resultado en


un número mayor o igual al valor máximo del contador.
Cierto: resultado del contador <= PV (condición de
desbordamiento).
Falso: resultado del contador > PV
CV Salida DINT Resultado del contador actual.

Ejemplo de diagrama de bloque de funciones CTU

Ejemplo de diagrama de lógica de escalera CTU

Ejemplo de texto estructurado CTU

(* Equivalencia de ST: CTU1 es una instancia de un bloque CTU*)

CTU1(trigger,NOT(auto_mode),100);
overflow := CTU1.Q;
result := CTU1.CV;

256 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de contador Capítulo 11

Resultados

Consulte también

Instrucciones de contador en la página 253

CTUD (recuento Cuenta enteros de forma ascendente desde 0 hasta un valor concreto, de 1 en
1, o de forma descendente desde un valor concreto hasta 0, de 1 en 1.
ascendente/descen
dente) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
CU Entrada BOOL Cierto: flanco ascendente detectado, recuento ascendente.
CD Entrada BOOL Cierto: flanco ascendente detectado, recuento descendente.
RESET Entrada BOOL Restablecimiento de comando dominante.
(CV = 0 si RESET es CIERTO).
LOAD Entrada BOOL Comando de carga.
Cierto: si CV = PV.
PV Entrada DINT Valor máximo programado.
QU Salida BOOL Desbordamiento.
Cierto: si CV >= PV.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 257


Capítulo 11 Instrucciones de contador

QD Salida BOOL Caudal insuficiente.


Cierto: si CV <= 0.
CV Salida DINT Resultado del contador.

Ejemplo de diagrama de bloque de funciones CTUD

Ejemplo de diagrama de lógica de escalera CTUD

Ejemplo de texto estructurado CTUD

(* Equivalencia de ST: se supone que CTUD1 es una instancia de un bloque


CTUD*)

CTUD1(trigger1, trigger2, reset_cmd, load_cmd,100);


full := CTUD1.QU;
empty := CTUD1.QD;
nb_elt := CTUD1.CV;

Consulte también

Instrucciones de contador en la página 253

258 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 12

Instrucciones de conversión de
datos

Utilice las instrucciones de conversión de datos para convertir el tipo de


datos de una variable en un tipo de datos distinto.

Instrucción Descripción
ANY_TO_BOOL en la página 259 Convierte un valor no booleano en un valor booleano.
ANY_TO_BYTE en la página 260 Convierte un valor en un Byte
ANY_TO_DATE en la página 261 Convierte los tipos de datos Cadena, Entero, Real o Tiempo al tipo de
datos de fecha.
ANY_TO_DINT en la página 263 Convierte un valor en entero doble.
ANY_TO_DWORD en la página Convierte un valor en valor palabra doble.
264
ANY_TO_INT en la página 265 Convierte un valor en entero.
ANY_TO_LINT en la página 267 Convierte un valor en entero largo.
ANY_TO_LREAL en la página Convierte un valor en real largo.
268
ANY_TO_LWORD en la página Convierte un valor en palabra larga.
269
ANY_TO_REAL en la página 270 Convierte un valor en real.
ANY_TO_SINT en la página 271 Convierte un valor en entero corto.
ANY_TO_STRING en la página Convierte un valor en cadena.
272
ANY_TO_TIME en la página 274 Convierte un valor tipo de datos de tiempo.
ANY_TO_UDINT en la página 275 Convierte un valor en entero doble sin signo.
ANY_TO_UINT en la página 276 Convierte un valor en entero sin signo.
ANY_TO_ULINT en la página 277 Convierte un valor en entero largo sin signo.
ANY_TO_USINT en la página 278 Convierte un valor en entero corto sin signo.
ANY_TO_WORD en la página Convierte un valor en palabra.
280

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

ANY_TO_BOOL Convierte un valor no booleano en valor booleano.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 259


Capítulo 12 Instrucciones de conversión de datos

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro

EN Entrada BOOL Habilitar instrucción.


Cierto: ejecuta el cálculo de la conversión a booleano.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
i1 Entrada SINT Cualquier valor no booleano.
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida BOOL Valor booleano.

Ejemplo de texto estructurado ANY_TO_BOOL

(* Equivalencia de ST: *)

ares := ANY_TO_BOOL (10); (* ares es Cierto *)


tres := ANY_TO_BOOL (t#0s); (* tres es Falso *)
mres := ANY_TO_BOOL ('FALSE'); (* mres es Falso *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_BYTE Convierte un valor en un valor byte de 8 bits.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

260 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a Byte.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Cualquier valor no byte.
SINT
USINT
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida BYTE Un valor byte de 8 bits.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado ANY_TO_BYTE

(* Equivalencia de ST: *)

bres := ANY_TO_BYTE (cierto); (* bres es 1 *)


tres := ANY_TO_BYTE (t#0s46ms); (* tres es 46 *)
mres := ANY_TO_BYTE ('0198'); (* mres es 198 *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_DATE Convierte los tipos de datos Cadena, Entero, Real o Tiempo al tipo de datos
de fecha.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 261


Capítulo 12 Instrucciones de conversión de datos

Los tipos de datos Booleano, Byte y Word son compatibles, pero no se


recomiendan.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión de fecha.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL  Las cadenas se convierten directamente al tipo de datos FECHA y
SINT deben estar en formato AAAA-MM-DD, FECHA#AAAA-MM-DD o
D#AAAA-MM-DD.
USINT
BYTE  Los tipos de datos Entero y Real deben ser positivos, expresarse en
unidades de segundos y agregarse a la fecha 1970-01-01.
INT
UINT  El tipo de dato Tiempo se agrega a la fecha 1970-01-01.
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
CADENA
o1 Salida DATE Valor de fecha convertido. Los errores que se producen durante la
conversión (como una fecha negativa) dan lugar a un resultado
INVALID.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones ANY_TO_DATE

ANY_TO_DATE

262 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

Ejemplo de diagrama de lógica de escalera ANY_TO_DATE

Ejemplo de texto estructurado ANY_TO_DATE

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_DINT Convierte un valor en valor entero doble de 32 bits.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a entero doble de 32 bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 263


Capítulo 12 Instrucciones de conversión de datos

i1 Entrada BOOL Cualquier valor que no sea entero doble.


SINT
USINT
BYTE
INT
UINT
WORD
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
STRING
o1 Salida DINT Un valor entero doble de 32 bits.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado ANY_TO_DINT

(* Equivalencia de ST: *)

bres := ANY_TO_DINT (cierto); (* bres es 1 *)


tres := ANY_TO_DINT (t#1s46ms); (* tres es 1046 *)
mres := ANY_TO_DINT ('0198'); (* mres es 198 *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_DWORD Convierte un valor en valor palabra doble de 32 bits.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

264 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a palabra doble de 32
bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

i1 Entrada BOOL Cualquier valor que no sea palabra doble.


SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida DWORD Un valor palabra doble de 32 bits.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado ANY_TO_DWORD

(* Equivalencia de ST: *)

bres := ANY_TO_DWORD (cierto); (* bres es 1 *)


tres := ANY_TO_DWORD (t#1s46ms); (* tres es 1046 *)
mres := ANY_TO_DWORD ('0198'); (* mres es 198 *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_INT Convierte un valor en valor entero de 16 bits.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 265


Capítulo 12 Instrucciones de conversión de datos

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a entero de 16 bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de
escalera.
i1 Entrada BOOL Cualquier valor que no sea de 16 bits.
SINT
USINT
BYTE
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida INT Un valor entero de 16 bits.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de
escalera.

Ejemplo de texto estructurado ANY_TO_INT

(* Equivalencia de ST: *)

bres := ANY_TO_INT (cierto); (* bres es 1 *)


tres := ANY_TO_INT (t#0s46ms); (* tres es 46 *)
mres := ANY_TO_INT ('0198'); (* mres es 198 *)

Consulte también

Instrucciones de conversión de datos en la página 259

266 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

ANY_TO_LINT Convierte un valor en valor entero largo de 64 bits.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a entero largo de 64
bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Cualquier valor que no sea entero largo.
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida LINT Un valor entero largo de 64 bits.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado ANY_TO_LINT

(* Equivalencia de ST: *)

bres := ANY_TO_LINT (cierto); (* bres es 1 *)


tres := ANY_TO_LINT (t#0s46ms); (* tres es 46 *)
mres := ANY_TO_LINT ('0198'); (* mres es 198 *)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 267


Capítulo 12 Instrucciones de conversión de datos

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_LREAL Convierte cualquier valor en valor real largo.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a valor real largo.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de
escalera.
i1 Entrada BOOL Cualquier valor que no sea real largo.
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
TIME
DATE
CADENA
o1 Salida LREAL Un valor real largo.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de
escalera.

Ejemplo de texto estructurado ANY_TO_LREAL

(* Equivalencia de ST: *)

bres := ANY_TO_LREAL (cierto); (* bres es 1,0 *)

268 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

tres := ANY_TO_LREAL (t#1s46ms); (* tres es 1046,0 *)


ares := ANY_TO_LREAL (198); (* mres es 198,0 *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_LWORD Convierte un valor en valor palabra larga de 64 bits.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a palabra larga de 64
bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Cualquier valor que no sea palabra larga.
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
REAL
LREAL
IME
DATE
CADENA
o1 Salida LWORD Un valor palabra larga de 64 bits.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 269


Capítulo 12 Instrucciones de conversión de datos

Ejemplo de texto estructurado ANY_TO_LWORD

(* Equivalencia de ST: *)

bres := ANY_TO_LWORD (cierto); (* bres es 1 *)


tres := ANY_TO_LWORD (t#0s46ms); (* tres es 46 *)
mres := ANY_TO_LWORD ('0198'); (* mres es 198 *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_REAL Convierte un valor en valor real.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a real.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Cualquier valor que no sea real.
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
LREAL
TIME
DATE
CADENA
o1 Salida REAL Un valor real.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

270 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

Ejemplo de texto estructurado ANY_TO_REAL

(* Equivalencia de ST: *)

bres := ANY_TO_REAL (cierto); (* bres es 1,0 *)


tres := ANY_TO_REAL (t#1s46ms); (* tres es 1046,0 *)
ares := ANY_TO_REAL (198); (* mres es 198,0 *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_SINT Convierte un valor en valor entero corto.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a número entero
corto de 8 bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de
escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 271


Capítulo 12 Instrucciones de conversión de datos

i1 Entrada BOOL Cualquier valor entero no corto.


USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida SINT Un valor entero corto.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de
escalera.

Ejemplo de texto estructurado ANY_TO_SINT

(* Equivalencia de ST: *)

bres := ANY_TO_SINT (cierto); (* bres es 1 *)


tres := ANY_TO_SINT (t#0s46ms); (* tres es 46 *)
mres := ANY_TO_SINT ('0198'); (* mres es 198 *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_STRING Convierte un valor en valor de cadena.

Detalles de la operación:

 Cuando se convierte un tipo de datos REAL en una cadena, la


instrucción ANY_TO_STRING utiliza el formato IEEE 754.
 ANY_TO_STRING convierte 125.0 a 1.25000E+02
 Cuando la longitud de cadena de destino es 5 de caracteres:

272 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

 ANY_TO_STRING convierte 125.0 a 1.25000E+02 y genera


1.250 en la cadena de destino.
 Considere la posibilidad de crear un bloque de funciones definidas
por el usuario para convertir de anotación exponencial a número.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a cadena.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Cualquier valor que no sea cadena.
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
o1 Salida CADENA Si IN es un valor booleano, Falso o Cierto.
Si IN es un valor entero o real, una representación decimal.
Si IN es un valor TIME, puede ser:
TIME time1
STRING s1
time1 :=13 ms;
s1:=ANY_TO_STRING(time1);
(* s1 = '0s13' *).

ENO Salida BOOL Habilita la salida.


Solo se aplica a programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 273


Capítulo 12 Instrucciones de conversión de datos

Ejemplo de texto estructurado ANY_TO_STRING

(* Equivalencia de ST: *)

bres := ANY_TO_STRING (cierto); (* bres es 'Cierto' *)


ares := ANY_TO_STRING (125); (* ares es '125' *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_TIME Convierte un valor no temporal o de fecha a valor temporal.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a temporal.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Cualquier valor positivo que no sea un tipo de datos temporal o
SINT de fecha.
USINT IN (o parte entera de IN si es real) es el número de
milisegundos.
BYTE STRING (número de milisegundos, por ejemplo, un valor de
INT 300 032 representa 5 minutos y 32 milisegundos).
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
CADENA
o1 Salida TIME Valor temporal representado por IN. Un valor de
1193h2m47s295ms indica un tiempo no válido.

274 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

ENO Salida BOOL Habilita la salida.


Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado ANY_TO_TIME

(* Equivalencia de ST: *)

ares := ANY_TO_TIME (1256); (* ares := t#1s256ms *)


rres := ANY_TO_TIME (1256,3); (* rres := t#1s256ms *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_UDINT Convierte un valor en valor entero doble sin signo de 32 bits.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a entero doble de 32
bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 275


Capítulo 12 Instrucciones de conversión de datos

i1 Entrada BOOL Cualquier valor que no sea entero doble sin signo.
SINT
USINT
BYTE
INT
UINT
WORD
DINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida UDINT Un valor entero doble sin signo de 32 bits.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado ANY_TO_UDINT

(* Equivalencia de ST: *)

bres := ANY_TO_UDINT (cierto); (* bres es 1 *)


tres := ANY_TO_UDINT (t#1s46ms); (* tres es 1046 *)
mres := ANY_TO_UDINT ('0198'); (* mres es 198 *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_UINT Convierte un valor en valor entero sin signo.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

276 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a entero sin signo de
16 bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Cualquier valor entero sin signo.
SINT
USINT
BYTE
INT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida UINT Un valor entero sin signo.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado ANY_TO_UINT

(* Equivalencia de ST: *)

bres := ANY_TO_UINT (cierto); (* bres es 1 *)


tres := ANY_TO_UINT (t#0s46ms); (* tres es 46 *)
mres := ANY_TO_UINT ('0198'); (* mres es 198 *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_ULINT Convierte un valor en valor entero largo sin signo de 64 bits.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 277


Capítulo 12 Instrucciones de conversión de datos

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a entero largo sin
signo de 64 bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Cualquier valor que no sea entero largo sin signo.
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida ULINT Un valor entero largo sin signo de 64 bits.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado ANY_TO_ULINT

(* Equivalencia de ST: *)

bres := ANY_TO_ULINT (cierto); (* bres es 1 *)


tres := ANY_TO_ULINT (t#0s46ms); (* tres es 46 *)
mres := ANY_TO_ULINT ('0198'); (* mres es 198 *)

Consulte también

Instrucciones de conversión de datos en la página 259

ANY_TO_USINT Convierte un valor en valor entero corto sin signo.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

278 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a número entero
corto sin signo de 8 bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Cualquier valor entero no corto.
SINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida USINT Un valor entero corto sin signo.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado ANY_TO_USINT

(* Equivalencia de ST: *)

bres := ANY_TO_USINT (cierto); (* bres es 1 *)


tres := ANY_TO_USINT (t#0s46ms); (* tres es 46 *)
mres := ANY_TO_USINT ('0198'); (* mres es 198 *)

Consulte también

Instrucciones de conversión de datos en la página 259

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 279


Capítulo 12 Instrucciones de conversión de datos

ANY_TO_WORD Convierte un valor en valor palabra de 16 bits.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de la conversión a palabra de 16 bits.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
i1 Entrada BOOL Cualquier valor que no sea valor WORD.
SINT
USINT
BYTE
INT
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
CADENA
o1 Salida WORD Un valor Word
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de texto estructurado ANY_TO_WORD

(* Equivalencia de ST: *)

bres := ANY_TO_WORD (cierto); (* bres es 1 *)


tres := ANY_TO_WORD (t#0s46ms); (* tres es 46 *)
mres := ANY_TO_WORD ('0198'); (* mres es 198 *)

280 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de conversión de datos Capítulo 12

Consulte también

Instrucciones de conversión de datos en la página 259

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 281


Capítulo 12 Instrucciones de conversión de datos

282 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 13

Instrucciones de manipulación de
datos

Utilice las instrucciones de manipulación de datos para modificar los datos


de salida a fin de cambiar el estado sin alterar el programa.

Instrucción Descripción

AVERAGE en la página 283 Calcula una media de ejecución en un número de muestras definidas.
COP en la página 285 Copia los datos binarios del elemento de origen al de destino.
MAX en la página 291 Calcula el máximo de dos valores enteros.
MIN en la página 290 Calcula el mínimo de dos valores enteros.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

AVERAGE Calcula una media de ejecución por encima de un número de muestras


definidas y almacena el valor en cada ciclo.

Detalles de la operación:

 El número de muestras definidas (N) no puede ser mayor que 128.


 Si define o cambia el valor de N, debe definir RUN en Falso y, a
continuación, volver a definirlo en Cierto.
 Si el comando RUN es Falso (modo de restablecimiento), el valor de
salida es igual al valor de entrada.
 Si se alcanza el número máximo de valores guardados, se elimina el
primer valor guardado y se conserva el último.
 El uso de tipos de datos de coma flotante podría dar como resultado
cálculos imprecisos debido a las limitaciones de redondeo inherentes
en la matemática de coma flotante.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 283


Capítulo 13 Instrucciones de manipulación de datos

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Ejecución Entrada BOOL Cierto = ejecutar
Falso = restablecer
XIN Entrada REAL Cualquier variable real.
N Entrada DINT Número de muestras definidas por la aplicación.
XOUT Salida REAL Media de ejecución de valor XIN.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones AVERAGE

Ejemplo de diagrama de lógica de escalera AVERAGE

AVERAGE Structured Text example

284 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de datos Capítulo 13

(* Equivalencia de ST: AVERAGE1 es una instancia de un bloque


AVERAGE *)

AVERAGE1((auto_mode & store_cmd), sensor_value, 100);


ave_value := AVERAGE1.XOUT;

Consulte también

Instrucciones de manipulación de datos en la página 283

COP Copia los datos binarios del elemento de origen al de destino. El elemento de
origen permanece sin cambios.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro

Enable Entrada BOOL Habilitar bloque de instrucción. Activa el nivel de iis COP.
Cierto: realiza la copia.
Falso: el bloque de funciones está inactivo.
Src Entrada BOOL DWORD Elemento inicial que se copiará.
SINT REAL Si el origen es un tipo de datos de cadena, la otra parte
USINT TIME también debe serlo, o bien debe ser un tipo de datos USINT
BYTE DATE (UCHAR y BYTE). De lo contrario, se notificará un error de
coincidencia de tipo de datos.
INT CADENA
UINT LWORD
WORD ULINT
DINT LINT
UDINT LREAL

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 285


Capítulo 13 Instrucciones de manipulación de datos

SrcOffset Entrada UINT El desplazamiento del elemento de origen se utiliza con tipos
de datos de matriz para identificar la posición en la matriz de
origen de la que hay que copiar los datos.
Establezca el desplazamiento en 0:
 Si no es un tipo de datos de matriz.
 Para copiar desde el primer elemento para un tipo de datos
de matriz.
Dest Entrada BOOL DWORD Elemento inicial que sobrescribirá el origen.
SINT REAL Si el destino es un tipo de datos de cadena, el origen también
USINT TIME debe serlo, o bien debe ser un tipo de datos USINT (UCHAR y
BYTE DATE BYTE). De lo contrario, se notificará un error de coincidencia de
tipo de datos.
INT CADENA
UINT LWORD
WORD ULINT
DINT LINT
UDINT
DestOffset Entrada UINT El desplazamiento del elemento de destino se utiliza con tipos
de datos de matriz para identificar la posición en la matriz de
destino en la que hay que copiar los datos.
Establezca el desplazamiento en 0:
 Si no es un tipo de datos de matriz.
 Para copiar desde el primer elemento para un tipo de datos
de matriz.
Longitud Entrada UINT Número de elementos de destino que se copiarán.
Si el destino es un tipo de datos de cadena, indica el número
de cadenas que se copiarán.
Swap Entrada BOOL Se utiliza para intercambiar los datos de los elementos de
origen y de destino, por lo que los datos de destino sustituyen
los de origen y los datos de origen a los de destino.
Cierto: intercambio de bytes de acuerdo con el tipo de datos.
No se lleva a cabo una operación de intercambio si:
 El tipo de datos de origen o de destino es una cadena.
 Tanto el origen como el destino son datos con una longitud
de 1 byte.
Sts Salida UINT Estado de la operación de copia. Las definiciones del
parámetro Sts se definen en los códigos de estado COP.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Códigos de estado COP (STs)

En la siguiente tabla se describen los códigos de estado COP.

Código de estado Descripción del estado


COP
0x00 No se realiza ninguna acción (no habilitada).
0x01 Bloque de funciones COP correcto.
0x02 El destino tiene bytes de reserva cuando copia desde la cadena.
0x03 Los datos de origen están truncados.
0x04 La longitud de la copia no es válida.

286 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de datos Capítulo 13

Código de estado Descripción del estado


COP
0x05 Error de coincidencia de tipo de datos cuando el origen o el destino tiene el tipo de
datos de cadena.
0x06 El tamaño de los datos de origen es demasiado pequeño para realizar la copia.
0x07 El tamaño de los datos de destino es demasiado pequeño para realizar la copia.
0x08 El desplazamiento de los datos de origen no es válido.
0x09 El desplazamiento de los datos de destino no es válido.
0x0A Los datos no son válidos en el origen o en el destino.

Ejemplo de diagrama de bloque de funciones COP

Ejemplo de diagrama de lógica de escalera COP

Ejemplo de texto estructurado COP

Consulte también

Ejemplo de matriz de cadena de COP en la página 288


Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 287
Capítulo 13 Instrucciones de manipulación de datos

Instrucciones de manipulación de datos en la página 283

Copiar en un tipo de datos diferente en la página 288

Copiar en un tipo de Cuando se realiza una copia desde un tipo de datos de cadena o en este, se
utiliza el formato de cadena corta ODVA para los datos en la matriz USINT.
datos diferente
Cuando se utiliza COP entre cualquier otro par de tipos de datos, la
operación de copia es válida, incluso si el tipo de datos del origen no es el
mismo que el del destino y aunque no estén en un formato válido. La lógica
se debe validar en el nivel de la aplicación.

Desde una matriz USINT a una matriz STRING

Para copiar una matriz USINT a una matriz STRING, los datos de la primera
deben tener el siguiente formato:

 Byte1: Longitud de la primera cadena


 Byte2: Primer carácter de byte
 Byte3: Segundo carácter de byte
 Byte n: Último carácter de byte
 Byte (n+1): Longitud de la segunda cadena
 Byte (n+2): Primer carácter de byte para la segunda cadena

Consulte también

COP en la página 285

Ejemplo de matriz de El ejemplo siguiente muestra una instrucción COP que copia una matriz de
cadena en la matriz Usint. La instrucción COP salta todos los elementos en
cadena de COP la matriz original con longitud cero.

Para este ejemplo:

 La longitud se especifica en 4 bytes.


 El número de elementos de destino que se copiarán son 4 bytes.
 Todos los elementos de la matriz con longitud cero (en blanco) se
saltarán.
 La instrucción COP detecta un elemento que no tiene longitud cero en
la matriz de cadena [1], que se copia en la matriz Usint de designación
[1] con 1. Uno es la longitud de la cadena en la matriz de cadena [1]
y la matriz Usint [2] es 65, que equivale a "A" en el código ASCII.
 La instrucción COP detecta un elemento que no tiene longitud cero en
la matriz de cadena [10], que es "a", y se copia en la matriz Usint de
designación [3] con 1. Uno es la longitud de la cadena en la matriz de

288 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de datos Capítulo 13

cadena [10] y la matriz Usint [4] es 97, que equivale a "a" en el código
ASCII.

Diagrama de lógica de escalera

Elementos de matriz con valores lógicos

Consulte también

COP en la página 285

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 289


Capítulo 13 Instrucciones de manipulación de datos

MIN (mínimo) Calcula el mínimo de dos valores enteros.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de entero mínimo actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN1 Entrada DINT Cualquier valor de entero con signo.
IN2 Entrada DINT No puede ser real.
MIN Salida DINT Valor mínimo de ambos valores de entrada.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de función MIN

Ejemplo de diagrama de lógica de escalera MIN

290 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de datos Capítulo 13

Ejemplo de texto estructurado MIN

(* Equivalencia de ST: *)

new_value := MAX (MIN (max_value, value), min_value);

(* liga el valor al conjunto [min_value..max_value] *)

Resultados

Consulte también

Instrucciones de manipulación de datos en la página 283

MAX (máximo) Calcula el máximo de dos valores enteros.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 291


Capítulo 13 Instrucciones de manipulación de datos

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
Cierto: ejecuta el cálculo de entero máximo actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
IN1 Entrada DINT Cualquier valor de entero con signo.
IN2 Entrada DINT No puede ser real.
MAX Salida DINT Valor máximo de ambos valores de entrada.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones MAX

Ejemplo de diagrama de lógica de escalera MAX

Ejemplo de texto estructurado MAX

(* Equivalencia de ST: *)

new_value := MAX (MIN (max_value, value), min_value);

(* liga el valor al conjunto [min_value..max_value] *)

292 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de datos Capítulo 13

Resultados

Consulte también

Instrucciones de manipulación de datos en la página 283

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 293


Capítulo 13 Instrucciones de manipulación de datos

294 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 14

Instrucciones del contador de alta


velocidad (HSC)

Use las instrucciones del contador de alta velocidad para supervisar y


controlar el contador de alta velocidad.

Instrucción Descripción

HSC en la página El HSC aplica preajustes altos, preajustes bajos y valores de origen de salida al
296 contador de alta velocidad.
HSC_SET_STS en HSC_SET_STS establece o restablece de forma manual el estado de recuento del
la página 313 HSC.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

¿Qué es un Los contadores de alta velocidad detectan y cuentan pulsos estrechos


(rápidos) y luego generan instrucciones especializadas para iniciar
contador de alta operaciones de control cuando los recuentos detectados alcanzan sus valores
velocidad? de preajuste. Las operaciones de control incluyen la ejecución automática e
inmediata de la rutina de interrupción del contador de alta velocidad y la
actualización inmediata de las salidas en función del patrón de origen y de
máscara configurado.

Funciones del contador de alta velocidad

Puesto que las instrucciones HSC tienen requisitos de alto rendimiento, su


accionamiento se lleva a cabo mediante circuitos personalizados que se
ejecutan en paralelo con el procesador del sistema principal. Las funciones
avanzadas de los contadores de alta velocidad (HSC) comprenden:

 Control directo de alta velocidad de salidas con funcionamiento a 100


kHz
 Datos enteros con signo de 32 bits (intervalo de recuento de ±
2.147.483.647)
 Preajustes altos y bajos programables
 Punto de ajuste de desbordamiento y de caudal insuficiente
 Procesamiento automático de interrupciones en función del recuento
acumulado

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 295


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

 Operación de instrucciones HSC de parámetros editables en tiempo de


ejecución (desde el programa de control del usuario)

Compatibilidad del controlador Micro800 con el HSC

Todos los controladores Micro830, Micro850 y Micro870, excepto


2080-LCxx-AWB, admiten hasta seis entradas del HSC. La funcionalidad del
HSC se implementa en los controladores Micro800 mediante hardware de
HSC (entradas integradas en el controlador) y la instrucción HSC de la
aplicación. La instrucción HSC configura el hardware de HSC y actualiza el
acumulador de imágenes.

Importante: La función del HSC solo se puede utilizar con E/S integradas del controlador. No
es posible utilizarla con módulos de E/S de expansión.

Consulte también

Instrucciones del contador de alta velocidad (HSC) en la página 295

Usar las instrucciones del contador de alta velocidad en la página 316

HSC (contador de El HSC aplica preajustes altos, preajustes bajos y valores de origen de salida
al contador de alta velocidad.
alta velocidad)
Detalles de la operación:

 El interruptor programable de límite (PLS) se habilita primero


estableciendo el parámetro HSCAppData.PLSEnable en Cierto.
 El parámetro PLSPosition se restablece después de completarse un
ciclo completo y alcanzarse el valor HSCSTS.HP.

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

296 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Estado de línea del bloque de instrucción.
CIERTO: el temporizador empieza a subir.
FALSO: el bloque de funciones está inactivo.
Recomendamos no utilizar el parámetro EN con el bloque de funciones
HSC porque cuando EN se establece en FALSO el temporizador sigue
incrementándose.
Solo se aplica a programas de diagrama de lógica de escalera.
Enable Entrada BOOL Habilitar bloque de instrucción.
CIERTO: se ejecuta la operación de HSC especificada en el parámetro del
comando HSC.
FALSO: no se generan comandos HSC.
HscCmd Entrada USINT Genera comandos en el HSC.
HSCAppData Entrada HSCAPP Configuración de la aplicación HSC, que normalmente solo es necesaria
una vez.
HSCStsInfo Entrada HSCSTS Estado dinámico del HSC, que se actualiza de forma continua durante el
recuento de este.
PlsData Entrada DINT Estructura de datos del interruptor del límite programable (PLS).
UDINT
Sts Salida UINT Estado ejecución del HSC.
Códigos de estado HSC:
 0x00: No se realiza ninguna acción (no habilitada).
 0x01: Ejecución del HSC correcta.
 0x02: Comando HSC no válido.
 0x03: ID de HSC fuera de rango.
 0x04: Error de configuración de HSC.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de función HSC

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 297


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

Ejemplo de diagrama de lógica de escalera HSC

Ejemplo de texto estructurado HSC

Consulte también

Instrucciones del contador de alta velocidad (HSC) en la página 295

Valores de HSCCmd en la página 298

Tipo de datos HSCAPP en la página 299

Tipo de datos HSCSTS en la página 303

Tipo de datos PLS en la página 312

Valores de HSCCmd En la siguiente tabla se describen los comandos HSC para cada valor de
comando HSC.

Comando HSC Descripción del comando

0x01 HSC RUN


 Inicie el HSC (si este está en modo inactivo y el peldaño está habilitado).
 Actualice únicamente la información de estado del HSC (si este está en modo de ejecución y el peldaño
está habilitado).
0x02 HSC Stop: Detiene un recuento de HSC (si HSC está en modo de ejecución y se activa la llamada).
0x03 HSC Load/Set: recarga los datos de aplicación del HSC (si el peldaño está habilitado) para 6 elementos
de entrada: HPSetting, LPSetting, HPOutput, LPOutput, OFSetting y UFSetting.
Nota: Este comando no recarga el siguiente elemento de entrada: acumulador HSC.
0x04 Restablecimiento de acumulador HSC (si la llamada está activada).

298 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Resultados de comandos HSC

Valor de Resultado Condiciones


comando
HscCmd =1 Inicia el mecanismo del Definir el parámetro de entrada Habilitar a falso no detiene el recuento en modo
HSC y este último cambia de ejecución.
a modo de ejecución. HscCmd =2 se debe generar para detener el recuento.

El mecanismo del HSC HSC AppData.Accumalator se actualiza con HSC Sts.Accumulator.


actualiza los valores
automáticamente.
HscCmd =4 Establece el valor de HSC HscCmd =4 no detiene el recuento del HSC.
(restablecer) Acc en el valor de HSC Si el HSC está en recuento cuando se genera HscCmd =4, se pueden perder
AppData.Accumalator. algunos recuentos.

Para establecer un valor específico en HSC Acc durante el recuento, escriba el


valor en HSC AppData.Accumalator inmediatamente antes de que se genere
HscCmd =4.

Consulte también

HSC en la página 296

Tipo de datos HSCAPP Utilice el tipo de datos HSCAPP para definir el parámetro HSCAppData en
la instrucción HSC. Los parámetros del tipo de datos HSCApp se utilizan
para definir los datos de configuración del HSC.

Utilice esta tabla para determinar los valores de los parámetros para el tipo de
datos HSCAPP.

Parámetro Tipo de Formato de Acceso al Descripción


datos datos programa del
usuario
PLSEnable BOOL bit lectura/escritura Habilita o deshabilita el interruptor del límite programable
(PLS) del contador de alta velocidad.
HSCID UINT palabra lectura/escritura Define el HSC.
HSCMode UINT palabra lectura/escritura Define el modo del HSC.
Acumulador DINT palabra larga lectura/escritura Valor del acumulador inicial.
HSCApp.Accumulator establece el valor del acumulador
inicial cuando se inicia el HSC. Cuando el HSC está en
modo de recuento, el subsistema del HSC actualiza
automáticamente el acumulador de modo que refleje el
valor del acumulador del HSC real.
HPSetting DINT palabra larga lectura/escritura Configuración de preajuste alto.
El parámetro HSCApp.HPSetting establece el punto de
ajuste superior (en recuentos) que define cuándo genera
una interrupción el subsistema del HSC.
Los datos cargados en el preajuste alto deben ser
inferiores o iguales a los que residen en el parámetro de
desbordamiento (HSCAPP.OFSetting); de lo contrario, se
genera un error del HSC.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 299


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

LPSetting DINT palabra larga lectura/escritura Configuración de preajuste bajo.


HSCApp.LPSetting establece el punto de ajuste inferior (en
recuentos) que define cuándo genera una interrupción el
subsistema del HSC.
Los datos cargados en el preajuste bajo deben ser
superiores o iguales a los que residen en el parámetro de
caudal insuficiente (HSCAPP.UFSetting); de lo contrario,
se genera un error del HSC.
Si los valores de caudal insuficiente y de preajuste bajo
son números negativos, el preajuste bajo debe ser un
número con un valor absoluto menor que el de caudal
insuficiente.
OFSetting DINT palabra larga lectura/escritura Configuración de desbordamiento.
La configuración de desbordamiento del
HSCApp.OFSetting define el límite de recuento superior
del contador.
Si el valor acumulado del contador se incrementa por
encima del valor especificado en OFSetting, se genera una
interrupción de desbordamiento.
Cuando se genera este tipo de interrupción, el subsistema
del HSC restablece el valor del acumulador en el valor de
caudal insuficiente y el contador continúa el recuento
desde este último (no se pierden recuentos en esta
transición).
Los valores de OFSetting:
 Deben oscilar entre -2.147.483.648 y 2.147.483.647.
 Deben ser superiores al valor de caudal insuficiente.
 Deben ser superiores o iguales a los datos que residen
en el preajuste alto (HSCAPP.HPSetting); de lo
contrario, se genera un error del HSC.
UFSetting DINT palabra larga lectura/escritura Configuración de caudal insuficiente.
La configuración de caudal insuficiente HSCApp.UFSetting
define el límite de recuento inferior del contador.
Si el valor acumulado del contador desciende por debajo
del valor especificado en UFSetting, se genera una
interrupción de caudal insuficiente.
Cuando se genera este tipo de interrupción, el subsistema
del HSC restablece el valor acumulado en el valor de
desbordamiento y el contador comienza el recuento desde
este último (no se pierden recuentos en la transición).
Los valores de UFSetting:
 Deben oscilar entre -2.147.483.648 y 2.147.483.647.
 Deben ser inferiores al valor de desbordamiento.
 Deben ser inferiores o iguales a los datos que residen
en el preajuste bajo (HSCAPP.LPSetting); de lo
contrario, se genera un error del HSC.

300 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

OutputMask UDINT palabra lectura/escritura Máscara exterior de la salida.


HSCApp.OutputMask define las salidas integradas del
controlador que puede controlar directamente el HSC. El
subsistema del HSC puede activar o desactivar las salidas,
sin la interacción del programa de control, en función de
los preajustes alto y bajo del acumulador del HSC.
El patrón de bits almacenado en HSCApp.OutputMask
define qué salidas controla el HSC y cuáles no.
El patrón de bits HSCAPP.OutputMask se corresponde
con los bits de salida del controlador y solo se puede
definir en la configuración inicial.
Los bits que están activados (1) se encuentran habilitados,
y el subsistema del HSC los puede activar o desactivar.
El subsistema del HSC no puede activar o desactivar los
bits que no están activados (0).
Por ejemplo, para utilizar el HSC para controlar las salidas
0, 1, 3, realice la asignación de la siguiente manera:
 HscAppData.OutputMask = 2#1011, o bien
 HscAppData.OutputMask = 11
HPOutput UDINT palabra larga lectura/escritura Ajuste de salida de 32 bits para punto de preajuste alto.
HSCApp.HPOutput define el estado (1: activado, 0:
desactivado) de las salidas del controlador cuando se
alcanza el preajuste alto. Para obtener más información
sobre cómo activar o desactivar las salidas directamente
en función del preajuste alto.
Defina el patrón de bits de salida alta durante la
configuración inicial, o bien puede utilizar el bloque de
funciones HSC para cargar los parámetros nuevos
mientras el controlador se encuentra en funcionamiento.
LPOutput UDINT palabra larga lectura/escritura Ajuste de salida de 32 bits para punto de preajuste bajo.
HSCApp.LPOutput define el estado (1: activado, 0:
desactivado) de las salidas del controlador cuando se
alcanza el preajuste bajo. Para obtener más información
sobre cómo activar o desactivar las salidas directamente
en función del preajuste bajo.
Defina el patrón de bits de salida baja durante la
configuración inicial, o bien puede utilizar el bloque de
funciones HSC para cargar los parámetros nuevos
mientras el controlador se encuentra en funcionamiento.

Configuración de HSCApp frente a configuración de PLSData

Cuando se habilita la función PLS, la configuración de HSCApp relevante se


sustituye por la configuración de PLSData correspondiente, como se muestra
en la siguiente tabla.

Configuración de HSCApp Configuración de PLSData


HSCAPP.HpSetting HSCHP
HSCAPP.LpSetting HSCLP
HSCAPP.HPOutput HSCHPOutput
HSCAPP.LPOutput HSCLPOutput

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 301


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

HSCApp.HSCID

El parámetro HSCApp.HSCID identifica el contador de alta velocidad.

En la tabla siguiente se enumeran los valores para el HSCID.

Selección de salida Bit Descripción


Primera palabra de datos de 15-13 Tipo de módulo de HSC:
función de HSC  0x00: integrado.
 0x01: expansión.
 0x02: puerto enchufable.
12-8 ID de ranura del módulo:
 0x00: integrado.
 0x01-0x1F: ID del módulo de expansión.
 0x01-0x05: ID del puerto enchufable.
7-0 ID de HSC en el interior del módulo:
 0x00-0x0F: integrado.
 0x00-0x07: ID de HSC de expansión.
 0x00-0x07: ID de HSC de puerto enchufable.
En la versión inicial de Connected Components
Workbench, solo se admiten los ID 0x00-0x05.

HSCApp.HSCMode

El parámetro HSCApp.HSCMode establece el contador de alta velocidad en


uno de los diez tipos de modos de recuento. El valor del modo se configura
mediante el dispositivo de programación y se puede acceder a él en el
programa de control.

Para obtener más información los modos de funcionamiento y asignaciones


de entradas del HSC, consulte Asignación de cableado y entradas del HSC en
el manual de usuario de los controladores programables Micro830 y
Micro850.

Los modos de funcionamiento de los HSC principales y secundarios admiten


diferentes modos.

 Los HSC principales admiten diez tipos de modos de funcionamiento.


 Los HSC secundarios admiten solo cinco (los modos 0, 2, 4, 6 y 8).
 Si el HSC principal se establece en los modos 1, 3, 5, 7 o 9, el HSC
secundario se deshabilita.
HSCMode Modo de recuento
0 Contador ascendente. El acumulador se desactiva (0) inmediatamente cuando
alcanza el preajuste alto. En este modo no se puede definir un preajuste bajo.
1 Contador ascendente con restablecimiento y mantenimiento externos. El acumulador
se desactiva (0) inmediatamente cuando alcanza el preajuste alto. En este modo no
se puede definir un preajuste bajo.

302 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

2 Contador con dirección externa.

3 Contador con dirección, restablecimiento y mantenimiento externos.

4 Contador de dos entradas (ascendente y descendente).

5 Contador de dos entradas (ascendente y descendente) con restablecimiento y


mantenimiento externos.
6 Contador de cuadratura (entradas por fases A y B).

7 Contador de cuadratura (entradas por fases A y B) con restablecimiento y


mantenimiento externos.
8 Contador de cuadratura X4 (entradas por fases A y B).

9 Contador de cuadratura X4 (entradas por fases A y B) con restablecimiento y


mantenimiento externos.

Ejemplo de parámetros HSCAppData

En la siguiente imagen se muestran los parámetros HSCAppData en el


selector de variables.

Consulte también

HSC en la página 296

Tipo de datos HSCSTS HSCSTSInfo (tipo de datos HSCSTS) muestra el estado del contador de alta
velocidad.

Acciones del estado HSCSTSInfo

Durante el recuento del HSC, se producen las siguientes acciones del estado
del HSC.

 Si el bloque de funciones HSC realiza el recuento con el comando


0x01, el estado del HSC se actualiza de forma continua.
 Si se produce un error, se activa el marcador Error_Detected y se
establece un código de error.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 303


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

Parámetros HSCSTSInfo

Parámetro Tipo Modo del Acceso al Descripción


de HSC programa del
datos usuario
CountEnable BOOL 0... 9 solo lectura Recuento habilitado.
ErrorDetected BOOL 0... 9 lectura/escritur Un valor diferente a cero significa la detección de un error.
a
CountUpFlag BOOL 0... 9 solo lectura Marcador de aumento de recuento.
CountDwnFlag BOOL 2... 9 solo lectura Marcador de descenso de recuento.
Mode1Done BOOL 0o1 lectura/escritur El HSC está en modo 1A o 1B; el acumulador cuenta de forma
a ascendente hasta el valor de HP.
OVF BOOL 0... 9 lectura/escritur Se detecta un desbordamiento.
a
UNF BOOL 0... 9 lectura/escritur Se detecta un caudal insuficiente.
a
CountDir BOOL 0... 9 solo lectura 1: aumento de recuento; 0: descenso de recuento.
HPReached BOOL 2... 9 lectura/escritur Punto de preajuste alto.
a
LPReached BOOL 2... 9 lectura/escritur Punto de preajuste bajo.
a
OFCauseInter BOOL 0... 9 lectura/escritur El desbordamiento ha causado una interrupción de HSC.
a
UFCauseInter BOOL 2... 9 lectura/escritur El caudal insuficiente ha causado una interrupción del HSC.
a
HPCauseInter BOOL 0... 9 lectura/escritur Se ha alcanzado un punto de preajuste alto, que causa una
a interrupción de HSC.
LPCauseInter BOOL 2... 9 lectura/escritur Se ha alcanzado un punto de preajuste bajo, que causa una
a interrupción de HSC.
PlsPosition UINT 0... 9 solo lectura Posición del interruptor del límite programable (PLS). El parámetro
PLSPosition se restablece después de completarse un ciclo completo y
alcanzarse el valor HP.
ErrorCode UINT 0... 9 lectura/escritur Muestra los códigos de error detectados por el subsistema del HSC.
a
Acumulador DINT lectura/escritur Lectura real del acumulador.
a
HP DINT solo lectura Última configuración de preajuste alto.
LP DINT solo lectura Última configuración de preajuste bajo.
HPOutput UDINT lectura/escritur Última configuración de salida de preajuste alto.
a
LPOutput UDINT lectura/escritur Última configuración de salida de preajuste bajo.
a

Detalles de parámetros HSCSTSInfo

Los parámetros HSCSTSInfo (tipo de datos HSCSTS) se utilizan para


determinar el estado del contador de alta velocidad (HSC).

304 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

CountEnable

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.CountEna BOOL 0... 9 solo lectura
ble

Indica el estado del contador de alta velocidad (HSC), es decir, si el recuento


está habilitado (1) o deshabilitado (0, predeterminado).

ErrorDetected

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.ErrorDetec BOOL 0... 9 lectura/escritura
ted

Detecta si hay un error en el subsistema del HSC. Los errores de


configuración son el tipo de error más común representado por
ErrorDetected. Cuando el bit está activado (1), busque el código de error
específico en el parámetro HSCSTS.ErrorCode, el cual mantiene el
controlador. Puede desactivar el bit ErrorDetected cuando sea necesario.

CountUpFlag

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.CountUpFl BOOL 0... 9 solo lectura
ag

Se utiliza con todos los HSC (modos del 0 al 9). Si se activa el bit
HSCSTS.CountEnable, se activa (1) el bit de aumento de recuento. Si se
desactiva el bit HSCSTS.CountEnable, se desactiva (0) el bit de aumento de
recuento.

CountDownFlag

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.CountDow BOOL 2... 9 solo lectura
nFlag

Se utiliza con los contadores bidireccionales (modos del 2 al 9). Si se activa


el bit HSCSTS.CountEnable, se activa (1) el bit de descenso de recuento. Si
se desactiva el bit HSCSTS.CountEnable, se desactiva (0) el bit de descenso
de recuento.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 305


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

Mode1Done

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.Mode1Don BOOL 0o1 lectura/escritura
e

El subsistema del HSC establece el marcador de estado


HSCSTS.Mode1Done en (1) cuando el HSC está configurado para el
comportamiento de modo 0 o de modo 1, y el acumulador cuenta de forma
ascendente hasta el valor de preajuste alto.

OVF

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.OVF BOOL 0... 9 lectura/escritura

El subsistema del HSC establece el marcador de estado HSCSTS.OVF en (1)


cuando el recuento del valor acumulado (HSCSTS.Accumulator) supera la
variable de desbordamiento (HSCAPP.OFSetting). Este bit es transitorio y lo
activa el subsistema del HSC. Utilizar y desactivar (0) la condición de
desbordamiento, así como realizar su seguimiento, es responsabilidad del
programa de control.

Las condiciones de desbordamiento no generan un error del controlador.

UNF

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.UNF BOOL 0... 9 lectura/escritura

El subsistema del HSC establece el marcador de estado HSCSTS.UNF en (1)


cuando el recuento del valor acumulado (HSCSTS.Accumulator) desciende
por debajo de la variable de caudal insuficiente (HSCAPP.UFSetting). Este
bit es transitorio y lo activa el subsistema del HSC. Utilizar y desactivar (0)
la condición de caudal insuficiente, así como realizar su seguimiento, es
responsabilidad del programa de control.

Las condiciones de caudal insuficiente no generan un error del controlador.

CountDir

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.CountDir BOOL 0... 9 solo lectura

El subsistema del HSC controla el marcador de estado HSCSTS.CountDir.


Cuando el acumulador del HSC cuenta de forma ascendente, el marcador de

306 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

dirección se establece en (1). Cuando el acumulador del HSC cuenta de


forma descendente, el marcador de dirección se desactiva (0).

Si el valor acumulado se detiene, el bit de dirección conserva su valor. El


único momento en que cambia el marcador de dirección es cuando el
recuento acumulado se revierte.

El subsistema del HSC actualiza este bit de forma continua cuando el


controlador se encuentra en modo de ejecución.

HPReached

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.HPReache BOOL 2... 9 lectura/escritura
d

El subsistema del HSC establece el marcador de estado HSCSTS.HPReached


en (1) cuando el recuento del valor acumulado (HSCSTS.Accumulator) es
superior o igual a la variable de preajuste alto (HSCAPP.HPSetting).

El subsistema del HSC actualiza este bit de forma continua cuando el


controlador se encuentra en modo de ejecución. No se recomienda escribir en
este elemento.

LPReached

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.LPReache BOOL 2... 9 solo lectura
d

El subsistema del HSC establece el marcador de estado HSCSTS.LPReached


en (1) cuando el recuento del valor acumulado (HSCSTS.Accumulator) es
inferior o igual a la variable de preajuste bajo (HSCAPP.LPSetting).

El subsistema del HSC actualiza este bit de forma continua cuando el


controlador se encuentra en modo de ejecución. No se recomienda escribir en
este elemento.

OFCauseInter

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.OFCauseInte BOOL 0... 9 lectura/escritura
r

El bit de estado Interrupción de desbordamiento se activa (1) cuando el


recuento del acumulador del HSC supera el valor de desbordamiento y se
activa la interrupción HSC. Este bit se puede utilizar en el programa de
control para identificar que la variable de desbordamiento ocasionó la

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 307


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

interrupción HSC. Si el programa de control necesita realizar alguna acción


de control específica basada en el desbordamiento, este bit se utiliza como
lógica condicional.

Este bit lo puede desactivar (0) el programa de control, así como también el
subsistema del HSC cuando se detectan estas condiciones:

 Se ejecuta una interrupción de preajuste bajo


 Se ejecuta una interrupción de preajuste alto
 Se ejecuta una interrupción de caudal insuficiente

UFCauseInter

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.UFCauseInt BOOL 2... 9 lectura/escritura
er

El bit de estado Interrupción de caudal insuficiente se activa (1) cuando el


recuento del acumulador del HSC desciende por debajo del valor de caudal
insuficiente y se activa la interrupción HSC. Este bit se puede utilizar en el
programa de control para identificar que la condición de caudal insuficiente
ocasionó la interrupción HSC. Si el programa de control necesita realizar
alguna acción de control específica basada en el caudal insuficiente, este bit
se utiliza como lógica condicional.

Este bit lo puede desactivar (0) el programa de control, así como también el
subsistema del HSC cuando se detectan estas condiciones:

 Se produce una interrupción de preajuste bajo


 Se produce una interrupción de preajuste alto
 Se produce una interrupción de desbordamiento

HPCauseInter

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.HPCauseInt BOOL 0... 9 lectura/escritura
er

El bit de estado Interrupción de preajuste alto se activa (1) cuando el


acumulador del HSC alcanza el valor de preajuste alto y se activa la
interrupción HSC. Este bit se puede utilizar en el programa de control para
identificar que la condición de preajuste alto ocasionó la interrupción HSC.
Si el programa de control necesita realizar alguna acción de control
específica basada en el preajuste alto, este bit se utiliza como lógica
condicional.

308 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Este bit lo puede desactivar (0) el programa de control, así como también el
subsistema del HSC cuando se detectan estas condiciones:

 Se produce una interrupción de preajuste bajo


 Se produce una interrupción de caudal insuficiente
 Se produce una interrupción de desbordamiento

LPCauseInter

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.LPCauseInt BOOL 2... 9 lectura/escritura
er

El bit de estado Interrupción de preajuste bajo se activa (1) cuando el


acumulador del HSC alcanza el valor de preajuste bajo y se activa la
interrupción HSC. Este bit se puede utilizar en el programa de control para
identificar que la condición de preajuste bajo ocasionó la interrupción HSC.
Si el programa de control necesita realizar alguna acción de control
específica basada en el preajuste bajo, este bit se utiliza como lógica
condicional.

Este bit lo puede desactivar (0) el programa de control, así como también el
subsistema del HSC cuando se detectan estas condiciones:

 Se produce una interrupción de preajuste alto


 Se produce una interrupción de caudal insuficiente
 Se produce una interrupción de desbordamiento

PlsPosition

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.PLSPositio UINT 0... 9 solo lectura
n

Cuando el HSC está en modo de recuento y el PLS está habilitado, este


parámetro indica qué elemento de PLS se utiliza para la configuración de
HSC actual.

ErrorCode

Parámetro Tipo de Modo del Acceso al programa del usuario


datos HSC
HSCSTS.ErrorCode BOOL 0... 9 solo lectura

Muestra los códigos de error detectados por el subsistema del HSC.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 309


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

Subelemento del Código de error Acceso al programa del usuario


código de error de recuento del
HSC
Bit 15-8 (byte alto) 0-255 El valor distinto de cero del byte alto indica que el error HSC se debe a la
configuración de datos PLS. El valor del byte alto indica el elemento de los datos de
PLS que genera el error.
Bit 7-0 (byte bajo) 0x00 No se produce ningún error.
0x01 Modo de recuento de HSC no válido
0x02 Preajuste alto no válido
0x03 Desbordamiento no válido.
0x04 Caudal insuficiente no válido.
0x05 Sin datos PLS.

Acumulador

Parámetro Tipo de Acceso al programa del usuario


datos
HSCApp.Accumulat DINT lectura/escritura
or

Establece el valor del acumulador inicial cuando se inicia el HSC. Cuando el


HSC está en modo de recuento, el subsistema del HSC actualiza
automáticamente el acumulador de modo que refleje el valor del acumulador
del HSC real.

HP

Parámetro Tipo de Acceso al programa del usuario


datos
HSCSTS.HP DINT solo lectura

HSCSTS.HP es el punto de ajuste superior (en recuentos) que define cuándo


el subsistema del HSC genera una interrupción.

Los datos cargados en el preajuste alto deben ser inferiores o iguales a los
que residen en el parámetro de desbordamiento (HSCAPP.OFSetting); de lo
contrario, se genera un error del HSC.

Esta es la última configuración de preajuste alto, que la función PLS puede


actualizar desde el bloque de datos PLS.

LP

Parámetro Tipo de Modo del HSC Acceso al programa del usuario


datos
HSCSTS.LP DINT solo lectura

HSCSTS.LP es el punto de ajuste inferior (en recuentos) que define cuándo


el subsistema del HSC genera una interrupción.

310 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Los datos cargados en el preajuste bajo deben ser superiores o iguales a los
que residen en el parámetro de caudal insuficiente (HSCAPP.UFSetting); de
lo contrario, se genera un error del HSC. Si los valores de caudal insuficiente
y de preajuste bajo son números negativos, el preajuste bajo debe ser un
número con un valor absoluto menor.

Esta es la última configuración de preajuste bajo, que la función PLS puede


actualizar desde el bloque de datos PLS.

HPOutput

Parámetro Tipo de Acceso al programa del usuario


datos
HSCApp.HPOutput UDINT lectura/escritura

Define el estado (1: activado, 0: desactivado) de las salidas del controlador


cuando se alcanza el preajuste alto. Para obtener más información sobre
cómo activar o desactivar las salidas directamente en función del preajuste
alto.

Puede definir el patrón de bits de salida alta durante la configuración inicial,


o bien puede utilizar el bloque de funciones HSC para cargar los parámetros
nuevos mientras el controlador se encuentra en funcionamiento.

LPOutput

Parámetro Tipo de Acceso al programa del usuario


datos
HSCApp.LPOutput UDINT lectura/escritura

LPOutput (HSCApp.LPOutput) define el estado (1: activado, 0: desactivado)


de las salidas del controlador cuando se alcanza el preajuste bajo. Para
obtener más información sobre cómo activar o desactivar las salidas
directamente en función del preajuste bajo.

Puede definir el patrón de bits de salida baja durante la configuración inicial,


o bien puede utilizar el bloque de funciones HSC para cargar los parámetros
nuevos mientras el controlador se encuentra en funcionamiento.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 311


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

Ejemplo de parámetros HSCSTSInfo

En la siguiente imagen se muestran los parámetros HSCStsInfo en el selector


de variables.

Consulte también

HSC en la página 296

Tipo de datos PLS PLSData (tipo de datos PLS) se utiliza para configurar el interruptor de
límite programable.

Elementos de estructura PLSData

La estructura de datos PLS es una matriz flexible que contiene los siguientes
elementos.

Elemento Orden del Tipo de Descripción del elemento


elemento datos
HSCHP Palabra 0-1 DINT Preajuste alto
HSCLP Palabra 2-3 DINT Preajuste bajo
HSCHPOutput Palabra 4-5 UDINT Datos de salida alta
HSCLPOutput Palabra 6-7 UDINT Datos de salida baja

El número total de elementos de datos PLS no debe ser superior a 255.

Parámetros PLSData

En la tabla siguiente se enumeran los detalles de los parámetros PLSData.

312 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Elemento Tipo de Formato de Modo del Acceso al programa Descripción


datos datos HSC del usuario
HSCHP DINT Entero con signo 0 lectura/escritura Preajuste alto
de 32 bits
HSCLP DINT Entero con signo 0 lectura/escritura Preajuste bajo
de 32 bits
HSCHPOutput UDINT Binario de 32 bits 0 lectura/escritura Datos de salida alta
HSCLPOutput UDINT Binario de 32 bits 0 lectura/escritura Datos de salida baja

Configuración de HSCApp frente a configuración de PLSData

Cuando se habilita la función PLS, la configuración de HSCApp relevante se


sustituye por la configuración de PLSData correspondiente, como se muestra
en la siguiente tabla.

Configuración de HSCApp Configuración de PLSData


HSCAPP.HpSetting HSCHP
HSCAPP.LpSetting HSCLP
HSCAPP.HPOutput HSCHPOutput
HSCAPP.LPOutput HSCLPOutput

Ejemplo de parámetros PLSData

En la siguiente figura se muestran los parámetros PLSData en el selector de


variables.

Consulte también

Configurar un interruptor programable de límite (PLS) en la página


322

Instrucciones del contador de alta velocidad (HSC) en la página 295

HSC_SET_STS HSC_SET_STS establece o restablece de forma manual el estado de


recuento del HSC.
(estado de ajuste
del contador de alta Detalles de la operación:

velocidad)  El bloque de funciones HSC debe estar detenido (sin contar) para que
el bloque de funciones HSC_SET_STC establezca o restablezca el
estado de HTS. Si la función HSC no se detiene, los parámetros de

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 313


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

entrada se siguen actualizando y los cambios realizados mediante


HSC_SET_STS se ignoran.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Enable Entrada BOOL Habilitar bloque de instrucción.
CIERTO: define/restablece el estado HSC.
FALSO: no se cambia el estado HSC.
HscID Entrada UINT Establece o restablece de forma manual el estado del HSC.
Mode1Don Entrada BOOL Recuento de modo 1A o 1B finalizado.
e Este bit se puede establecer o restablecer si HSC no realiza el recuento.
HPReache Entrada BOOL Punto de preajuste alto.
d Este bit se puede establecer o restablecer si HSC no realiza el recuento.
LPReached Entrada BOOL Punto de preajuste bajo.
Este bit se puede establecer o restablecer si HSC no realiza el recuento.
OFOccurre Entrada BOOL Desbordamiento.
d Este bit se puede establecer o restablecer si HSC no realiza el recuento.
UFOccurre Entrada BOOL Caudal insuficiente.
d Este bit se puede establecer o restablecer si HSC no realiza el recuento.
Sts Salida UINT Los códigos de estado se definen en los códigos de estado HSC (Sts).
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Códigos de estado HSC (STS)

En la tabla siguiente se describen los códigos de estado del bloque de


funciones HSC.

314 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Código de estado Descripción del estado

0x00 No se realiza ninguna acción (no habilitada).


0x01 Ejecución del HSC correcta.
0x02 Comando de HSC no válido.
0x03 ID de HSC fuera de rango.
0x04 Error de configuración de HSC.

Ejemplo de diagrama de bloque de función HSC_SET_STS

Ejemplo de diagrama de lógica de escalera HSC_SET_STS

Ejemplo de texto estructurado HSC_SET_STS

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 315


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

Consulte también

Instrucciones del contador de alta velocidad (HSC) en la página 295

Usar las instrucciones del contador de alta velocidad en la página 316

Usar las En esta sección se proporcionan ejemplos y detalles específicos sobre el uso
de instrucciones del contador de alta velocidad en programas de lógica,
instrucciones del incluidos los siguientes:
contador de alta
Actualizar datos de aplicación del HSC en la página 316
velocidad
Configurar una interrupción de usuario del contador de alta velocidad (HSC)
en la página 317

Configurar un interruptor programable de límite (PLS) en la página 322

Ejemplo: Cómo crear un contador de alta velocidad (HSC) en la página 323

Ejemplo: Cómo agregar una función del interruptor de límite programable


(PLS) en la página 333

Ejemplo: Interruptor de límite programable (PLS) habilitado en la página 334

Actualizar datos de La configuración del HSC se define en los datos de aplicación del HSC y,
por lo general, solo se establece una vez antes de programar la instrucción
aplicación del HSC HSC. Los cambios realizados en los datos de aplicación del HSC (parámetro
HSCAppData) se omiten durante el recuento del HSC.

Para actualizar la configuración del HSC

1. Actualice HSCAppData.

2. Llame a la instrucción HSC con el comando 0x03 (definir/recargar).

Consulte también

Configurar una interrupción de usuario del contador de alta velocidad


(HSC) en la página 317

Configurar un interruptor programable de límite (PLS) en la página


322

Ejemplo: Cómo crear un programa de contador de alta velocidad


(HSC) en la página 323

Ejemplo: Interruptor de límite programable (PLS) habilitado en la


página 334

HSC (contador de alta velocidad) en la página 296

316 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Cuadro de diálogo ¿Cómo abro el cuadro de diálogo Interrupción del usuario de contador de
alta velocidad (HSC)?
Interrupción del
usuario de contador de En Tipo de interrupción, seleccione Interrupción del usuario de contador
alta velocidad (HSC) de alta velocidad (HSC).

Utilice el cuadro de diálogo Interrupción del usuario de contador de alta


velocidad (HSC) para:

 Configurar las propiedades de las interrupciones, como el ID y el


programa en que se utilizarán.
 Configurar los parámetros de las interrupciones.

Consulte también

Configurar una interrupción de usuario del contador de alta velocidad


(HSC) en la página 317

Instrucciones del contador de alta velocidad en la página 295

Configurar una Una interrupción del usuario hace que el controlador suspenda la tarea que
está llevando a cabo actualmente, realice una diferente y, a continuación,
interrupción del regrese a la primera tarea en el punto en que la suspendió.
usuario de contador de
alta velocidad (HSC)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 317


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

Los controladores Micro830 y Micro850 admiten hasta seis interrupciones


del usuario HSC que se pueden utilizar para ejecutar la lógica de usuario
seleccionada en un evento preconfigurado.

Consulte también

Actualizar datos de aplicación del HSC en la página 316

Configurar un interruptor programable de límite (PLS) en la página


322

Ejemplo: Cómo crear un programa de contador de alta velocidad


(HSC) en la página 323

Ejemplo: Interruptor de límite programable (PLS) habilitado en la


página 334

HSC (contador de alta velocidad) en la página 296

Agregar y configurar Para agregar y configurar una interrupción HSC desde el espacio de trabajo
de configuración del controlador siga lo siguientes pasos.
una interrupción del
usuario de contador de Para agregar una interrupción HSC:
alta velocidad (HSC)
1. En el Organizador de proyectos, haga doble clic en el controlador
para abrir el espacio de trabajo del controlador.

2. En el árbol del controlador, haga clic en Interrupciones para


visualizar la página de configuración Interrupción.

3. Haga clic con el botón secundario en una fila vacía y haga clic en
Agregar para mostrar el cuadro de diálogo Propiedades de la
interrupción.

4. Para configurar una interrupción HSC:

318 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

 En Tipo de interrupción, seleccione Interrupción del usuario de


contador de alta velocidad (HSC).
 Seleccione las propiedades de interrupción de HSC.
 Seleccione los parámetros de interrupción de HSC.

5. Cierre el cuadro de diálogo de propiedades de Interrupción.

Consulte también

Configurar una interrupción de usuario del contador de alta velocidad


(HSC) en la página 317

Instrucciones del contador de alta velocidad en la página 295

Propiedades de interrupciones HSC en la página 319

Parámetros de interrupciones HSC en la página 320

Propiedades de Los bits de estado de las propiedades de interrupciones HSC indican el


interrupciones HSC estado habilitado/deshabilitado, el estado de ejecución y si se ha perdido o no
la condición de interrupción.

Interrupción del usuario habilitada (HSC0.Enabled)

Parámetro Formato de Modos del Acceso al programa del usuario


datos HSC
HSCO.Enable bit 0... 9 solo lectura
d

El bit Enabled se utiliza para indicar el estado habilitado o deshabilitado de la


interrupción HSC.

Interrupción del usuario en ejecución (HSC0.EX)

Parámetro Formato de Modos del Acceso al programa del usuario


datos HSC
HSCO.Ex bit 0... 9 solo lectura

El bit EX (interrupción del usuario en ejecución) se activa (1) cuando el


subsistema del HSC comienza a procesar la subrutina del HSC debido a
alguna de las siguientes condiciones:

 Punto de preajuste bajo alcanzado


 Punto de preajuste alto alcanzado
 Condición de desbordamiento: el recuento supera el valor de
desbordamiento
 Condición de caudal insuficiente: el recuento desciende por debajo del
valor de caudal insuficiente

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 319


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

El bit EX del HSC se puede utilizar en el programa de control como lógica


condicional para detectar si se está ejecutando una interrupción HSC.

El subsistema del HSC desactivará (0) el bit EX cuando el controlador


complete el procesamiento de la subrutina del HSC.

Interrupción del usuario pendiente (HSC0.PE)

Parámetro Formato de Modos del Acceso al programa del usuario


datos HSC
HSCO.PE bit 0... 9 solo lectura

El marcador de estado PE (interrupción del usuario pendiente) indica que una


interrupción se encuentra pendiente. El bit de estado PE se puede supervisar
o utilizar para fines lógicos en el programa de control si necesita determinar
cuándo una subrutina no se puede ejecutar inmediatamente. El bit PE lo
mantiene el controlador y se activa y desactiva automáticamente.

Interrupción del usuario perdida (HSC0.LS)

Parámetro Formato de Modos del Acceso al programa del usuario


datos HSC
HSCO.LS bit 0... 9 solo lectura

LS (interrupción del usuario perdida) es un marcador de estado que indica


que se ha perdido una interrupción. El controlador puede procesar una
condición de interrupción del usuario activa y mantener una condición de
interrupción del usuario pendiente antes de activar el bit de pérdida.

El bit LS lo activa el controlador. Utilizar y supervisar una condición de


pérdida es responsabilidad del programa de control.

Consulte también

Configurar una interrupción de usuario del contador de alta velocidad


(HSC) en la página 317

Parámetros de Los parámetros de interrupciones HSC se utilizan para configurar las


interrupciones HSC opciones de inicio y de máscara.

Iniciar automáticamente (HSC0.AS)

Parámetro Formato de Modos del Acceso al programa del usuario


datos HSC
HSCO.AS bit 0... 9 solo lectura

Iniciar automáticamente se configura con el dispositivo de programación y se


almacena como parte del programa del usuario. El bit Iniciar
automáticamente define si la función de interrupción HSC se inicia
automáticamente cuando el controlador entra en un modo de ejecución o de
prueba.
320 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018
Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Máscara de desbordamiento (HSC0.MV)

El bit de control MV (máscara de desbordamiento) se utiliza para habilitar


(permitir) o deshabilitar (no permitir) una interrupción del desbordamiento. If
the bit is clear (0), and an Overflow Reached condition is detected by the
HSC, the HSC user interrupt is not executed.

El bit MV se controla mediante el programa del usuario y conserva su valor a


lo largo de una desconexión y conexión. El programa del usuario debe
activar y desactivar el bit MV.

Parámetro Formato de Modos del Acceso al programa del usuario


datos HSC
HSCO.MV bit 0... 9 solo lectura

Máscara de caudal insuficiente (HSC0.MN)

Parámetro Formato de Modos del Acceso al programa del usuario


datos HSC
HSCO.MN bit 2... 9 solo lectura

El bit de control MN (máscara de caudal insuficiente) se utiliza para habilitar


(permitir) o deshabilitar (no permitir) una interrupción de caudal insuficiente.
If the bit is clear (0), and an Underflow Reached condition is detected by the
HSC, the HSC user interrupt is not executed.

El bit MN se controla mediante el programa del usuario y conserva su valor a


lo largo de una desconexión y conexión. El programa del usuario debe
activar y desactivar el bit MN.

Máscara de preajuste alto (HSC0.MH)

Parámetro Formato de Modos del Acceso al programa del usuario


datos HSC
HSCO.MH bit 0... 9 solo lectura

El bit de control MH(máscara de preconfiguración alta) se utiliza para


habilitar (permitir) o deshabilitar (no permitir) una interrupción de
preselección alta. If this bit is clear (0), and a High Preset Reached condition
is detected by the HSC, the HSC user interrupt is not executed.

El bit MH se controla mediante el programa del usuario y conserva su valor a


lo largo de una desconexión y conexión. El programa del usuario debe
activar y desactivar el bit MH.

Máscara de preajuste bajo (HSC0.ML)

Parámetro Formato de Modos del Acceso al programa del usuario


datos HSC
HSCO.ML bit 2... 9 solo lectura

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 321


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

El bit de control ML (máscara de preconfiguración baja) se utiliza para


habilitar (permitir) o deshabilitar (no permitir) una interrupción de
preselección baja. If this bit is clear (0), and a Low Preset Reached condition
is detected by the HSC, the HSC user interrupt is not executed.

El bit ML se controla mediante el programa del usuario y conserva su valor a


lo largo de una desconexión y conexión. El programa del usuario debe
activar y desactivar el bit ML.

Consulte también

Configurar una interrupción de usuario del contador de alta velocidad


(HSC) en la página 317

Configurar un El contador de alta velocidad tiene modos de funcionamiento adicionales


para implementar un interruptor de límite programable (PLS). La función
interruptor PLS se utiliza para configurar el contador de alta velocidad (HSC) de modo
programable de límite que funcione como un PLS o un interruptor de árbol de levas. La función
(PLS) PLS admite hasta 255 pares de preajustes bajos y altos, y se puede utilizar
cuando es necesario emplear más de uno.

Habilitar el PLS en el HSC

El modo PLS solo funciona en tándem con el HSC del controlador Micro800
y se debe habilitar en el primero estableciendo el parámetro
HSCAppData.PLSEnable en Cierto.

El parámetro PLSPosition se restablece después de completar un ciclo


completo y alcanzar el valor HSCSTS.HP. Restablecer la instrucción HSC o
mover 0 al parámetro PLSPositon no restablece PLSPosition.

Funcionamiento del HSC cuando se habilita el PLS

La función PLS puede operar con todas las demás funciones del HSC,
incluida la posibilidad de seleccionar qué eventos del HSC generan una
interrupción del usuario.

Cuando se habilita la función PLS y el controlador se encuentra en modo de


ejecución, el HSC cuenta los pulsos entrantes y se producen los siguientes
eventos.

 Cuando el recuento alcanza el primer preajuste (HSCHP o HSCLP)


definido en los datos PLS, los datos de origen de salida (HSCHPOutput
o HSCLPOutput) se escriben a través de la máscara del HSC
(HSCAPP.OutputMask).
 En ese momento, se activan los siguientes preajustes (HSCHP y
HSCLP) definidos en los datos PLS.
 Cuando el recuento del HSC alcanza el nuevo preajuste, se escriben los
datos de salida nuevos a través de la máscara del HSC.

322 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

 Este proceso continúa hasta que se carga el último elemento del bloque
de datos PLS.
 En este momento, el elemento activo del bloque de datos PLS se
restablece en cero.
 Se hace referencia a este comportamiento como "operación circular".

La diferencia del PLS preestablecida entre el HSC embebido y el módulo


enchufable HSC.

Los comportamientos HSCHP y HSCLP del PLS preestablecidos son


diferentes entre el HSC embebido y el módulo enchufable HSC. El preajuste
alto del HSC embebido solo se establecerá cuando se ejecute el último PLS,
mientras que el preajuste alto del módulo HSC se establecerá cuando se
ejecute el primer PLS. Por ejemplo:

 HSC PLS0-PLS23 embebido:


El preajuste alto se establecerá cuando PLS23HP=valor del
acumulador
El preajuste bajo se establecerá cuando PLS23LP=valor del
acumulador
 Módulo enchufable HSC PLS0-PLS23:
El preajuste alto se establecerá cuando PLS0HP=valor del acumulador
El preajuste bajo se establecerá cuando PLS0LP=valor del acumulador

Consulte también

Configurar interrupciones del usuario de contador de alta velocidad


(HSC) en la página 317

Ejemplo: Cómo crear un programa de contador de alta velocidad


(HSC) en la página 323

Ejemplo: Interruptor de límite programable (PLS) habilitado en la


página 334

HSC (contador de alta velocidad) en la página 296

Actualizar datos de aplicación del HSC en la página 316

Ejemplo: Cómo crear En este ejemplo se muestra cómo crear un programa de contador de alta
velocidad (HSC) que utilice un codificador de cuadratura e incluya una
un programa de función del interruptor programable de límite (PLS).
contador de alta
velocidad (HSC) Codificador de cuadratura utilizado en el ejemplo

El ejemplo de programa de contador de alta velocidad (HSC) utiliza un


bloque de funciones HSC y un contador de cuadratura con las entradas por
Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 323
Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

fases A y B. El codificador de cuadratura determina la dirección de giro y la


posición del equipo rotatorio, como un torno. El contador bidireccional
cuenta el giro del codificador de cuadratura.

El siguiente codificador de cuadratura está conectado a las entradas 0 y 1. La


dirección del recuento se determina según el ángulo de fase entre A y B:

 Si A sobrepasa a B, el contador se incrementa.


 Si B sobrepasa a A, el contador desciende.

Crear un programa de contador de alta velocidad (HSC)

Realice las siguientes tareas para crear, compilar y probar el programa de


HSC, y agregarle una función PLS.

Título de Título de la tabla


la tabla
1 Crear un diagrama de lógica de escalera y agregar variables en la página 325
2 Asignar valores a las variables del HSC en la página 328
3 Asignar variables y compilar el programa en la página 329
4 Probar el programa y ejecutar el contador de alta velocidad en la página 330
5 Agregar una función del interruptor de límite programable (PLS) en la página 333

Consulte también

Actualizar datos de aplicación del HSC en la página 316

Configurar interrupciones del usuario de contador de alta velocidad


(HSC) en la página 317

Configurar un interruptor programable de límite (PLS) en la página


322

Ejemplo: Interruptor de límite programable (PLS) habilitado en la


página 334

HSC (contador de alta velocidad) en la página 296

324 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Crear un diagrama de Crea un diagrama de lógica de escalera y luego agregue variables locales a la
lógica de escalera y línea. Este programa de muestra utiliza un controlador 2080-LC50-24QVB.
agregar variables El HSC se admite en todos los controladores Micro830 y Micro850, excepto
en los tipos de controlador 2080-LCxx-xxAWB.

Para crear un diagrama de lógica de escalera y agregar variables:

1. En el cuadro de herramientas de dispositivo, haga clic en la ficha


Catálogo para ver las carpetas del dispositivo.

2. Expanda las carpetas Controladores y Micro830 para ver todos los


controladores Micro830. Haga doble clic en un controlador
(2080-LC50-24QVB) para agregarlo al organizador de proyectos.

3. En el organizador de proyectos, haga clic con el botón secundario en


Programas, haga clic en Agregar y, a continuación, haga clic en
Nuevo LD: diagrama de lógica de escalera para agregar un nuevo
programa de lógica de escalera.

4. Haga clic con el botón secundario en LD sin título y seleccione Abrir.

5. En el cuadro de diálogo Cuadro de herramientas:

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 325


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

 Haga doble clic en Contacto directo para agregarlo al peldaño, o


bien
 Arrastre un contacto directo y colóquelo en el peldaño.

6. Asígnele una variable:

 Haga doble clic en el contacto directo para mostrar el selector de


variables y, a continuación, haga clic en la ficha E/S: Micro830.
 Haga clic en _IO_EM_DI_05 y, a continuación, en Aceptar para
asignar el contacto directo a la entrada 5.

7. En el cuadro de diálogo Cuadro de herramientas, seleccione un


bloque de funciones y arrástrelo a la derecha del contacto directo,
como se muestra en la siguiente imagen.

8. Haga doble clic en el bloque de funciones para abrir el Selector de


bloque de instrucciones.

9. En el Selector de bloque de instrucciones, seleccione HSC y haga


clic en Aceptar.

326 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

10. Compruebe que el peldaño de lógica de escalera tenga un aspecto


similar al de la figura siguiente.

11. En el organizador de proyectos, haga doble clic en Variables locales


para mostrar la página Variables.

12. En dicha página, agregue las variables y los tipos de datos siguientes.

Nombre de la Tipo de datos


variable
MyCommand USINT
MyAppData HSCAPP
MyInfo HSCSTS
MyPLS PLS
MyStatus UINT

Resultado

La página Variables debería tener el aspecto de la imagen siguiente:

Consulte también

Agregar una función del interruptor de límite programable (PLS) en la


página 333

Configurar un interruptor programable de límite (PLS) en la página


322

Ejemplo: Cómo crear un programa de contador de alta velocidad


(HSC) en la página 323

HSC (contador de alta velocidad) en la página 296


Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 327
Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

Asignar valores a las Después de agregar las variables, siga estos pasos para asignarles valores
variables del HSC mediante la columna Valor inicial del selector de variables. Por lo general,
un programa estándar utiliza una rutina para asignar valores a las variables.

Para asignar valores a las variables del HSC:

1. Expanda MyAppData para ver todas las variables.

2. Asigne el valor del modo de HSC:

 En el campo Valor inicial de la variable MyAppData.HSCMode,


escriba 6.
 Consulte HSCMode en Tipo de datos HSCAPP para obtener más
información sobre la descripción de cada valor.

3. Asigne el resto de los valores a las variables MyAppData, como se


muestra en la siguiente figura.

 En el campo Valor inicial, escriba el valor.


 Consulte Tipo de datos HSCAPP para obtener más información
sobre la descripción de cada valor.

4. Asigne el valor del comando HSC:

 En el campo Valor inicial de la variable MyCommand, escriba 1.


 Consulte Valores de HSCCmd en la página 298 para obtener más
información sobre los valores de comandos.

Consulte también

Agregar una función del interruptor de límite programable (PLS) en la


página 333

Asignar variables y compilar el programa en la página 329

Configurar un interruptor programable de límite (PLS) en la página


322

328 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Ejemplo: Cómo crear un programa de contador de alta velocidad


(HSC) en la página 323

Tipo de datos HSCAPP en la página 299

Asignar variables y Después de especificar valores en las variables del HSC, siga estos pasos
compilar el programa para asignarlas al bloque de funciones y compilar el programa.

Para asignar variables y compilar el programa:

1. Desde el editor de lógica de escalera, asigne cada variable a su


elemento de bloque de funciones HSC, tal y como se muestra.

2. En el organizador de proyectos, haga clic en el controlador para


mostrar el árbol del controlador.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 329


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

3. En el árbol del controlador, haga clic en E/S embebidas y seleccione


filtros de entrada para el codificador.

4. Compruebe que el codificador esté conectado al controlador Micro830.

5. Inicie el controlador Micro830 y conéctelo al equipo.

6. Compile el programa y, a continuación, descárguelo en el controlador.

Consulte también

Ejemplo: Cómo crear un programa de contador de alta velocidad


(HSC) en la página 323

Crear un diagrama de lógica de escalera y agregar variables en la


página 325

Asignar valores a las variables del HSC en la página 328

Configurar un interruptor programable de límite (PLS) en la página


322

Agregar una función del interruptor de límite programable (PLS) en la


página 333

Probar el programa y Después de descargar el programa de HSC en el controlador, puede probarlo


ejecutar el contador de alta y luego ejecutarlo en el contador de alta velocidad (HSC).
velocidad
Para probar el programa:

1. Conéctese al controlador.

2. En el organizador de proyectos, haga doble clic en el programa de HSC


y, a continuación, en Variables locales.

330 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Puede ver los valores de las dos salidas HSC: STS (MyStatus) y HSCSTS
(MyInfo).

3. Haga doble clic en el contacto directo _IO_EM_DI_05 para mostrar la


ventana Selector de variables.

4. Haga clic en la ficha E/S: Micro830 y, a continuación, en la fila


_IO_EM_DI_05.

5. Seleccione Bloquear y Valor lógico para forzar la entrada en la


posición Activada.

6. Para ver resultados, haga clic en la ficha Variables locales para ver los
cambios en las variables.

7. Expanda las listas de las variables MyAppData y MyInfo.

8. Encienda el codificador para ver el recuento ascendente/descendente


del contador. Por ejemplo, si el codificador está adjunto a un eje del
motor, encienda este último para activar el recuento del HSC.

9. Compruebe que el valor lógico de la variable MyStatus sea 1, lo que


indica que el HSC se está ejecutando.

10. Visualice el valor del contador en MyInfo.Accumulator.

Consulte HSC (contador de alta velocidad) para obtener la lista


completa de códigos de estado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 331


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

Resultados

En este ejemplo, una vez que MyInfo.Accumulator alcanza un valor de


preajuste alto de 40, la salida 0 se activa, al igual que el marcador
HPReached. Si MyInfo.Accumulator alcanza un valor de preajuste bajo de
-40, la salida 1 se activa, al igual que el marcador LPReached.

Consulte también

Agregar una función del interruptor de límite programable (PLS) en la


página 333

Configurar un interruptor programable de límite (PLS) en la página


322

Ejemplo: Cómo crear un programa de contador de alta velocidad


(HSC) en la página 323

HSC (contador de alta velocidad) en la página 296

332 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

Add a Programmable En este ejemplo se explica cómo agregar una función del interruptor
programable de límite (PLS) al programa de HSC.
Limit Switch (PLS)
function Valores de variable de los ajustes del contador:

 MyAppData.PlsEnable se usa para habilitar o deshabilitar los ajustes


del PLS. Debe configurarse como Falso (deshabilitado) si se usa la
variable MyAppData.
 MyAppData.HscID se usa para especificar qué entradas integradas se
usarán en función del modo y del tipo de aplicación. Consulte
Asignación de cableado y entradas del HSC para conocer los diferentes
ID que pueden usarse, así como las entradas integradas y sus
características.
 Si se usa el ID 0, no se puede usar el ID 1 en el mismo controlador
porque las entradas serán utilizadas por Reset y Hold.
 MyAppData.HscMode se usa para especificar el tipo de operación
que utiliza el HSC para contar. Consulte Modo del HSC
(HSCAPP.HSCMode).

Para habilitar el PLS:

1. En el organizador de proyectos, haga doble clic en Variables locales


para mostrar la página Variables.

2. Habilitar la función PLS:

 En el campo Valor inicial de la variable MyAppData.PlsEnable,


seleccione Cierto.

3. Configure los ajustes de caudal insuficiente y desbordamiento:

 En el campo Valor inicial de MyAppData.OFSetting, escriba 50.


 En el campo Valor inicial de MyAppData.UFSetting, escriba -50.

4. (opcional) Configure la máscara de salida si se utilizará una salida.

Resultados para este ejemplo:


 La variable PLS tiene una dimensión de [1-4]. Esto significa que el
HSC puede tener cuatro pares de preajustes bajos y altos.
 Los preajustes altos deben configurarse de modo que sean
inferiores a OFSetting y los preajustes bajos, de modo que sean
superiores a UFSetting.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 333


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

 Los valores de HscHPOutPut y HscLPOutPut determinarán qué


salidas se activan cuando se alcance un preajuste bajo o alto.

Consulte también

Ejemplo: Cómo crear un programa de contador de alta velocidad


(HSC) en la página 323

Configurar un interruptor programable de límite (PLS) en la página


322

Ejemplo: Interruptor de En este ejemplo se describen los resultados cuando el PLS se habilita
mediante valores de parámetros HSC y PLSData.
límite programable
(PLS) habilitado Valores de parámetros HSC

En este ejemplo se presupone que los parámetros de HSC están configurados


con los valores siguientes:

 HSCApp.OutputMask = 31
 HSCApp.HSCMode = 0
 El HSC solo controla las salidas integradas de 0 a 4
Valores de parámetros PLSData

334 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del contador de alta velocidad (HSC) Capítulo 14

En este ejemplo se da por hecho que los parámetros PLSData de la variable


(HSC_PLS) están configurados del siguiente modo.

Resultados de PLS habilitado

En este ejemplo, se producen los siguientes eventos.

 Cuando se ejecuta la lógica de escalera por primera vez:


HSCSTS.Accumulator = 1, lo que significa que se desactivan todas las
salidas.
 Cuando HSCSTS.Accumulator = 250, HSC_PLS[1].HSCHPOutput se
envía a través de HSCAPP.OutputMask y conecta las salidas 0 y 1.
 El envío de la salida de preajuste alto a través de la máscara de salida
se repite cuando HSCSTS.Accumulator alcanza los valores 500, 750 y
1.000, y el controlador conecta las salidas 0-2, 0-3 y 0-4
respectivamente.
 Una vez finalizada la operación, el ciclo se restablece y se repite desde
HSCSTS.HP = 250.
 Al completarse el ciclo total y alcanzarse el valor HSCSTS.HP, se
restablece el parámetro PLSPositon.

Consulte también

Actualizar datos de aplicación del HSC en la página 316

Configurar interrupciones del usuario de contador de alta velocidad


(HSC) en la página 317

Configurar un interruptor de límite programable (PLS) en la página


322

Ejemplo: Cómo crear un programa de contador de alta velocidad


(HSC) en la página 323

HSC (contador de alta velocidad) en la página 296

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 335


Capítulo 14 Instrucciones del contador de alta velocidad (HSC)

336 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 15

Instrucciones HSCE

Use las instrucciones HSCE para supervisar y controlar el contador de alta


velocidad.

Instrucción Descripción
HSCE en la página 337 HSCE iniciar, detener y leer valor del acumulador.
HSCE_CFG en la página 340 HSCE_CFG es la configuración del contador de alta velocidad.
HSCE_CFG_PLS en la página 343 HSCE_CFG_PLS es la configuración de PLS del contador de alta
velocidad.
HSCE_READ_STS en la página 346 HSCE_READ_STS lee el estado del contador de alta velocidad.
HSCE_SET_STS en la página 337 HSCE_SET_STS define/restablece manualmente el estado del contador
de alta velocidad.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

HSCE HSCE se emplea para controlar y leer el contador HSC.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de estas


instrucciones.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL CIERTO: el HSCE inicia el bloque de funciones y el módulo enchufable HSC.
Acumulador = InitAcc. El estado del HSCE se restablecerá. Rate1 = 0, Rate2
= 0.
FALSO: el acumulador se actualiza leyendo desde el módulo enchufable.
Hecho, activo, error = FALSO cuando IDError = 0, Rate1, Rate2 = 0.
Canal Entrada HSCE_CHANNEL El canal HSCE.
Ejecución Entrada BOOL Para que HSCE cuente el estado operativo.
CIERTO: HSCE cuenta los pulsos.
FALSO: HSCE detiene el conteo.
Resetear Entrada BOOL Cierto - todas las salidas se borran y el acumulador. Rate1 y Rate2 también
se ponen a 0. Estado del módulo enchufable HSC borrado. La prioridad de la
entrada de reset es mayor que la de la entrada de ejecución

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 337


Capítulo 15 Instrucciones HSCE

Listo Salida BOOL CIERTO: cuando Habilitar HSCE es cierto y no se detectan errores.
FALSO: cuando Habilitar HSCE es cierto pero Ejecutar es falso.
Activo Salida BOOL CIERTO: cuando Habilitar HSCE es cierto, Hecho es cierto y Ejecutar es
falso.
FALSO: cuando Habilitar HSCE es cierto pero Ejecutar es falso.
Rate1 Salida REAL Velocidad de pulso actual en unidad de usuario por segundo (por método de
pulso).
Rate2 Salida REAL Velocidad de pulso actual en unidad de usuario por segundo (método cíclico).
ValorTP Salida LINT Captura del valor del acumulador cuando se activa la sonda de toque.
OutputSts Salida UINT El estado de salida físico y virtual del módulo enchufable HSC, solo aplicable
para el módulo enchufable HSC.
Bit 0: Salida 1 (estado de salida física)
Bit de 1 a 15: Salida 2 a salida 16 (estado de salida virtual)
Para módulo enchufable incorporado, valor devuelto siempre "0".
Estado Salida UINT Información de estado de HSC.
Error Salida BOOL Indica que se ha producido un error.
ErrorID Salida UINT Cuando se produce Error, IdDeError contiene el código de error.

Ejemplo de diagrama de bloque de funciones HSCE

338 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones HSCE Capítulo 15

Ejemplo de diagrama de lógica de escalera HSCE

Ejemplo de estructura de texto HSCE

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 339


Capítulo 15 Instrucciones HSCE

Consulte también

HSCE_CFG en la página 340

HSCE_CFG_PLS en la página 343

HSCE_READ_STS en la página 346

HSCE_SET_STS en la página 347

HSCE_CFG HSCE_CFG se emplea para configurar el contador de alta velocidad.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de estas


instrucciones.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Execute Entrada BOOL El flanco ascendente inicia la configuración de HSC. (Habilitar HSCE
debería ser igual a FALSO)
El flanco descendente borrará todo el valor de salida.
Canal Entrada HSCE_CH El canal HSCE.
ANNEL
InitAccumulator Entrada LINT Valor inicial acumulador.

340 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones HSCE Capítulo 15

OFSetting Entrada LINT Valor de límite de desbordamiento de contador.


UFSetting Entrada LINT Valor de límite de subdesbordamiento de contador.
HPSetting Entrada LINT Valor de preajuste alto (HP) de HSCE.
LPSetting Entrada LINT Valor de preajuste bajo (LP) de HSCE.
PLS_Offset Entrada USINT Offset para comenzar en la matriz de datos PLS.
OutputMask Entrada USINT Máscara de salida para funcionalidad de PLS.
HPOutput Entrada UDINT Estado de salidas de preajuste alto.
LPOutput Entrada UDINT Estado de salidas de preajuste bajo.
Listo Salida BOOL Acción de configuración de HSC (iniciada por instrucción) correcta.
Error Salida BOOL Indica que se ha producido un error.
ErrorID Salida UINT Cuando se produce Error, IdDeError contiene el código de error.

Ejemplo de diagrama de bloque de funciones HSCE_CGF

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 341


Capítulo 15 Instrucciones HSCE

Ejemplo de diagrama de lógica de escalera HSCE_CGF

Ejemplo de estructura de texto HSCE_CGF

Consulte también

Instrucciones HSCE en la página 337

HSCE en la página 337

HSCE_CFG_PLS en la página 343

HSCE_READ_STS en la página 346

342 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones HSCE Capítulo 15

HSCE_SET_STS en la página 347

HSCE_CFG_PLS Esta instrucción se usa para la configuración de HSC con un interruptor


programable de límite (PLS). Esta función es un conjunto de modos
operativos adicional para el contador de alta velocidad. Si opera en estos
modos, los valores de preajuste y datos de salida se actualizan utilizando los
datos proporcionados cada vez que se alcance uno de los preajustes. Estos
modos se programan proporcionando un archivo PLS que contiene los
conjuntos de datos que se utilizarán.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de estas


instrucciones.

Parámetro Tipo de Tipo de datos Descripción


parámetr
o
Execute Entrada BOOL El flanco ascendente inicia la configuración de HSC. (Habilitar HSCE
debería ser igual a FALSO)
El flanco descendente borrará todo el valor de salida.
Canal Entrada HSCE_CHANNEL El canal HSCE.
InitAccumulator Entrada LINT Valor inicial acumulador.
OFSetting Entrada LINT Valor de límite de desbordamiento de contador.
UFSetting Entrada LINT Valor de límite de subdesbordamiento de contador.
PLS_Data Entrada PLS2 Matriz de PLS (PLS_64)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 343


Capítulo 15 Instrucciones HSCE

PLS_Size Entrada USINT Tamaño de datos PLS y el valor máximo es 24 por módulo enchufable.
PLS_Offset Entrada USINT Offset para comenzar en la matriz de datos PLS.
OutputMask Entrada USINT Máscara de salida para funcionalidad de PLS.
Listo Salida BOOL Acción de configuración de HSC (iniciada por instrucción) correcta.
Error Salida BOOL Indica que se ha producido un error.
ErrorID Salida UINT Cuando se produce Error, IdDeError contiene el código de error.

Ejemplo de diagrama de bloque de funciones HSCE_CGF_PLS

344 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones HSCE Capítulo 15

Ejemplo de diagrama de lógica de escalera HSCE_CGF_PLS

Ejemplo de estructura de texto HSCE_CGF_PLS

Consulte también

Instrucciones HSCE en la página 337

HSCE en la página 337

HSCE_CFG en la página 340

HSCE_READ_STS en la página 346

HSCE_SET_STS en la página 347

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 345


Capítulo 15 Instrucciones HSCE

HSCE_READ_STS La instrucción se emplea para leer el estado de HSC actual.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de estas


instrucciones.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Si Habilitar es Cierto entonces HSC2StsInfo está actualizado.
Canal Entrada HSCE_CHANNEL El canal HSCE.
Valid Salida BOOL HSC2StsInfo es válido si es CIERTO.
HSCEStsInfo Entrada LINT Valor de límite de desbordamiento de contador.
Error Salida BOOL Indica que se ha producido un error.
ErrorID Salida UINT Cuando se produce Error, IdDeError contiene el código de error.

Ejemplo de diagrama de bloque de funciones HSCE_READ_STS

346 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones HSCE Capítulo 15

Ejemplo de diagrama de lógica de escalera HSCE_READ_STS

Ejemplo de estructura de texto HSCE_READ_STS

Consulte también

Instrucciones HSCE en la página 337

HSCE en la página 337

HSCE_CFG en la página 340

HSCE_CFG_PLS en la página 343

HSCE_SET_STS en la página 347

HSCE_SET_STS La instrucción establece y restablece de forma manual los indicadores del


estado de recuento del HSC. El bloque de funciones HSC debe estar detenido
para que el bloque de funciones HSCE_SET_STC establezca o restablezca su
estado de HTS. Si el bloque de funciones HSC no se detiene o el canal HSC
no está configurado, el bloque de funciones HSC2_SET_STS arrojará un
error.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 347


Capítulo 15 Instrucciones HSCE

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de estas


instrucciones.

Parámetro Tipo de Tipo de datos Descripción


parámetro

Enable Entrada BOOL Habilitar bloque de función.


CIERTO: define/restablece el estado HSC.
FALSO: no se cambia el estado HSC.
Canal Entrada HSCE_CHANN El canal HSCE.
EL
HPReached Salida BOOL Cuando se alcanza el valor de preajuste alto, este bit se
establecerá en CIERTO por el módulo enchufable. Establezca o
restablezca este bit con el bloque de funciones
HSCE_SET_STS.
LPReached Entrada BOOL Cuando se alcanza el valor de preajuste bajo, este bit se
establecerá en CIERTO por el módulo enchufable. Establezca o
restablezca este bit con el bloque de funciones
HSCE_SET_STS.
OFOccurred Entrada BOOL Cuando ocurre desbordamiento, este bit se establecerá en
CIERTO por el módulo enchufable. Establezca o restablezca
este bit con el bloque de funciones HSCE_SET_STS.
UFOccurred Entrada BOOL Cuando haya caudal insuficiente, este bit se establecerá en
CIERTO por el módulo enchufable. Establezca o restablezca
este bit con el bloque de funciones HSCE_SET_STS.
Sonda de toque Entrada BOOL Cuando se active la sonda de toque, este bit se establecerá en
CIERTO por el módulo enchufable.

348 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones HSCE Capítulo 15

Mantener Entrada BOOL Cuando se active el retén de HSC, este bit se establecerá en
CIERTO por el módulo enchufable. Establezca o restablezca
este bit con el bloque de funciones HSCE_SET_STS. Este
parámetro de entrada solo es efectivo para el contador 0. Para
el contador 1 siempre es reset
Preajuste Entrada BOOL Cuando se active Z ACC Reset, este bit se establecerá en
CIERTO por el módulo enchufable.
Establezca o restablezca este bit con el bloque de funciones
HSCE_SET_STS.
Este parámetro de entrada solo es efectivo para el contador 0.
Para el contador 1 siempre es reset.
Listo Salida BOOL Acción de configuración de HSC (iniciada por instrucción)
correcta.
Error Salida BOOL Indica que se ha producido un error.
ErrorID Salida UINT Cuando se produce Error, IdDeError contiene el código de error.

Ejemplo de diagrama de bloque de funciones HSCE_SET_STS

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 349


Capítulo 15 Instrucciones HSCE

Ejemplo de diagrama de lógica de escalera HSCE_SET_STS

Ejemplo de estructura de texto HSCE_SET_STS

Consulte también

Instrucciones HSCE en la página 337

HSCE en la página 337

HSCE_CFG en la página 340

HSCE_CFG_PLS en la página 343

HSCE_READ_STS en la página 346

350 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 16

Instrucciones de entrada/salida

Use las instrucciones de entrada/salida para leer o escribir datos en un


controlador o un módulo mediante señales enviadas a un dispositivo
conectado físicamente a un controlador lógico programable. Los relés de
entrada transmiten señales a los relés internos, mientras que los relés de
salida transmiten señales a dispositivos de salida externos.

Instrucción Descripción

LCD en la página 352 Micro810 únicamente.


Muestra una cadena o número en una pantalla LCD.
LCD_BKLT_REM en la página Configura los parámetros de retroiluminación del LCD remoto en un
354 programa de usuario.
LCD_REM en la página 356 Muestra mensajes definidos por el usuario para el LCD remoto.

RHC en la página 359 Lee un valor del reloj de alta velocidad en el controlador Micro800.
RPC en la página 361 Lee la suma de comprobación del programa del usuario, ya sea desde
el controlador o el módulo de memoria.
DLG en la página 362 Escribe valores de variables del motor de tiempo de ejecución en un
archivo de registro de datos de una tarjeta SD.
IIM en la página 364 Actualiza las entradas antes de una exploración de salida normal.
IOM en la página 365 Actualiza las salidas antes de una exploración de salida normal.
KEY_READ en la página 367 Micro810 únicamente.
Comprueba el estado de clave del módulo LCD opcional cuando está
activa la pantalla de usuario.
KEY_READ_REM en la página Micro820 únicamente.
370 Comprueba el estado de clave del módulo LCD remoto opcional
cuando está activa la pantalla de usuario.
MM_INFO en la página 372 Lee la información de encabezado del módulo de memoria.
MODULE_INFO en la página Lee la información del módulo desde un módulo enchufable o de
375 expansión excepto en el módulo de memoria 2080-MEMBAK-RTC.
PLUGIN_INFO en la página 388 Lee la información del módulo desde un módulo enchufable o de
expansión genérico excepto en el módulo de memoria
2080-MEMBAK-RTC.
PLUGIN_READ en la página 390 Lee datos de un módulo enchufable genérico excepto el módulo de
memoria 2080-MEMBAK-RTC.
PLUGIN_RESET en la página Restablece el hardware de un módulo enchufable genérico excepto el
392 módulo de memoria de 2080-MEMBAK-RTC.
PLUGIN_WRITE en la página Escribe datos en un módulo enchufable genérico excepto el módulo de
394 memoria 2080-MEMBAK-RTC.
RCP en la página 396 Lee y escribe datos de receta en una tarjeta de memoria SD.
RTC_READ en la página 398 Lee la información del módulo de reloj de tiempo real (RTC).

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 351


Capítulo 16 Instrucciones de entrada/salida

Instrucción Descripción

RTC_SET en la página 401 Establece los datos de RTC según la información del módulo RTC.
SYS_INFO en la página 403 Lee el bloque de datos de estado para el controlador Micro800.
TRIMPOT_READ en la página Lee el valor de un potenciómetro de ajuste concreto.
405

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

LCD Muestra una cadena o un número en la pantalla LCD opcional.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Enable Entrada BOOL Habilitar instrucción.
Cierto: el LCD cambia a la pantalla definida por el usuario (cadenas
mostradas en el LCD) en lugar de a la pantalla de estado de E/S.
Falso: el LCD muestra el contenido de la pantalla de estado de E/S.
Line1 Entrada CADENA La cadena se muestra en la línea 1 del LCD.
Line2 Entrada CADENA La cadena se muestra en la línea 2 del LCD.
Line3 Entrada CADENA La cadena se muestra en la línea 3 del LCD.
Line4 Entrada CADENA La cadena se muestra en la línea 4 del LCD.
LCD Salida BOOL Cierto: la función está habilitada

352 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Ejemplo de diagrama de bloque de funciones LCD

Ejemplo de diagrama de lógica de escalera LCD

Ejemplo de texto estructurado LCD

(* Equivalencia de ST: *)

TESTOUTPUT := LCD(LCDENABLE, LINE1, LINE2, LINE3, LINE4) ;

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 353


Capítulo 16 Instrucciones de entrada/salida

Resultados

Consulte también

Instrucciones de entrada/salida en la página 351

KEY_READ en la página 367

LCD_BKLT_REM Configura los parámetros de retroiluminación del LCD remoto en un


programa de usuario.
(retroiluminación
del LCD remoto) Detalles de la operación:

Los parámetros de retroiluminación definidos en LCD_BKLT_REM se


utilizan cuando la pantalla LCD remota es:

 Una pantalla definida por el usuario con LCD_REM.


 La pantalla de estado de E/S predeterminada.
 Para el resto de las pantallas, la configuración de retroiluminación
utilizada es la que se define en el menú LCD remoto.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

354 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Parámetro Tipo de Tipo de Descripción


parámetro datos
Enable Entrada BOOL Habilitar instrucción.
Cierto: se ejecuta la función REM_LCD_BKLT, que sobrescribe
cualquier configuración vigente de retroiluminación.
Falso: REM_LCD_BKLT estará deshabilitado y la configuración del
menú LCD remoto surtirán efecto.
Color Entrada UINT Código de color de retroiluminación
 0: Blanco
 1: Azul
 2: Rojo
 3: Verde
 4-65535: Reservado
Modo Entrada UINT  0: apagada permanentemente
 1: encendida permanentemente
 2: parpadeante (intervalo de 1 s)
 3-65535: Reservado
LCD_BKLT_RE Salida BOOL Cierto: la instrucción se ha ejecutado correctamente.
M Falso: se ha producido un error al ejecutarse la instrucción.
Sts Salida UINT Estado de la operación del LCD remoto.
Códigos de estado LCD_BKLT_REM:
 0: Habilitar entrada es falso.
 1: Correcto.
 2: LCD remoto no detectado.
Puede ocurrir en las siguientes situaciones:
 El LCD remoto no está conectado físicamente al controlador, o
bien el cableado es incorrecto.
 La configuración de puerto serie es distinta de la requerida para
el LCD remoto.
 3: Error de conexión.
Puede ocurrir cuando hay un error interno de estado de la máquina,
como una incompatibilidad entre las versiones de FW y RLCD FW del
controlador.
 4: Código de color no válido.
 5: Modo no válido.
 6-65535: Reservado

Ejemplo de diagrama de bloque de funciones LCD_BKLT_REM

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 355


Capítulo 16 Instrucciones de entrada/salida

Ejemplo de diagrama de lógica de escalera LCD_BKLT_REM

Ejemplo de texto estructurado LCD_BKLT_REM

Consulte también

Instrucciones de entrada/salida en la página 351

LCD_REM (LCD Muestra mensajes definidos por el usuario para el LCD remoto.

remoto) Detalles de la operación:

 Para Line1 a Line8, la longitud máxima de la cadena es 24 caracteres.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820.

356 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilita el bloque de instrucción.
Cierto: el LCD remoto cambia de la pantalla de estado de E/S a
la pantalla definida por el usuario.
Falso: el LCD remoto vuelve a la pantalla de estado de E/S.
Fuente Entrada UDINT Tamaño de fuente del mensaje de inicio:
 0: predeterminado (grande, 8 × 16)
 1: pequeño (8 × 8)
 2: grande (8 × 16)
 3: extragrande (16 × 16)
 De 4 en adelante: Reservado

El tamaño del LCD remoto es de 192 × 64 píxeles.


Cuando el tamaño de la fuente del mensaje de inicio es
pequeño, el LCD remoto muestra:
 Cadenas Line1 a Line8.
 Un máximo de 24 caracteres por línea.

Si el tamaño de la fuente del mensaje de inicio es grande o


extragrande, el LCD remoto muestra:
 Cadenas Line1 a Line4.
 Omite las cadenas Line5 a Line8.
 Un máximo de 12 caracteres por línea.
Line1 Entrada Cadena La cadena se mostrará en la línea 1 del LCD.
Para Line1 a Line8, la longitud máxima de la cadena es 24
caracteres.
Line2 Entrada Cadena La cadena se muestra en la línea 2 del LCD.
Line3 Entrada Cadena La cadena se muestra en la línea 3 del LCD.
Line4 Entrada Cadena La cadena se muestra en la línea 4 del LCD.
Line5 Entrada Cadena La cadena se muestra en la línea 5 del LCD.
Line6 Entrada Cadena La cadena se muestra en la línea 6 del LCD.
Line7 Entrada Cadena La cadena se muestra en la línea 7 del LCD.
Line8 Entrada Cadena La cadena se muestra en la línea 8 del LCD.
LCD_REM Salida BOOL Habilitar bloque de función.
Si Enable = Cierto, está activa la pantalla del usuario.
Si Enable = Falso, está activa la pantalla de menú/estado de
E/S.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 357


Capítulo 16 Instrucciones de entrada/salida

Sts Salida UINT Estado de la operación del LCD remoto.


Códigos de estado LCD_REM:
 0: Habilitar entrada es falso.
 1: El mensaje de usuario se muestra correctamente.
 2: LCD remoto no detectado.
 3: Error de conexión.
Puede ocurrir en las siguientes situaciones:
 El LCD remoto no está conectado físicamente al
controlador (o el cableado es incorrecto).
 La configuración de puerto serie es distinta de la
requerida para el LCD remoto.
 4: Código de fuente no válido.
 5: 5-65535: Reservado

Ejemplo de diagrama de bloque de funciones LCD_REM

358 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Ejemplo de diagrama de lógica de escalera LCD_REM

Ejemplo de texto estructurado LCD_REM

Consulte también

Instrucciones de entrada/salida en la página 351

RHC (lectura del Lee un valor del reloj de alta velocidad en el controlador Micro800.

reloj de alta Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


velocidad) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 359


Capítulo 16 Instrucciones de entrada/salida

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: lee reloj de alta velocidad.
Falso: no se lleva a cabo ninguna operación.
Se aplica a programas de diagrama de lógica de escalera.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.
RHC Salida UDINT El valor del reloj de alta velocidad.

Resolución del reloj de alta velocidad

Tipo de Incrementos Timebase Resolución


controlador
Micro810 4 cada 40 microsegundos 10 microsegundos 40 microsegundos
Micro820 1 cada 10 microsegundos 10 microsegundos 10 microsegundos
Micro830
Micro850

Ejemplo de diagrama de bloque de funciones RHS

Ejemplo de diagrama de lógica de escalera RHS

Ejemplo de texto estructurado RHS

(* Equivalencia de ST: *)

TESTOUTPUT2 := RHC() ;

Consulte también

Instrucciones de entrada/salida en la página 351

360 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

RPC (lectura de la Lee la suma de comprobación del programa del usuario, ya sea desde el
controlador o el módulo de memoria.
suma de
comprobación del Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.
programa)
Esta instrucción se aplica a los controladores Micro810,Micro820,
Micro830, Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
MemMod Entrada BOOL Cierto: el valor se obtiene del módulo de memoria.
Falso: el valor se obtiene del controlador Micro800.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.
RPC Salida UDINT El valor de suma de comprobación del programa del usuario
especificado.

Ejemplo de diagrama de bloque de funciones RPC

Ejemplo de diagrama de lógica de escalera RPC

Ejemplo de texto estructurado RPC

(* Equivalencia de ST: *)

TESTOUTPUT2 := RPC(TESTINPUT) ;

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 361


Capítulo 16 Instrucciones de entrada/salida

Consulte también

Instrucciones de entrada/salida en la página 351

DLG (registro de Escribe valores de variables del motor de tiempo de ejecución en un archivo
de registro de datos de una tarjeta SD.
datos)
Al escribir en un registro de datos, se permite un máximo de 50 carpetas de
grupo por día. Cada carpeta de grupo tiene un máximo de 50 archivos con un
tamaño de entre 4 k y 8 k.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilita la escritura en el registro de datos.
CIERTO: se ha detectado un flanco ascendente, se inicia la
operación de registro de datos cuando las operaciones de
instrucción previas hayan finalizado.
Falso: no se ha detectado un flanco ascendente.
TSEnable Entrada BOOL CIERTO: se habilita el indicador de registro de la marca de
fecha y hora.
CfgID Entrada USINT Número de ID de VA de configuración de registro de datos
(1-10).
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.
Estado Salida USINT Estado actual de la instrucción.
Códigos de estado de registro de datos:
 0 - Inactivo
 1 - Activo
 2 - Correcto, indica que el registro de datos ha finalizado
satisfactoriamente.
 3 - Error, indica que el registro de datos ha finalizado con
errores.
ErrorID Salida UDINT Un código de error numérico único para el DLG.

362 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Códigos de error DLG

Código de Nombre del error Comentarios


error
0 DLG_ERR_NONE No hay error.
1 DLG_ERR_NO_SDCARD No hay ninguna tarjeta SD.
2 DLG_ERR_RESERVED Reservado.
3 DLG_ERR_DATAFILE_ACCESS Error de acceso al archivo de registro de datos.
4 DLG_ERR_CFG_ABSENT No hay ningún archivo de configuración de registro de datos.
5 DLG_ERR_CFG_ID No hay ningún ID de configuración en el archivo de
configuración de registro de datos.
6 DLG_ERR_RESOURCE_BUSY La operación de registro de datos vinculada a este ID está en
uso por otra operación de BF.
7 DLG_ERR_CFG_FORMAT El formato del archivo de configuración de registro de datos no
es válido.
8 DLG_ERR_RTC El reloj de tiempo real no es válido.
9 DLG_ERR_UNKNOWN Se ha producido un error no especificado.

Ejemplo de diagrama de bloque de funciones DLG

Ejemplo de diagrama de lógica de escalera DLG

Ejemplo de texto estructurado DLG

Consulte también

Instrucciones de entrada/salida en la página 351

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 363


Capítulo 16 Instrucciones de entrada/salida

IIM (entrada Actualiza las entradas antes de una exploración de salida normal.

inmediata) Detalles de la operación:

 Normalmente se utiliza al inicio de un programa de interrupción para


seleccionar o enmascarar entradas que se digitalizan inmediatamente
para obtener las entradas actuales.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830 y Micro850.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el bloque de instrucción.
Falso: no se ejecuta.
InputType Entrada USINT Identifica el tipo de entrada:
0: Entrada integrada.
1: Entrada enchufable.
InputSlot Entrada USINT Identifica la ranura de entrada.
0: Entrada integrada.
1 a 5: Número de ranura del módulo enchufable. (Las ranuras
están numeradas de izquierda a derecha, comenzando por el
número 1).
La entrada integrada es siempre 0.
Para una entrada enchufable, las ranuras de entrada son 1, 2,
3, 4 y 5 (número de ranura enchufable, comenzando por la
ranura más a la izquierda = 1).
Sts Salida USINT Estado de exploración de entrada inmediata.
Códigos de estado IIM (Sts):
 0x00: No habilitada (no se realiza ninguna acción).
 0x01 : exploración correcta de entrada/salida.
 0x02 : tipo de entrada/salida no válido.
 0x03 : ranura de entrada/salida válida.
ENO Salida BOOL Habilita la salida.
Cierto: entrada actualizada.
Falso: entrada no actualizada.
Solo se aplica a programas de diagrama de lógica de escalera.

364 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Ejemplo de diagrama de bloque de funciones IIM

Ejemplo de diagrama de lógica de escalera IIM

Ejemplo de texto estructurado IIM

Resultados

Consulte también

Instrucciones de entrada/salida en la página 351

IOM (salida Actualizar salidas antes del escaneado de salida normal.

inmediata) Detalles de la operación:

 Normalmente se utiliza al final de un programa de interrupción para


seleccionar o enmascarar qué salidas se digitalizan y se actualizan
inmediatamente.
Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 365
Capítulo 16 Instrucciones de entrada/salida

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830 y Micro850.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta la instrucción.
Falso: no se ejecuta.
OutputType Entrada USINT Identifica el tipo de salida:
0: Salida integrada.
1: Salida enchufable.
OutputSlot Entrada USINT Identifica la ranura de salida:
0: Salida integrada
1 a 5: Número de ranura del módulo enchufable. (Las ranuras
están numeradas de izquierda a derecha, comenzando por el
número 1).
La salida integrada es siempre 0.
Para una salida enchufable, las ranuras de salida 1, 2, 3, 4 y 5
(número de ranura enchufable, comenzando por la ranura más
a la izquierda = 1).
Sts Salida USINT Estado de exploración de salida inmediata.
Códigos de estado IOM (Sts):
 0x00: No habilitada (no se realiza ninguna acción).
 0x01 : exploración correcta de entrada/salida.
 0x02 : tipo de entrada/salida no válido.
 0x03 : ranura de entrada/salida válida.
ENO Salida BOOL Habilita la salida.
Cierto: salida actualizada.
Falso: salida no actualizada.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones IOM

366 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Ejemplo de diagrama de lógica de escalera IOM

Ejemplo de texto estructurado IOM

Resultados

Consulte también

Instrucciones de entrada/salida en la página 351

KEY_READ (lectura Comprueba el estado de clave del módulo LCD opcional cuando está activa
la pantalla de usuario.
de claves en el LCD)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 367


Capítulo 16 Instrucciones de entrada/salida

Esta instrucción se aplica al controlador Micro810.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilita el bloque de instrucción.
Cierto: habilita la lectura de claves en el teclado de LCD
remoto.
Falso: deshabilita la lectura de claves en el teclado de LCD
remoto.
CKYL Salida BOOL CIERTO: la tecla ESC se ha pulsado durante más de 2
segundos.
EKYL Salida BOOL CIERTO: la tecla OK se ha pulsado durante más de 2
segundos.
CKY Salida BOOL CIERTO: se ha pulsado la tecla ESC.
EKY Salida BOOL CIERTO: se ha pulsado la tecla OK.
UKY Salida BOOL CIERTO: se ha pulsado la tecla de flecha arriba.
DKY Salida BOOL CIERTO: se ha pulsado la tecla flecha abajo.
LKY Salida BOOL CIERTO: se ha pulsado la tecla de flecha izquierda.
RKY Salida BOOL CIERTO: se ha pulsado la tecla de flecha derecha.

Ejemplo de diagrama de bloque de funciones KEY_READ

368 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Ejemplo de diagrama de lógica de escalera KEY_READ

Ejemplo de texto estructurado KEY_READ

(* Equivalencia de ST: *)

KEY_READ_1(KEYENABLE) ;
KEY_EKYL := KEY_READ_1.EKYL ;
KEY_CKY := KEY_READ_1.CKY ;
KEY_EKY := KEY_READ_1.EKY ;
KEY_UKY := KEY_READ_1.UKY ;
KEY_DKY := KEY_READ_1.DKY ;
KEY_RKY := KEY_READ_1.RKY ;
KEY_LKY := KEY_READ_1.LKY ;

Consulte también

Instrucciones de entrada/salida en la página 351

LCD en la página 352

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 369


Capítulo 16 Instrucciones de entrada/salida

KEY_READ_REM Comprueba el estado de clave del módulo LCD remoto opcional cuando está
activa la pantalla de usuario.
(lectura de claves
del LCD remoto) Detalles de la operación:

 Use la instrucción LCD_REM para activar la pantalla del usuario en el


módulo LCD remoto. Si la pantalla del usuario no está activa, se
produce un error durante la ejecución de KEY_READ_REM.
 La propiedad P-BUTTON del archivo de función de LCD se activa; de
lo contrario, todos los estados de clave son Falso.
 La instrucción KEY_READ_REM solo admite pulsaciones de una sola
tecla; no se admiten combinaciones de pulsaciones de dos teclas.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: Habilitar
Falso: Deshabilitar
KEY_READ_RE Salida BOOL Cierto: se leen correctamente los datos de clave de LCD
M remoto.
Falso: si Habilitar es falso, hay un error de lectura. Datos de
clave de LCD remoto o la pantalla de usuario no está activa.

370 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Sts Salida UINT Estado de la operación KEY_READ_REM.


Códigos de estado KEY_READ_REM:
 0: habilitar entrada es falso.
 1: los datos de clave se han leído correctamente.
 2: LCD remoto no detectado.
Puede ocurrir en las siguientes situaciones:
 El LCD remoto no está conectado físicamente al
controlador (o el cableado es incorrecto).
 La configuración de puerto serie es distinta de la
requerida para el LCD remoto.
 3: Error de conexión.
Puede ocurrir cuando hay un error interno de estado de la
máquina Causado posiblemente por una incompatibilidad
entre la versión de FW del controlador y del RLCD.
 4: La pantalla del usuario no está activa.
 5-65535: Reservado
KeyData Salida UDINT Datos de teclado de LCD remoto.
Las definiciones de KeyData se definen en la tabla de campos
de bits KeyData.

Tabla de campos de bits KeyData

Utilice esta tabla para determinar los campos de bits KeyData de


KEY_READ_REM.

N.º de bit en Nombre Descripción del parámetro


KeyData
0 UKY Cierto = Se ha pulsado la tecla de flecha arriba.
1 DKY Cierto = Se ha pulsado la tecla de flecha abajo.
2 LKY Cierto = Se ha pulsado la tecla de flecha izquierda.
3 RKY Cierto = Se ha pulsado la tecla de flecha derecha.
4 F1KY Cierto = Se ha pulsado la tecla F1.
5 F2KY Cierto = Se ha pulsado la tecla F2.
6 F3KY Cierto = Se ha pulsado la tecla F3.
7 F4KY Cierto = Se ha pulsado la tecla F4.
8 F5KY Cierto = Se ha pulsado la tecla F5.
9 F6KY Cierto = Se ha pulsado la tecla F6.
10 EKY Cierto = Se ha pulsado la tecla Intro.
11 CKY Cierto = Se ha pulsado la tecla Cancelar.
12 EKYL Cierto: se ha pulsado la tecla Intro durante más de 2
segundos.
13 CKYL Cierto: se ha pulsado la tecla Cancelar durante más de 2
segundos.
14-31 -- Reservado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 371


Capítulo 16 Instrucciones de entrada/salida

Ejemplo de diagrama de bloque de funciones KEY_READ_REM

Ejemplo de diagrama de lógica de escalera KEY_READ_REM

Ejemplo de texto estructurado KEY_READ_REM

Consulte también

Instrucciones de entrada/salida en la página 351

MM_INFO Lee la información de encabezado del módulo de memoria. Si no hay ningún


módulo de memoria, todos los valores vuelven a cero (0).
(información del
módulo de Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.
memoria)
Esta instrucción se aplica a los controladores Micro810,Micro820,
Micro830, Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

372 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: lee la información de encabezado del módulo de
memoria.
Falso: no se realiza la operación de lectura y la información de
la salida del módulo de memoria no es válida.
MMInfo Salida MMINFO La información del módulo de memoria está definida en el tipo
de datos MMINFO.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones MM_INFO

Ejemplo de diagrama de lógica de escalera MM_INFO

Ejemplo de texto estructurado MM_INFO

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 373


Capítulo 16 Instrucciones de entrada/salida

Resultados

En el caso de los controladores que usen 2080-MEMBAK-RTC:

En el caso de los controladores que usen una tarjeta SD:

Consulte también

Tipos de datos MMINFO en la página 374

Instrucciones de entrada/salida en la página 351

Tipos de datos En la tabla siguiente se describen los parámetros del tipo de datos MMINFO.
MMINFO
Parámetro Tipo de Descripción
datos

374 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Parámetro Tipo de Descripción


datos
MMCatalog MMCATNUM El número de catálogo del módulo de memoria.
Cuando use la instrucción MM_INFO en controladores con
una tarjeta SD, MMCatalog es "SD CARD".
Serie UINT La serie del módulo de memoria.
Cuando use la instrucción MM_INFO en controladores con
una tarjeta SD, la serie es 0.
Revisión UINT La revisión del módulo de memoria.
Cuando use la instrucción MM_INFO en controladores con
una tarjeta SD, la revisión es 0.
UPValid BOOL El programa del usuario está presente (CIERTO: se ha
encontrado un posible proyecto válido).
Nota: Incluso si es CIERTO, todavía existe una posibilidad de
que se detecte el proyecto durante la descarga o se restaure
como no válido si faltan archivos individuales o si estos están
dañados.
ModeBehavior BOOL Comportamiento del modo (Cierto: activa RUN en el
arranque).
LoadAlways BOOL Restauración del módulo de memoria del controlador
siempre en el encendido.
LoadOnError BOOL Restauración del módulo de memoria del controlador si se
produce un error en el arranque.
FaultOverride BOOL Anulación de fallo en el encendido.
MMPresent BOOL Módulo de memoria presente.

Consulte también

MM_INFO en la página 372

MODULE_INFO Lee la información del módulo de un módulo enchufable o un módulo de


expansión.

Detalles de la operación:

 La información del módulo enchufable se lee durante el tiempo de


ejecución.
 El módulo enchufable de memoria de 2080-MEMBAK-RTC no es
compatible.
 La información del módulo de expansión se lee cuando se enciende el
módulo.
 Si un módulo enchufable o de expansión no se define con un
ModuleID, ProductType o ProductCode, la operación de
MODULE_INFO devuelve 0 para el parámetro de salida
correspondiente.
 La información de identificación del módulo enchufable y el módulo
de expansión se define por Allen-Bradley y se ofrece como parte de la
descripción de MODULE_INFO.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 375


Capítulo 16 Instrucciones de entrada/salida

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870. Los módulos de expansión solo se admiten en el controlador
Micro850.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Enable Entrada BOOL Habilitar bloque de instrucción.
CIERTO: ejecuta la operación de lectura MODULE_INFO.
FALSO: no ejecuta la operación de lectura. Todos los valores de datos se
restablecen a 0.
ModuleType Entrada USINT Identifica el tipo de módulo:
 1: módulo de expansión 2085.
 2: módulo enchufable 2080.
SlotID Entrada USINT El número de ranura en el que se encuentra el módulo enchufable o el de
expansión.
Los ID de ranura son: 1, 2, 3, 4, 5
La ranura 1 está en el extremo izquierdo.
Listo Salida BOOL CIERTO: la operación se ha realizado correctamente.
FALSO: no se está ejecutando la operación o se ha producido un error.
Presente Salida BOOL Detecta el módulo enchufable o módulo de expansión en la ranura del
controlador.
CIERTO: el módulo está presente físicamente.
FALSO: el módulo no está presente físicamente.
ModID Salida UINT La identificación para el módulo en la ranura del controlador.
 Los módulos enchufables se definen con un identificador de módulo
único.
 Los módulos de expansión no se definen con un identificador de
módulo único, ModID devuelve 0.
VendorID Salida UINT El ID del proveedor del módulo enchufable o módulo de expansión.
Para los productos Allen-Bradley, el ID del proveedor es 1.

376 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Tipo de Salida UINT El tipo de producto del módulo enchufable o módulo de expansión.
producto
Código de Salida UINT El código de producto del módulo enchufable o módulo de expansión.
producto
ModRevision Salida UINT Información de revisión del módulo enchufable o de expansión.
Error Salida BOOL Indica la existencia de una condición de error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida USINT Un número único que identifica el error. Los errores se definen en los
códigos de error MODULE_INFO.

Códigos de error MODULE_INFO

Utilice esta tabla para determinar los códigos de error MODULE_INFO y las
descripciones.

Código de Descripción del error


error
1 Tipo de módulo no válido.
Cambiar a un tipo de módulo válido.
Los tipos de módulo válidos son los siguientes:
 1: módulo de expansión 2085. Solo se admite en los controladores Micro850.
 2: módulo enchufable 2080. Compatible con los controladores Micro820, Micro830 y
Micro850.
2 Número de ranura no válido.
Cambiar a un número de ranura válido.
3 Tipo de módulo de expansión no válido.

4 Error grave del módulo de expansión.

5 La información de lectura del módulo enchufable no es compatible.

6 Ha ocurrido un error de lectura del módulo enchufable durante la lectura del ID del módulo.

7 Ha ocurrido un error de lectura del módulo enchufable durante la lectura del ID del
proveedor.
8 Ha ocurrido un error de lectura del módulo enchufable durante la lectura del tipo de
producto.
9 Ha ocurrido un error de lectura del módulo enchufable durante la lectura del código de
producto.
10 Ha ocurrido un error de lectura del módulo enchufable durante la lectura de la revisión del
módulo.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 377


Capítulo 16 Instrucciones de entrada/salida

Ejemplo de diagrama de bloque de funciones MODULE_INFO

Ejemplo de diagrama de lógica de escalera MODULE_INFO

378 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Ejemplo de texto estructurado MODULE_INFO

Resultados

Consulte también

Instrucciones de entrada/salida en la página 351

Diagramas de temporización de la instrucción MODULE_INFO en la


página 382

MODULE_INFO: información sobre el módulo de expansión y el


módulo enchufable en la página 380

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 379


Capítulo 16 Instrucciones de entrada/salida

MODULE_INFO: La siguiente información proporciona el tipo, ID de módulo, ID de


proveedor y los códigos de producto del módulo enchufable y el de
información sobre el expansión, y la palabra de revisión para el módulo de expansión tal como la
módulo de expansión y define Allen-Bradley.
el módulo enchufable
Información del módulo enchufable

Utilice esta tabla para determinar la información del módulo enchufable


definida por Allen-Bradley.

Módulo Tipo de módulo ID de ID del Tipo de producto Código de


enchufable enchufable módulo proveedor producto
2080-IF2 Analógico 96 1 10 32

2080-IF4 Analógico 98 1 10 33

2080-OF2 Analógico 100 1 10 34

2080-TC2 Analógico 102 1 10 35

2080-RTD2 Analógico 104 1 10 36

2080-DNET20 Comunicación 34 1 12 249

2080-SERIALISOL Comunicación 32 1 - -

2080-IQ4 Digital 192 1 7 192

2080-OB4 Digital 193 1 7 193

2080-OV4 Digital 194 1 7 194

2080-IQ4OB4 Digital 195 1 7 195

2080-IQ4OV4 Digital 196 1 7 196

2080-OW4I Digital 197 1 7 197

2080-MOT-HSC Específico 48 1 43 48

2080-TRIMPOT6 Específico 72 1 - -

Información del módulo de expansión

Utilice esta tabla para determinar la información del módulo de expansión


definida por Allen-Bradley.

380 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Número de Tipo de ID de ID del Tipo de producto Código de


modelo expansión módulo proveedor producto
2085-IF4 Analógico - 1 10 208

2085-IF8 Analógico - 1 10 206

2085-IRT4 Analógico - 1 10 213

2085-OF4 Analógico - 1 10 214

2085-IA8 Digital - 1 7 1148

2085-IM8 Digital - 1 7 1152

2085-IQ16 Digital - 1 7 1144

2085-IQ32T Digital - 1 7 1145

2085-OA8 Digital - 1 7 1149

2085-OB16 Digital - 1 7 1146

2085-OV16 Digital - 1 7 1147

2085-OW16 Digital - 1 7 1151

2085-OW8 Digital - 1 7 1150

Descripciones de palabra de revisión del módulo de expansión

Utilice esta tabla para determinar la información de palabra de revisión para


los módulos de expansión Allen-Bradley.

Bit Nombre Descripción

15 Velocidad máxima Estos bits identifican la frecuencia máxima para la velocidad en baudios
en baudios (1:0) máxima (1:0).
14  00 (bin) es 2 Mbps
 01 (bin) es 4 Mbps
 10 (bin) es 8 Mbps
 11 (bin) es 16 Mbps
13 Revisión secundaria Revisión menor (3:0) es la denominación de la revisión menor del producto.
(3:0) Este campo indica la revisión menor del número de catálogo designada por el
12 ID del proveedor, tipo de producto, código de producto, serie y la revisión
general.
11 La revisión menor está comprendida entre 0 y 15.

10

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 381


Capítulo 16 Instrucciones de entrada/salida

9 Revisión secundaria Revisión principal (4:0) es la denominación de la revisión general del


(4:0) producto. Este campo indica la revisión general del número de catálogo
8 designada por el ID del proveedor, tipo de producto, código de producto y
serie.
7 La revisión general está comprendida entre 0 y 31.

4 Serie (4:0) SERIE (4:0) es la denominación de serie del producto. Este campo indica la
letra de serie del número del catálogo designado por el ID del proveedor, el
tipo de producto y el código de producto.
Serie Serie Serie Serie Serie Serie Serie Serie
(4:0) (4:0) (4:0) (4:0)
0 A 8 I 16 Q 24 Y

1 B 9 J 17 R 25 Z

2 C 10 K 18 S 26 AA

3 D 11 L 19 T 27 AB

4 E 12 M 20 U 28 CA

5 F 13 N 21 V 29 AD

6 G 14 O 22 W 30 AE

7 H 15 P 23 X 31 >AE

Consulte también

MODULE_INFO en la página 375

Diagramas de Los siguientes ejemplos de diagrama de temporización describen escenarios


de ejecución de la instrucción MODULE_INFO.
temporización de la
instrucción
MODULE_INFO

382 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Ejecución correcta cuando un módulo está físicamente presente

Utilice esta tabla para determinar los valores de parámetros de


MODULE_INFO para cada ciclo de exploración.

Ciclo de Descripción
exploración
1, 8 La condición de línea pasa a ser CIERTO cuando:
 El bit de entrada de Habilitar es CIERTO.
 ModuleType y SlotID son válidos. Hay un módulo físico presente.
 Los bits de salida Listo y Presente son CIERTO.
 El bit de salida Error es FALSO.
 Actualizar la información relativa al módulo para ID de módulo, ID de
proveedor, tipo de producto, código de producto y revisión del módulo en
consecuencia.
2,3,4 No hay cambio en la condición de línea.
5. 9 La condición de línea pasa a ser FALSO si el bit Habilitar es FALSO. Se
desactivan todos los parámetros de salida.
6, 7, 10, 11 No hay cambio en la condición de línea. El bit Habilitar es FALSO. Se
desactivan todos los parámetros de salida.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 383


Capítulo 16 Instrucciones de entrada/salida

Ejecución correcta cuando el módulo no está presente físicamente

Utilice esta tabla para determinar los valores de parámetros de


MODULE_INFO para cada ciclo de exploración.

Ciclo de Descripción
exploración
1, 8 La condición de línea pasa a ser CIERTO cuando:
 El bit de entrada de Habilitar es CIERTO.
 ModuleType y SlotID son válidos. No hay un módulo físico presente.
 El bit de salida Listo es CIERTO.
 Los bits de salida Error y Presente son FALSO.
 Actualizar la información relativa al módulo para ID de módulo, ID de
proveedor, tipo de producto, código de producto y revisión del módulo en
consecuencia.
2,3,4 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada son válidos y no hay un módulo físico presente.
 Actualice los parámetros de salida en consecuencia.
5. 9 La condición de línea pasa a ser FALSO cuando:
 El bit Habilitar es FALSO.
 Se desactivan todos los parámetros de salida.
6, 7, 10, 11 No hay cambio en la condición de línea. El bit Habilitar es FALSO. Se
desactivan todos los parámetros de salida.

384 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Ejecución de MODULE_INFO con Error

Utilice esta tabla para determinar los valores de parámetros de


MODULE_INFO para cada ciclo de exploración.

Ciclo de Descripción
exploración
1, 8 La condición de línea pasa a ser CIERTO cuando:
 El bit de entrada de Habilitar es CIERTO.
 ModuleType y SlotID son válidos. No hay un módulo físico presente.
 Los bits de salida Listo y Presente son CIERTO.
 El bit de salida Error es CIERTO.
 La información relativa al módulo para ID de módulo, ID de proveedor, tipo de
producto, código de producto y revisión del módulo se elimina.
2,3,4 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 ModuleType, SlotID o ambos no son válidos.
 Actualice los parámetros de salida en consecuencia.
5. 9 La condición de línea pasa a ser FALSO cuando:
 El bit Habilitar es FALSO.
 Se desactivan todos los parámetros de salida.
6, 7, 10, 11 No hay cambio en la condición de línea. El bit Habilitar es FALSO. Se
desactivan todos los parámetros de salida.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 385


Capítulo 16 Instrucciones de entrada/salida

Ejecución correcta de MODULE_INFO con error: ningún módulo físico

Utilice esta tabla para determinar los valores de parámetros de


MODULE_INFO para cada ciclo de exploración.

Ciclo de Descripción
exploración
1, 8 La condición de línea pasa a ser CIERTO cuando:
 El bit de entrada de Habilitar es CIERTO.
 ModuleType, SlotID o ambos no son válidos. No hay un módulo físico
presente.
 Los bits de salida Listo y Presente son FALSO.
 El bit de salida Error es CIERTO.
 La información relativa al módulo para ID de módulo, ID de proveedor, tipo de
producto, código de producto y revisión del módulo se elimina.
2 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 ModuleType, SlotID o ambos no son válidos.
 Actualice los parámetros de salida en consecuencia.
3, 4 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 ModuleType y SlotID son ambos válidos. El módulo está presente
físicamente.
 Los bits de salida Listo y Presente son CIERTO.
 El bit de salida Error es FALSO.
 Actualizar la información del módulo para ID de módulo, ID de proveedor, tipo
de producto, código de producto y revisión del módulo en consecuencia.
5. 9 La condición de línea pasa a ser FALSO cuando:
 El bit Habilitar es FALSO.
 Se desactivan todos los parámetros de salida.

386 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Ciclo de Descripción
exploración
6, 7, 10, 11 No hay cambio en la condición de línea. El bit Habilitar es FALSO. Se
desactivan todos los parámetros de salida.

Se ha ejecutado correctamente MODULE_INFO con error con el


módulo físico presente

Utilice esta tabla para determinar los valores de parámetros de


MODULE_INFO para cada ciclo de exploración.

Ciclo de Descripción
exploración
1, 8 La condición de línea pasa a ser CIERTO cuando:
 El bit de entrada de Habilitar es CIERTO.
 ModuleType, SlotID o ambos son válidos. El módulo está presente
físicamente.
 Los bits de salida Listo y Presente son CIERTO.
 El bit de salida Error es FALSO
 Actualizar la información relativa al módulo para ID de módulo, ID de
proveedor, tipo de producto, código de producto y revisión del módulo en
consecuencia.
2 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada son válidos y no hay un módulo presente
físicamente.
 Actualice los parámetros de salida en consecuencia.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 387


Capítulo 16 Instrucciones de entrada/salida

Ciclo de Descripción
exploración
3, 4 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 ModuleType y SlotID no son válidos. El módulo está presente físicamente.
 Los bits de salida Listo y Presente son FALSO.
 El bit de salida Error es CIERTO y está desactivado.
 Actualizar la información del módulo para ID de módulo, ID de proveedor, tipo
de producto, código de producto y revisión del módulo en consecuencia.
5. 9 La condición de línea pasa a ser FALSO cuando:
 El bit Habilitar es FALSO.
 Se desactivan todos los parámetros de salida.
6, 7, 10, 11 No hay cambio en la condición de línea. El bit Habilitar es FALSO. Se
desactivan todos los parámetros de salida.

Consulte también

Instrucciones de entrada/salida en la página 351

MODULE_INFO en la página 375

PLUGIN_INFO Lea la información de módulo desde un módulo enchufable genérico o un


módulo de expansión.
(información del
módulo enchufable) Detalles de la operación:

 En Connected Components Workbench 10 o posterior, la instrucción


PLUGIN_INFO puede leer cualquier información de módulo
enchufable genérico o el módulo de expansión, excepto en el módulo
2080-MEMBAK-RTC.
 Si no hay ningún módulo genérico enchufable o de expansión, todos
los valores vuelven a cero (0).

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.
388 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018
Instrucciones de entrada/salida Capítulo 16

Parámetro Tipo de Tipo de Descripción


parámetro datos
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta leer información del módulo de expansión o
enchufable.
Falso: no se ejecuta el bloque de función. Todos los valores de
datos se restablecen a 0.
SlotID Entrada UINT Número de ranura enchufable:
ID de ranura = 1,2,3,4,5
(Comenzando por la primera ranura de la izquierda = 1).

Número de ranura de expansión:


ID de ranura = 101, 102, 103, 104
(Comenzando por la primera ranura de la izquierda = 101).
ModID Salida UINT ID física del módulo genérico enchufable.
 Si el módulo de expansión no es compatible, ModID = 0xFFF
 Si un módulo enchufable o módulo de expansión no está
presente ModID = 0x0000
VendorID Salida UINT El ID del proveedor del módulo genérico enchufable o módulo de
expansión.
En el caso de productos Allen Bradley, la ID del proveedor = 1.
Si un módulo enchufable o módulo de expansión no está presente
VendorID = 0x0000
Tipo de Salida UINT Tipo de producto del módulo genérico enchufable o de expansión.
producto Si un módulo enchufable o módulo de expansión no está presente
Tipo de producto = 0x0000
Código de Salida UINT Código de producto del módulo genérico enchufable o de
producto expansión.
Si un módulo enchufable o módulo de expansión no está presente
Código de producto = 0x0000
ModRevision Salida UINT Información de revisión del módulo genérico enchufable o de
expansión.
Si un módulo enchufable o módulo de expansión no está presente
ModRevision = 0x0000
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera. El
diagrama de lógica de escalera agrega la salida ENO
automáticamente.

Ejemplo de diagrama de bloque de funciones PLUGIN_INFO

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 389


Capítulo 16 Instrucciones de entrada/salida

Ejemplo de diagrama de lógica de escalera PLUGIN_INFO

Ejemplo de texto estructurado PLUGIN_INFO

Resultados

Consulte también

Instrucciones de entrada/salida en la página 351

PLUGIN_READ (leer Lee datos de un módulo enchufable genérico.

módulo enchufable) Detalles de la operación:

390 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

 Cualquier módulo enchufable excepto de los módulos


2080-MEMBAK-RTC.
 Si no hay ningún módulo genérico enchufable, todos los valores
vuelven a cero (0).

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta leer UPM.
Falso: no se realiza la operación de lectura y los datos de la matriz
de datos no son válidos.
SlotID Entrada UINT Número de ranura enchufable.
ID de ranura = 1, 2, 3, 4, 5 (comenzando por la ranura más a la
izquierda = 1).
Offset Entrada UINT Desplazamiento de la dirección de los primeros datos que se
leerán, calculando a partir del primer byte del módulo genérico
enchufable.
DataLength Entrada UINT El número de bytes que se van a leer.
DataArray Entrada USINT Una matriz que se utiliza para almacenar los datos leídos del
módulo genérico enchufable.
Sts Salida UINT Códigos de estado de PLUGIN_READ.
Códigos de estado (Sts):
 0x00 - bloque de funciones no habilitado (sin funcionamiento).
 0x01 - Funcionamiento del módulo enchufable correcto.
 0x02 - Error de funcionamiento del módulo enchufable debido a
un ID de ranura no válido.
 0x03 - Error de funcionamiento del módulo enchufable porque
es un módulo genérico enchufable válido.
 0x04 - Error de funcionamiento del módulo enchufable debido a
que los datos operan fuera de rango.
 0x05 - Error de funcionamiento del módulo enchufable debido a
un error de paridad de acceso a datos.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 391


Capítulo 16 Instrucciones de entrada/salida

ENO Salida BOOL Habilita la salida.


Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones PLUGIN_READ

Ejemplo de diagrama de lógica de escalera PLUGIN_READ

Ejemplo de texto estructurado PLUGIN_READ

Consulte también

Instrucciones de entrada/salida en la página 351

PLUGIN_RESET Restablece el hardware de cualquier módulo genérico enchufable, excepto de


los módulos 2080-MEMBAK-RTC. Tras restablecer el hardware, el módulo
(restablecer módulo genérico enchufable está listo para su configuración y funcionamiento.
enchufable)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

392 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta restablecer módulo enchufable.
Falso: no realiza ninguna operación de
restablecimiento.
SlotID Entrada UINT Número de ranura enchufable.
ID de ranura = 1, 2, 3, 4, 5 (comenzando por la ranura
más a la izquierda = 1).
Sts Salida UINT Códigos de estado PLUGIN_RESET.
Códigos de estado (Sts):
 0x00 - bloque de funciones no habilitado (sin
funcionamiento).
 0x01 - Funcionamiento del módulo enchufable
correcto.
 0x02 - Error de funcionamiento del módulo
enchufable debido a un ID de ranura no válido.
 0x03 - Error de funcionamiento del módulo
enchufable porque es un módulo genérico
enchufable válido.
-La configuración del módulo 2080-MOT-HSC está
en el modo de instrucción del contador de alta
velocidad.
 0x04 - Error de funcionamiento del módulo
enchufable debido a que los datos operan fuera de
rango.
 0x05 - Error de funcionamiento del módulo
enchufable debido a un error de paridad de acceso a
datos.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de
escalera.

Ejemplo de diagrama de bloque de funciones PLUGIN_RESET

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 393


Capítulo 16 Instrucciones de entrada/salida

Ejemplo de diagrama de lógica de escalera PLUGIN_RESET

Ejemplo de texto estructurado PLUGIN_RESET

Resultados

Consulte también

Instrucciones de entrada/salida en la página 351

PLUGIN_WRITE Escribe un bloque de datos en el hardware de cualquier módulo genérico


enchufable, excepto de los módulos 2080-MEMBAK-RTC.
(escribir módulo
enchufable) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

394 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
CIERTO: ejecuta operación de escritura de módulo enchufable.
FALSO: no realiza ninguna operación de escritura de datos.
SlotID Entrada UINT Número de ranura enchufable.
ID de ranura = 1, 2, 3, 4, 5 (comenzando por la ranura más a la
izquierda = 1).
AddrOffset Entrada UINT Desplazamiento de la dirección de los primeros datos que se
escribirán, calculando a partir del primer byte del módulo
genérico enchufable.
DataLength Entrada UINT El número de bytes que se van a escribir.
DataArray Entrada USINT Datos que se escribirán en el módulo genérico enchufable.
Sts Salida UINT Códigos de estado PLUGIN_WRITE
Códigos de estado (Sts):
 0x00 - bloque de funciones no habilitado (sin
funcionamiento).
 0x01 - Funcionamiento del módulo enchufable correcto.
 0x02 - Error de funcionamiento del módulo enchufable
debido a un ID de ranura no válido.
 0x03 - Error de funcionamiento del módulo enchufable
porque es un módulo genérico enchufable válido.
 0x04 - Error de funcionamiento del módulo enchufable
debido a que los datos operan fuera de rango.
 0x05 - Error de funcionamiento del módulo enchufable
debido a un error de paridad de acceso a datos.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones PLUGIN_WRITE

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 395


Capítulo 16 Instrucciones de entrada/salida

Ejemplo de diagrama de lógica de escalera PLUGIN_WRITE

Ejemplo de texto estructurado PLUGIN_WRITE

Consulte también

Instrucciones de entrada/salida en la página 351

RCP (receta) Lee el valor de datos de una variable del archivo de datos de receta alojado
en la carpeta de datos de receta de la tarjeta SD y actualiza el valor con el
motor de tiempo de ejecución. Escribe los valores de la variable con el motor
de tiempo de ejecución en un archivo de datos de receta en la tarjeta SD.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

396 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilita el bloque de instrucción de lectura/escritura de receta.
TRUE - Rising Edge detected, execute recipe instruction if the
previous operation is completed.
FALSE - Rising Edge not detected, do not execute recipe
instruction.
RWFlag Entrada BOOL TRUE - RWFlag (Write operation). La receta lee los valores de
la variable con el motor de tiempo de ejecución en un archivo
de datos de receta de la tarjeta SD.
FALSE - RWFlag (Read operation). La receta lee los valores de
la variable en la tarjeta SD y actualiza el valor de la variable
correspondiente en el motor del tiempo de ejecución.
CfgID Entrada USINT Número de ID de VA de configuración de receta (1-10).
FileName Entrada CADENA Nombre del archivo de datos de receta (30 caracteres como
máximo).
Estado Salida USINT Estado actual del bloque de instrucción de la receta.
Códigos de estado RCP:
 0 Inactivo
 1 Activo
 2 Correcto, finalizado sin errores.
 3 Error, finalizado con errores.
ErrorID Salida UDINT El código de error RCP numérico.
Las definiciones se establecen en los códigos de estado RCP.

Códigos de error RCP

Código de Nombre del error


error
0 RCP_ERR_NONE
1 RCP_ERR_NO_SDCARD
2 RCP_ERR_DATAFILE_FULL
3 RCP_ERR_DATAFILE_ACCESS
La tarjeta SD se identifica como:
 rota.
 llena.
 de solo lectura.
4 RCP_ERR_CFG_ABSENT
5 RCP_ERR_CFG_ID
6 RCP_ERR_RESOURCE_BUSY
7 RCP_ERR_CFG_FORMAT
8 RCP_ERR_RESERVED
Reservado para una posible ampliación futura.
9 RCP_ERR_UNKNOWN
10 RCP_ERR_DATAFILE_NAME
11 RCP_ERR_DATAFOLDER_INVALID
12 RCP_ERR_DATAFILE_ABSENT
13 RCP_ERR_DATAFILE_FORMAT

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 397


Capítulo 16 Instrucciones de entrada/salida

Código de Nombre del error


error
14 RCP_ERR_DATAFILE_SIZE
El archivo de datos de receta es demasiado grande
(> 4 kB).

Ejemplo de diagrama de bloque de funciones RCP

Ejemplo de diagrama de lógica de escalera RCP

Ejemplo de texto estructurado RCP

Consulte también

Instrucciones de entrada/salida en la página 351

RTC_READ (leer Lee la información del módulo de reloj de tiempo real (RTC).

reloj en tiempo real) Detalles de la operación:

 Controlador Micro810 o Micro820 con RTC integrado:

398 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

 RTCBatLow siempre se define a cero (0).


 RTCEnabled siempre se define a uno (1).
 Si el RTC integrado ha perdido su carga/memoria debido a un corte de
energía:
 RTCData se define a 2000/1/1/0/0/0.
 RTCEnabled se define a uno (1).

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta la lectura de información de RTC.
Falso: no realiza la operación de lectura y los datos de la salida
RTC no son válidos.
RTCData Salida RTC Información de los datos RTC: aa/mm/dd, hh/mm/ss, semana.
La salida de RTCData se define utilizando el tipo de datos RTC.
RTCPresent Salida BOOL Cierto: el hardware RTC está enchufado.
Falso: el hardware RTC no está enchufado.
RTCEnabled Salida BOOL Cierto: el hardware RTC está habilitado (con temporización).
Falso: el hardware RTC no está habilitado (sin temporización).
RTCBatLow Salida BOOL Cierto: batería baja de RTC.
Falso: batería de RTC con carga.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Tipo de datos RTC

Utilice esta tabla para determinar los valores de los parámetros para el tipo de
datos RTC.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 399


Capítulo 16 Instrucciones de entrada/salida

Parámetro Tipo de Descripción


datos
Año UINT El ajuste de año de RTC. Valor de 16 bits, y el rango válido es entre
2000 (1 de enero, 00:00:00) y
2098 (31 de diciembre, 23:59:59)
Mes UINT El ajuste de mes de RTC.
Día UINT El ajuste de día de RTC.
Hora UINT El ajuste de hora de RTC.
Minuto UINT El ajuste de minuto de RTC.
Segundo UINT El ajuste de segundo de RTC.
Día de la semana UINT El ajuste de día de la semana de RTC. Con RTC_SET, este parámetro se
ignora.

Ejemplo de diagrama de bloque de funciones de RTC_READ

Ejemplo de diagrama de lógica de escalera de RTC_READ

Ejemplo de texto estructurado de RTC_READ

Consulte también

Instrucciones de entrada/salida en la página 351


400 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018
Instrucciones de entrada/salida Capítulo 16

RTC_SET Establecer datos del RTC (reloj en tiempo real) según la información del
módulo RTC.
(establecer reloj en
tiempo real) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta RTC_SET con la información de RTC de
entrada. Normalmente solo se ejecuta para 1 exploración del
programa al actualizar el RTC.
FALSO: no ejecuta RTC_SET. Se establece en FALSO para
utilizar RTC con normalidad.
RTCEnable Entrada BOOL Cierto: para habilitar RTC con los datos RTC especificados.
Falso: para deshabilitar RTC.
Los controladores Micro810 y Micro820 omiten esta entrada.
RTCData Entrada RTC Información de los datos RTC: semana en aa/mm/dd,
hh/mm/ss, tal como se define en el tipo de datos RTC.
RTCData se ignora si RTCEnable = 0.
RTCPresent Salida BOOL Cierto: el hardware RTC está enchufado.
Falso: el hardware RTC no está enchufado.
RTCEnabled Salida BOOL Cierto: el hardware RTC está habilitado (con temporización).
Falso: el hardware RTC no está habilitado (sin temporización).
RTCBatLow Salida BOOL Cierto: batería baja de RTC.
Falso: batería de RTC con carga.
Sts Salida USINT El estado de la operación de lectura.
Valores de estado (Sts) de RTC_Set:
 0x00: bloque de funciones no habilitado (sin funcionamiento).
 0x01: operación de establecimiento de RTC finalizada con
éxito.
 0x02: operación de establecimiento de RTC finalizada con
errores.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 401


Capítulo 16 Instrucciones de entrada/salida

Tipo de datos RTC

Utilice esta tabla para determinar los valores de los parámetros para el tipo de
datos RTC.

Parámetro Tipo de Descripción


datos
Año UINT El ajuste de año de RTC. Valor de 16 bits, y el rango válido es entre
2000 (1 de enero, 00:00:00) y
2098 (31 de diciembre, 23:59:59)
Mes UINT El ajuste de mes de RTC.
Día UINT El ajuste de día de RTC.
Hora UINT El ajuste de hora de RTC.
Minuto UINT El ajuste de minuto de RTC.
Segundo UINT El ajuste de segundo de RTC.
Día de la semana UINT El ajuste de día de la semana de RTC. Con RTC_SET, este parámetro se
ignora.

Ejemplo de diagrama de bloque de funciones RTC_SET

Ejemplo de diagrama de lógica de escalera RTC_SET

Ejemplo de texto estructurado RTC_SET

402 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Consulte también

Instrucciones de entrada/salida en la página 351

SYS_INFO Lee el bloque de datos de estado para el controlador Micro800.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta la operación de lectura.
Falso: no ejecuta la función.
Sts Salida SYSINFO Bloque de datos de estado del sistema.
La salida de Sts está definida en el tipo de datos
SYS_INFO.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de
escalera.

Ejemplo de diagrama de bloque de funciones SYS_INFO

Ejemplo de diagrama de lógica de escalera SYS_INFO

Ejemplo de texto estructurado SYS_INFO

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 403


Capítulo 16 Instrucciones de entrada/salida

Resultados

Consulte también

Instrucciones de entrada/salida en la página 351

Tipo de datos SYS_INFO en la página 404

Tipo de datos En la tabla siguiente se describe el tipo de datos SYSINFO.


SYS_INFO
Parámetro Tipo de Descripción
datos
BootMajRev UINT Revisión principal de arranque.
BootMinRev UINT Revisión menor de arranque.
Serie del sistema UINT Serie del sistema operativo:
operativo 0 indica un dispositivo de serie A
1 indica un dispositivo de serie B

OSMajRev UINT Revisión principal de SO.


OSMinRev UINT Revisión menor de SO.
ModeBehaviour BOOL Comportamiento del modo (Cierto: activa RUN en el arranque).

FaultOverride BOOL Anulación de fallo (Cierto: anula el error en el arranque).


StrtUpProtect BOOL Protección de arranque (Cierto: ejecuta el programa de protección de arranque).
Para versiones futuras.

404 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Parámetro Tipo de Descripción


datos
MajErrHalted BOOL Error grave detenido (Cierto: detiene un error grave).

MajErrCode UINT Código de error grave.


MajErrUFR BOOL Error grave durante rutina de error de usuario.
Para versiones futuras.
UFRPouNum UINT Número de programa de rutina de error de usuario.
MMLoadAlways BOOL Restauración del módulo de memoria del controlador siempre en el encendido
(Cierto: restaurar).
MMLoadOnError BOOL Restauración del módulo de memoria del controlador si se produce un error en el
arranque (Cierto: restaurar).
MMPwdMismatch BOOL Contraseña del módulo de memoria no coincidente (Cierto: la contraseña del
controlador y del módulo de memoria no coinciden).

FreeRunClock UINT Reloj asíncrono que se incrementa cada 100 microsegundos de 0 a 65.535 y luego
regresa a 0. Puede utilizar el reloj, al que se puede acceder de forma global, si
necesita una resolución mayor que la del temporizador estándar de 1 milisegundo.
Compatible únicamente con los controladores Micro830 y Micro850. El valor de los
controladores Micro810 permanece en 0.

ForcesInstall BOOL Fuerzas habilitadas (Cierto: habilitado).


EMINFilterMod BOOL Filtro integrado modificado (Cierto: modificado).

Consulte también

SYS_INFO en la página 403

TRIMPOT_READ Lee el valor de un potenciómetro de ajuste concreto.

(leer potenciómetro Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de ajuste) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta la lectura del potenciómetro de ajuste.
Falso: no se realiza la operación de lectura y el valor de salida del
potenciómetro de ajuste no es válido.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 405


Capítulo 16 Instrucciones de entrada/salida

TrimPotID Entrada UINT El ID de potenciómetro para leer. TrimPotID se define en las


definiciones de ID de potenciómetro de ajuste.

TrimPotValue Salida UINT Valor de potenciómetro de ajuste actual.


Sts Salida UINT El estado de la operación de lectura del potenciómetro de ajuste.
Códigos de estado (Sts) de TRIMPOT:
 0x00 - Bloque de funciones no habilitado (sin operación de
lectura/escritura).
 0x01 - Operación de lectura/escritura finalizada
correctamente.
 0x02 - Error de operación de lectura/escritura debido a un ID
de potenciómetro de ajuste no válido.
 0x03 - Error de operación de escritura debido a un valor fuera
de rango.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones TRIMPOT

Ejemplo de diagrama de lógica de escalera TRIMPOT

Ejemplo de texto estructurado TRIMPOT

Consulte también

Instrucciones de entrada/salida en la página 351

Definición de ID de potenciómetro de ajuste en la página 406

Definición de ID de En la siguiente tabla se describe la definición de ID de potenciómetro de


ajuste utilizada en la instrucción TRIMPOT_read.
Trimpot

406 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de entrada/salida Capítulo 16

Selección de salida Bit Descripción

Definición de ID de 15 - 13 Tipo de módulo de Trimpot:


Trimpot  0x00: integrado.
 0x01: expansión.
 0x02: puerto enchufable.

12 - 8 ID de ranura del módulo:


 0x00: integrado.
 0x01-0x1F: ID del módulo de expansión.
 0x01-0x05: ID del puerto enchufable.

7-4 Tipo de Trimpot:


 0x00: reservado.
 0x01: tipo 1 de potenciómetro de ajuste digital
(módulo LCD 1).
 0x02: módulo de potenciómetro de ajuste mecánico 1.
3-0 ID de Trimpot en el interior del módulo:
 0x00-0x0F: integrado.
 0x00-0x07: ID de potenciómetro de ajuste de
expansión.
 0x00-0x07: ID de potenciómetro de ajuste de puerto
enchufable.
El ID de Trimpot comienza a partir de 0.

Consulte también

TRIMPOT_READ en la página 405

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 407


Capítulo 16 Instrucciones de entrada/salida

408 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 17

Instrucciones de interrupción

Use las instrucciones de interrupción para indicar al procesador que debe


prestar atención a un evento. Normalmente, la señal de interrupción se utiliza
para situaciones de prioridad elevada que requieren interrumpir el código
actual que está ejecutando el procesador.

Función Descripción

STIS en la página Inicia el temporizador de interrupción del usuario retardado STI desde el programa
409 de control en lugar de iniciarlo automáticamente.
UIC en la página Borra el bit de pérdida en la interrupción del usuario seleccionada.
411
UID en la página Deshabilita una interrupción del usuario específica.
413
UIE en la página Habilita una entrada del usuario específica.
414
UIF en la página 416 Vacía o elimina una entrada del usuario pendiente.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

STIS (selección de Inicia el temporizador de interrupción retardada seleccionable (STI) del


usuario desde el programa de control en lugar de iniciarlo automáticamente.
inicio retardado)
Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 409


Capítulo 17 Instrucciones de interrupción

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar instrucción.
Cierto: inicia el temporizador STI desde el programa de control.
Falso: no ejecuta la función.
IRQType Entrada UDINT Usar las palabras definidas de STI.
- IRQ_STI0
- IRQ_STI1
- IRQ_STI2
- IRQ_STI3
SetPoint Entrada UINT El tiempo (en ms) que debe transcurrir antes de ejecutar la
interrupción retardada seleccionable.
Un valor de 0 deshabilita la función STIS.
Un valor entre 1 y 65535 habilita la función STIS.
STIS Salida BOOL Estado de llamada (igual que Enable).

Ejemplo de diagrama de bloque de funciones STIS

Ejemplo de diagrama de lógica de escalera STIS

Ejemplo de texto estructurado STIS

(* Equivalencia de ST: *)

TESTOUTPUT := STIS(TESTENABLE, 2, 1000) ;

410 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de interrupción Capítulo 17

Resultados

Consulte también

Instrucciones de interrupción en la página 409

UIC (borrado de bit Borra el bit de pérdida en las interrupciones del usuario seleccionadas.

de pérdida de Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


interrupción) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Enable Entrada BOOL Habilitar instrucción.
Cierto: inicia la operación borrar bit.
Falso: no ejecuta la función.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 411


Capítulo 17 Instrucciones de interrupción

IRQType Entrada UDINT Usar las - IRQ_HSC3


palabras - IRQ_HSC4
definidas de - IRQ_HSC5
STI.
- IRQ_STI0
- IRQ_EII0
- IRQ_STI1
- IRQ_EII1
- IRQ_STI2
- IRQ_EII2
- IRQ_STI3
- IRQ_EII3
- IRQ_UFR
- IRQ_EII4
- IRQ_UPM0
- IRQ_EII5
- IRQ_UPM1
- IRQ_EII6
- IRQ_UPM2
- IRQ_EII7
- IRQ_UPM3
- IRQ_HSC0
- IRQ_UPM4
- IRQ_HSC1
- IRQ_HSC2
UIC Salida BOOL Estado de llamada (igual que Enable).

Ejemplo de diagrama de bloque de funciones UIC

Ejemplo de diagrama de lógica de escalera UIC

Ejemplo de texto estructurado UIC

Resultados

Consulte también

Instrucciones de interrupción en la página 409

412 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de interrupción Capítulo 17

UID (deshabilitar Deshabilita las interrupciones de usuario seleccionadas.

interrupción) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Enable Entrada BOOL Habilitar instrucción.
Cierto: inicia la operación de deshabilitar.
Falso: no ejecuta la función.
IRQType Entrada UDINT Usar las palabras definidas - IRQ_HSC3
de STI. - IRQ_HSC4
- IRQ_EII0 - IRQ_HSC5
- IRQ_EII1 - IRQ_STI0
- IRQ_EII2 - IRQ_STI1
- IRQ_EII3 - IRQ_STI2
- IRQ_EII4 - IRQ_STI3
- IRQ_EII5 - IRQ_UFR
- IRQ_EII6 - IRQ_UPM0
- IRQ_EII7 - IRQ_UPM1
- IRQ_HSC0 - IRQ_UPM2
- IRQ_HSC1 - IRQ_UPM3
- IRQ_HSC2 - IRQ_UPM4
UID Salida BOOL Estado de llamada (igual que Enable).

Ejemplo de diagrama de bloque de funciones UID

Ejemplo de diagrama de lógica de escalera UID

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 413


Capítulo 17 Instrucciones de interrupción

Ejemplo de texto estructurado UID

(* Equivalencia de ST: *)

TESTOUTPUT := UID(TESTENABLE, 2) ;

Resultados

Consulte también

Instrucciones de interrupción en la página 409

UIE (habilitar Habilita una interrupción del usuario específica.

interrupción) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

414 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de interrupción Capítulo 17

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar instrucción.
Cierto: inicia la operación de habilitar.
Falso: no ejecuta la función.
IRQType Entrada UDINT Usar las palabras definidas de - IRQ_HSC3
STI. - IRQ_HSC4
- IRQ_EII0 - IRQ_HSC5
- IRQ_EII1 - IRQ_STI0
- IRQ_EII2 - IRQ_STI1
- IRQ_EII3 - IRQ_STI2
- IRQ_EII4 - IRQ_STI3
- IRQ_EII5 - IRQ_UFR
- IRQ_EII6 - IRQ_UPM0
- IRQ_EII7 - IRQ_UPM1
- IRQ_HSC0 - IRQ_UPM2
- IRQ_HSC1 - IRQ_UPM3
- IRQ_HSC2 - IRQ_UPM4
UIE Salida BOOL Estado de llamada (igual que Enable).

Ejemplo de diagrama de bloque de funciones UIE

Ejemplo de diagrama de lógica de escalera UIE

Ejemplo de texto estructurado UIE

(* Equivalencia de ST: *)

TESTOUTPUT := UIE(TESTENABLE, 2) ;

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 415


Capítulo 17 Instrucciones de interrupción

Resultados

Consulte también

Instrucciones de interrupción en la página 409

UIF (eliminar Vacía o elimina una interrupción del usuario pendiente.

interrupción Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


pendiente) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar instrucción.
Cierto: inicia la operación UIF.
Falso: no ejecuta la función.

416 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de interrupción Capítulo 17

IRQType Entrada UDINT Usar las palabras definidas - IRQ_HSC3


de STI. - IRQ_HSC4
- IRQ_EII0 - IRQ_HSC5
- IRQ_EII1 - IRQ_STI0
- IRQ_EII2 - IRQ_STI1
- IRQ_EII3 - IRQ_STI2
- IRQ_EII4 - IRQ_STI3
- IRQ_EII5 - IRQ_UFR
- IRQ_EII6 - IRQ_UPM0
- IRQ_EII7 - IRQ_UPM1
- IRQ_HSC0 - IRQ_UPM2
- IRQ_HSC1 - IRQ_UPM3
- IRQ_HSC2 - IRQ_UPM4
UIF Salida BOOL Estado de llamada (igual que Enable).

Ejemplo de diagrama de bloque de funciones UIF

Ejemplo de diagrama de lógica de escalera UIF

Ejemplo de texto estructurado UIF

(* Equivalencia de ST: *)

TESTOUTPUT := UIF(TESTENABLE, 2) ;

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 417


Capítulo 17 Instrucciones de interrupción

Resultados

Consulte también

Instrucciones de interrupción en la página 409

418 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 18

Instrucciones de control de
movimiento

Utilice las instrucciones de control de movimiento para programar y diseñar


el movimiento de un eje concreto. El control de movimiento requiere
Connected Components Workbench 2.0 o posterior.

Suge  Las instrucciones administrativas admiten movimiento PTO y movimiento de retroalimentación.


renci  Las instrucciones de control de movimiento que admiten un FBAxis son:
as: MC_ReadActualPosition y MC_ReadActualVelocity.

Instrucción Descripción

Administrativo
MC_AbortTrigger en la página 432 Cancela otros bloques de funciones de movimiento conectados a
eventos de disparador.
MC_Power en la página 454 Controla la etapa de potencia (ON u OFF).
MC_ReadAxisError en la página 464 Describe los errores del eje no relacionados con los bloques de
instrucciones de control de movimiento.
MC_ReadBoolParameter en la página Devuelve el valor de un parámetro específico del proveedor de
469 tipo BOOL.
MC_ReadParameter en la página 471 Devuelve el valor de un parámetro específico del proveedor de
tipo Real.
MC_ReadStatus en la página 474 Devuelve el estado del eje con respecto al movimiento en curso
actualmente.
MC_Reset en la página 479 Cambia el estado del eje de Parada de error a Estancamiento
restableciendo todos los errores internos de los ejes.
MC_SetPosition en la página 482 Cambia el sistema de coordenadas de un eje manipulando la
posición real.
MC_TouchProbe en la página 488 Registra una posición del eje en un evento de disparo.
MC_WriteBoolParameter en la página Modifica el valor de un parámetro específico del proveedor de tipo
492 BOOL.
MC_WriteParameter en la página 495 Modifica el valor de un parámetro específico del proveedor de tipo
REAL.
Movimiento
MC_Halt en la página 435 Activa una parada de movimiento controlada en condiciones
normales de funcionamiento.
MC_Home en la página 438 Ordena al eje que ejecute la secuencia <search home>.
MC_MoveAbsolute en la página 442 Envía un movimiento controlado a una posición absoluta
especificada.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 419


Capítulo 18 Instrucciones de control de movimiento

Instrucción Descripción

MC_MoveRelative en la página 446 Envía un movimiento controlado a una distancia especificada


relativa a la posición actual en el momento de ejecución.

MC_MoveVelocity en la página 450 Envía un movimiento controlado que nunca finaliza a una
velocidad especificada.
MC_ReadActualPosition en la página Devuelve la posición real del eje de retorno.
457 Requiere Connected Components Workbench 8 o superior.
MC_ReadActualVelocity en la página Devuelve la velocidad real del eje de retorno.
461 Requiere Connected Components Workbench 8 o superior.
MC_Stop en la página 485 Ordena una parada de movimiento controlado y cambia el estado
del eje a Parando.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

Reglas generales de Las reglas generales de los bloques de funciones de control de movimiento
de Micro800 cumplen las especificaciones de control de PLCopen Motion.
bloques de función La tabla siguiente proporciona las reglas generales sobre la interfaz de los
de control de bloques de función de control de movimiento.

movimiento
La regla se aplica a Regla

Parámetros de entrada Con Execute: Los parámetros se utilizan con el flanco ascendente de la entrada de
ejecución. Para modificar un parámetro, cambie los parámetros de entrada y vuelva a
activar el movimiento.
Si una instancia de un bloque de funciones recibe un nuevo comando de ejecución
antes de completarse (como una serie de comandos de la misma instancia), el nuevo
comando de ejecución se ignora y la instrucción emitida anteriormente continúa
ejecutándose.
Con Enable: Los parámetros se utilizan con el flanco ascendente de la entrada de
habilitación y se pueden modificar en cualquier momento.
Parámetros de entrada Durante la compilación de Aplicación del usuario, se documentan las entradas no
ausentes completadas. El controlador no gestiona los errores por entradas ausentes.

Entradas que superan los Si un bloque de función se activa con parámetros que incumplen los límites de
límites de aplicación aplicación, la instancia del bloque de función genera un error. En este caso, el resultado
del error se marca como activo e incluirá la ID del error. En la mayoría de los casos, el
controlador continuará en modo de ejecución y no se indicará un error de movimiento
como error grave del controlador.
Reglas de signo de entradas Las entradas de aceleración, desaceleración y sacudidas son siempre valores positivos.
Velocidad, Posición y Distancia pueden tener valores positivos y negativos.
Posición frente a distancia Posición es un valor definido en un sistema de coordenadas. La distancia es una
medición relativa relacionada con unidades técnicas. La distancia es la diferencia entre
dos posiciones.
Entrada de posición/distancia Los controladores Micro800 solo admiten movimientos lineales. En el bloque de función
MoveAbsolute, la entrada de posición es la ubicación absoluta que se indica al eje. En
MC_MoveRelative, la entrada de distancia es la ubicación relativa (considerando que la
posición actual del eje es 0) desde la posición actual.

420 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

La regla se aplica a Regla

Entrada de velocidad La velocidad es un valor positivo o negativo, sin embargo, también puede utilizar la
entrada de dirección para definir el signo de la velocidad (velocidad negativa x dirección
negativa = velocidad positiva). El parámetro E "Dirección" hace referencia a la entrada y
a la salida de velocidad por razones de compatibilidad.
Entrada de dirección Para el movimiento de distancia (posición), con la posición de destino (absoluta o
relativa) definida, la dirección de movimiento es única. La entrada de dirección para el
movimiento de distancia se ignora.
Para el movimiento de velocidad, el valor de entrada de dirección puede ser 1 (dirección
positiva), 0 (dirección actual) o -1 (dirección negativa). Para cualquier otro valor, solo se
considera su signo. Por ejemplo, -3 indica una dirección negativa; +2 una dirección
positiva, etcétera.
En el caso del movimiento de velocidad (MC_MoveVelocity), el signo (velocity ×
direction) determina la dirección de movimiento real si el valor no es 0. Por ejemplo, si
velocity × direction = +300, la dirección es positiva.
Entradas de aceleración,  Las entradas de aceleración o desaceleración deben tener un valor positivo. Si la
desaceleración y sacudidas aceleración y desaceleración se ajusta en un valor no positivo, el bloque de función
genera un error (ID de error: MC_FB_ERR_RANGE).
 La entrada de sacudida debe tener un valor no negativo. Si la sacudida se ajusta en
un valor negativo, el bloque de función generará un error (ID de Error:
MC_FB_ERR_RANGE).
 Si la sacudida máxima se configura como cero, todos los parámetros de sacudida del
bloque de funciones de control de movimiento, incluido el ajuste de sacudida de
MC_Stop, se deben configurar como 0. De lo contrario, el bloque de función generará
un error (ID de error: MC_FB_ERR_RANGE).
 Si la sacudida se configura como un valor distinto de cero, se genera un perfil de
curva en S; si la sacudida se configura como 0, se genera un perfil trapezoidal.
 La configuración de la sacudida inicial no está limitada a la configuración de la
sacudida máxima.
 Si el motor de movimiento no genera el perfil de movimiento de los parámetros de
entrada dinámicos, el bloque de funciones notifica un error (ID de error:
MC_FB_ERR_PROFILE).
Exclusividad de salida Con Execute: Si Ejecutar es Verdadera, una de las salidas Ocupado, Listo, Error y
Comando abortado también debe ser Verdadera. Las salidas son mutuamente
exclusivas: solo una salida o un bloque de función puede ser cierto.
Solo se puede definir una de las salidas Activo, Error, Listo y Comando abortado cada
vez.
Con Enable: Las salidas Válido y Error son mutuamente exclusivas: solo una salida o
un bloque de función puede ser cierto.
Estado de salida Con Execute: Las salidas Listo, Error, ID de error y Comando abortado se restablecen
con el flanco descendente de la instrucción de ejecución. Sin embargo, el flanco
descendente de la ejecución no detiene ni afecta a la ejecución del bloque de función
real. Incluso si la ejecución se restablece antes de completar el bloque de función, las
salidas correspondientes se configuran durante un ciclo como mínimo.
Si una instancia de un bloque de funciones recibe un nuevo comando de ejecución
antes de completarse (como una serie de comandos de la misma instancia), el nuevo
comando de ejecución se ignora y la instrucción emitida anteriormente continúa
ejecutándose.
Con Enable: Las salidas Válido, Habilitado, Ocupado, Error e ID de error se restablecen
con el flanco descendente de Habilitar en cuanto sea posible.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 421


Capítulo 18 Instrucciones de control de movimiento

La regla se aplica a Regla

Comportamiento de la salida La salida Listo se activa si la acción indicada se ha completado correctamente.


Listo Si hay múltiples bloques de función activos en el mismo eje en una secuencia, se
aplican los siguientes principios:
 Si se interrumpe un movimiento en un eje con otro movimiento en el mismo eje sin
haber completado el objetivo final, no se activará Done en el primer bloque de
funciones.
Comportamiento de salida Todos los bloques de función puede tener una salida Ocupado, lo que indica que el
Ocupado bloque de función no ha finalizado aún (en bloques de función con una entrada de
ejecución) o en funcionamiento y se esperan nuevas entradas de salida (en caso de
entrada de habilitación).
Ocupado se activa en el flanco ascendente de ejecución y se restablece cuando una de
las salidas Listo, Anulado o Error se activa. Este bloque de función se debe mantener en
el bucle activo del programa de aplicación mientras la salida Ocupado sea Cierto,
porque las salidas pueden cambiar.
Los bloques de función con la misma instancia que estén ocupados no se pueden
ejecutar hasta que dejen de estar ocupados. Los bloques de función con instancias
diferentes pueden cancelar la ejecución del bloque de función actual.
Comportamiento de salida La salida Comando abortado se activa cuando un movimiento ordenado interrumpe a
Comando abortado otro movimiento ordenado.
El comportamiento restablecido de Comando abortado es similar al de la salida Listo.
Cuando se activa Comando abortado, también se restablecerán el resto de señales de
salida como En velocidad.
Salida Activo La salida Activo es necesaria en bloques de función en búfer y se activa en el momento
en que el bloque de función toma el control de movimiento del eje correspondiente.
En modo sin búfer, las salidas Activo y Ocupado pueden tener el mismo valor.
Estados Habilitar y Válido La entrada Habilitar está asociada a una salida Válido. Habilitar es sensible al nivel y
Válido muestra que un conjunto válido de salidas está disponible en el bloque de
funciones.
La salida Válido es verdadera mientras haya un valor de salida válido disponible y la
entrada Habilitar sea verdadera. El valor de la salida correspondiente se puede
actualizar mientras la entrada Habilitar sea verdadera.
Si se produce un error en el bloque de función, la salida no es válida (Válida se ajusta
en falso). Cuando desaparece el error, los valores volverán a aparecer y la salida Válido
se volverá a activar.
Manejo de errores de salida Salidas utilizadas para definir errores
Todos los bloques tienen las dos salidas siguientes, que se utilizan con errores que se
producen durante la ejecución:
 Error: el extremo de incremento de "Error" informa que se ha producido un error
durante la ejecución del bloque de funciones.
 ErrorID: número de error.
Las salidas Done e InVelocity indican que el ciclo se ha completado correctamente.
Lógicamente, estas salidas y Error se excluyen mutuamente.
Los errores de instancia no siempre tienen como resultado un error de eje (llevan el eje
a Error parada).
Cómo se restablecen las salidas de error
 Las salidas de error de los bloques de funciones relevantes se restablecen con el
flanco descendiente de Execute y Enable.
 Las salidas de error de un bloque de funciones con Enable se pueden restablecer
durante la operación sin necesidad de restablecer Enable.

422 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

La regla se aplica a Regla

Tipos de errores
 Lógica de bloques de funciones (por ejemplo, parámetros fuera de intervalo, intento
de incumplimiento del estado de la máquina, etcétera)
 Límite de HW o Límite de SW
 Mecanismo/Motor
 Unidad
Tipos de ENUM de Debido a las limitaciones de nombres de la normativa IEC sobre la singularidad de
convenciones de nombre nombres de variables, se utiliza la referencia 'mc' al espacio de nombre de control de
PLCopen Motion Control para ENUM.
De esta forma es posible evitar el conflicto de utilizar los tipos positivos y negativos de
ENUM, por ejemplo, con variables con estos nombres a lo largo del resto del proyecto,
ya que se denominarán mcPositivo y mcNegativo, respectivamente.

Consulte también

Instrucciones de control de movimiento en la página 419

Detalles de Los siguientes temas proporcionan detalles sobre los parámetros de control
de movimiento que son relevantes para todos los bloques de funciones de
parámetros de control de movimiento.
bloques de
Estados de los ejes de control de movimiento en la página 423
funciones de
control de Números de parámetro de bloques de funciones de control de movimiento en
la página 426
movimiento
ID de error de bloque de función de control de movimiento en la página 427

Estados de los ejes de La norma básica del comportamiento del eje en un nivel superior en el que
hay activados varios bloques de funciones de control de movimiento es que
control de movimiento los comandos de movimiento siempre se adoptan de manera secuencial,
aunque el controlador tenga capacidad para llevar a cabo un procesamiento
en paralelo. Cualquier comando de movimiento es una transición que cambia
el estado del eje y, como consecuencia, modifica la forma en que se calcula
el movimiento actual.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 423


Capítulo 18 Instrucciones de control de movimiento

Diagrama de estado de los ejes de control de movimiento

El eje siempre tiene uno de los estados definidos en el siguiente diagrama.

Comportamiento del estado del eje de control de movimiento

No Nota
1 En los estados Parada de error y Parando, todos los bloques de función (salvo MC_Reset) se
pueden activar, aunque no se ejecutarán.
MC_Reset genera una transición al estado de estancamiento. Si se produce un error mientras la
máquina tiene un estado Parando, se generará una transición al estado Parada de error.
2 Power.Enable = Cierto y se produce un error en el eje.

3 Power.Enable = Cierto y no se produce ningún error en el eje

4 MC_Stop.Done AND NOT MC_Stop.Execute.

5 Si se activa MC_Power con Habilitar = Falso, el eje pasa al estado Deshabilitado para cada estado,
incluyendo Parada de error.
6 Si se produce un error mientras la máquina tiene un estado Parando, se generará una transición al
estado Parada de error.

Valores de código del estado del eje de control de movimiento

Puede supervisar el estado del eje mediante la función Monitor de eje. La


siguiente tabla identifica los valores utilizados para definir cada uno de los
estados predefinidos del eje.

424 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Valor de Nombre de estado


estado
0x00 Deshabilitado

0x01 Atascado

0x02 Movimiento discreto

0x03 Movimiento continuo

0x04 Autodirección

0x06 Parando

0x07 Parada de error

Actualización del estado del eje

Al ejecutarse el movimiento, la actualización del estado del eje depende de


cuándo llama la exploración de POU al bloque de funciones de movimiento
relevante. Tal es el caso aunque el perfil de movimiento esté controlado por
el motor de movimiento como tarea en segundo plano y sea independiente de
la exploración de POU.

Por ejemplo, en un eje en movimiento de un POU de lógica de escalera


(estado de peldaño = Cierto), se explora un bloque de funciones
MC_MoveRelative del peldaño y el eje comienza a moverse. Antes de que se
complete MC_MoveRelative, el estado del peldaño pasa a ser Falso y
MC_MoveRelative no se vuelve a explorar. En este caso, el estado del eje no
puede cambiar de Movimiento discreto a Estancamiento, aunque se detenga
por completo y la velocidad sea 0.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 425


Capítulo 18 Instrucciones de control de movimiento

Consulte también

Instrucciones de control de movimiento en la página 419

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

Números de parámetro Los siguientes bloques de funciones utilizan números de parámetro


específicos cuando se programan.
de bloques de
funciones de control  MC_ReadParameter
de movimiento  MC_ReadBoolParameter
 MC_WriteParameter
 MC_WriteBoolParameter

Identificación de los números de parámetro

Los números de parámetro entre 0 y 999 están reservados a los parámetros


estándar. También se permiten las extensiones de cualquier otro proveedor o
usuario, aunque su uso pueda afectar a la portabilidad entre diferentes
plataformas. Si el número del parámetro es superior a 999, el parámetro es
específico del proveedor.

Número de Nombre del parámetro Tipo de R/W Descripción


parámetro datos
1 Posición de comando REAL R Posición de comando.
2 SWLimitPos REAL R/W Posición positiva del interruptor de límite de
software
3 SWLimitNeg REAL R/W Posición negativa del interruptor de límite de
software
4 EnableLimitPos BOOL R/W Habilitación de posición positiva del interruptor de
límite.
5 EnableLimitNeg BOOL R/W Habilitación de posición negativa del interruptor de
límite.
8 MaxVelocitySystem REAL R Velocidad máxima permitida del eje en el sistema
de movimiento.
9 MaxVelocityAppl REAL R/W Velocidad máxima permitida del eje en la aplicación.
11 CommandedVelocity REAL R Velocidad de comando.
12 MaxAccelerationSystem REAL R Aceleración máxima permitida del eje en el sistema
de movimiento.
13 MaxAccelerationAppl REAL R/W Aceleración máxima permitida del eje en la
aplicación.
14 MaxDecelerationSystem REAL R Desaceleración máxima permitida del eje en el
sistema.
15 MaxDecelerationAppl REAL R/W Desaceleración máxima permitida del eje en la
aplicación.
16 MaxJerk REAL R/W Sacudida máxima permitida de eje.

426 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

1001 TargetPosition REAL R La posición de destino final del bloque de función en


movimiento activo actualmente
1002 TargetVelocity1 REAL R La velocidad de destino final del bloque de función
en movimiento activo actualmente
1005 Ciclo de trabajo REAL R/W Ciclo de servicio de un pulso. El valor válido es
0-100, que indican 0%-100%. (La función PWM
puede realizarse ajustando este valor).
Este parámetro solo se puede configurar mediante
este bloque de funciones. El valor predeterminado
lo establece el controlador en 50,0.
Nota: El valor de Ciclo de servicio se sobrescribirá
con el valor predeterminado, 50,0, cuando el
controlador cambie del modo RUN al modo PRG, y
de nuevo a RUN, o durante una desconexión y
conexión del controlador.
1006 PulsePerRevolution REAL R Ajuste de pulso por revolución especificado por el
usuario en la GUI de CCW.
1007 TravelPerRevolution REAL R Ajuste de desplazamiento por revolución
especificado por el usuario en la GUI de CCW.

Consulte también

Instrucciones de control de movimiento en la página 419

Reglas generales de bloques de función de control de movimiento en la


página 420

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

ID de error de bloque Si un bloque de función de control de movimiento termina con un error y el


eje está en estado de error de parada, use el bloque de función MC_Reset o
de función de control MC_Power Off/On y MC_Reset para recuperar el eje. El eje se puede
de movimiento restablecer al funcionamiento de movimiento normal sin detener el
funcionamiento del controlador.

Utilice esta tabla para determinar los errores de los bloques de funciones de
control de movimiento.

Valor ID de MACRO Descripción

00 MC_FB_ERR_ La ejecución del bloque de función se ha realizado correctamente.


NO

01 MC_FB_ERR_ El bloque de función no se puede ejecutar porque el eje no está en el estado correcto.
WRONG_STATE Compruebe el estado del eje.
02 MC_FB_ERR_ El bloque de función no se puede ejecutar porque hay un parámetro(s) dinámico de eje
RANGE no válido (velocidad, aceleración, desaceleración, o sacudida) definido en el bloque de
función.
Corrija la configuración de los parámetros dinámicos en el bloque de función en la
página de configuración de dinámica del eje.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 427


Capítulo 18 Instrucciones de control de movimiento

Valor ID de MACRO Descripción

03 MC_FB_ERR_ El bloque de función no se puede ejecutar porque hay un parámetro no válido diferente
PARAM a velocidad, aceleración, desaceleración o sacudida definido en el bloque de función.
Corrija la configuración de los parámetros (por ejemplo, modo o posición) del bloque de
función.
04 MC_FB_ERR_ El bloque de función no se puede ejecutar porque el eje no existe, porque los datos de
AXISNUM configuración están dañados o porque el eje no está configurado correctamente.

05 MC_FB_ERR_ El bloque de función no se puede ejecutar porque este eje genera un fallo debido a
MECHAN problemas mecánicos o de la unidad. Compruebe la conexión entre la unidad y el
controlador (señales de unidad preparada y en posición), y asegúrese de que la unidad
funciona con normalidad.
06 MC_FB_ERR_ El bloque de función no se puede ejecutar porque el eje no recibe alimentación.
NOPOWER Conecte el eje mediante el bloque de función MC_Power.

07 MC_FB_ERR_ El bloque de función no se puede ejecutar porque el recurso que necesita el bloque de
RESOURCE función esté controlado por algún otro bloque de función o no está disponible.
Asegúrese de que el recurso requerido por el bloque de función se encuentra disponible
para su uso.
Ejemplos:
 MC_Power intenta controlar el mismo eje.
 MC_Stop se ejecuta en el mismo eje al mismo tiempo.
 MC_TouchProbe se ejecuta en el mismo eje al mismo tiempo.
 MC_TouchProbe se ejecuta, aunque la entrada de sonda de toque no se ha habilitado
en Configuración de movimiento.
08 MC_FB_ERR_ El bloque de función no se puede ejecutar porque el perfil de movimiento definido en el
PROFILE bloque de función no se puede lograr.
Corrija el perfil en el bloque de función.

09 MC_FB_ERR_ El bloque de función no se puede ejecutar porque el perfil de movimiento solicitado en el


VELOCITY bloque de función no se puede lograr.
Ejemplos:
 El bloque de funciones solicita que el eje invierta la dirección mientras está en
movimiento.
 No se puede conseguir el perfil de movimiento obligatorio debido a que la velocidad
actual es demasiado alta o demasiado baja.
Corrija el ajuste de perfil de movimiento en el bloque de función y corrija el perfil o
vuelva a ejecutar el bloque de función, cuando la velocidad del eje sea compatible con
el perfil de movimiento solicitado.
0A MC_FB_ERR_ Este bloque de función no se puede ejecutar porque su movimiento finalizará más allá
SOFT_LIMIT del límite flexible, o bien, el bloque de función se cancelará cuando se haya alcanzado
el límite flexible.
Compruebe la configuración de velocidad o de posición de destino para el bloque de
función, o ajuste el límite flexible.
0B MC_FB_ERR_ Este bloque de función se cancela cuando se detecta el estado activo del interruptor del
HARD_LIMIT límite estricto durante el movimiento del eje, o bien, se ha cancelado cuando se ha
detectado el estado activo del interruptor del límite estricto antes de comenzar el
movimiento del eje.
Mueva el eje en dirección opuesta al interruptor de límite estricto.

428 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Valor ID de MACRO Descripción

0C MC_FB_ERR_ Este bloque de función no se puede ejecutar porque su movimiento finalizará más allá
LOG_LIMIT del límite de lógica del acumulador de PTO, o bien, el bloque de función se cancelará
cuando se haya alcanzado el límite de lógica del acumulador de PTO.
Compruebe la configuración de velocidad o de posición de destino del bloque de
función. Asimismo, puede usar el bloque de función MC_SetPosition para ajustar el
sistema de coordenadas del eje.
0D MC_FB_ERR_ Se ha detectado un error de ejecución del motor de movimiento durante la ejecución de
ERR_ENGINE este bloque de función.
Desconecte y vuelva a conectar todo el sistema de movimiento, incluidos el controlador,
las unidades y los accionadores, y vuelva a descargar la aplicación de usuario. Si el
error continúa, llame al servicio de soporte técnico.
10 MC_FB_ERR_ El bloque de función no se puede ejecutar porque el eje se debe alojar primero.
NOT_HOMED Ejecute el alojamiento con respecto al eje mediante el bloque de función MC_Home.

80 MC_FB_ERR_ Advertencia: La velocidad solicitada para el eje se ha ajustado a un valor menor.


PARAM_MODIFIED El bloque de función se ejecuta correctamente a una velocidad inferior.

Consulte también

Instrucciones de control de movimiento en la página 419

Reglas generales de bloques de función de control de movimiento en la


página 420

Estados de los ejes de control de movimiento en la página 423

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

Escenarios de error de En la mayoría de los casos, cuando una instrucción de bloque de funciones
de movimiento generada para un eje da como resultado un error del bloque
ejes de funciones, el eje también cambia al estado Error y se configura el
elemento ErrorID correspondiente en los datos AXIS_REF del eje.

En las siguientes situaciones, puede que no siempre cambie a un error de eje,


por lo que seguirá siendo posible que la aplicación de usuario active
correctamente un bloque de funciones de movimiento para el eje una vez que
cambie el estado del eje.

Escenario Ejemplo

Un bloque de funciones de movimiento genera una orden para un El eje no tiene energía, se encuentra en una
eje, pero el estado del eje no permite que el bloque de funciones se secuencia de autodirección o tiene el estado
ejecute correctamente. Parada de error.
Un bloque de funciones genera una orden para un eje, pero el eje El nuevo bloque de funciones ordena al eje
sigue estando controlado por otro bloque de funciones de que cambie la dirección de movimiento.
movimiento. El eje no puede permitir que el nuevo bloque de
funciones controle el movimiento sin pararse por completo.
Cuando un bloque de funciones de movimiento intenta controlar un La aplicación de usuario activa un bloque de
eje, pero el eje sigue estando controlado por otro bloque de funciones S-Curve MC_MoveAbsolute para un
funciones de movimiento y el controlador no puede llevar a cabo el eje con una distancia demasiado corta cuando
perfil de movimiento que se acaba de definir. el eje se está moviendo.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 429


Capítulo 18 Instrucciones de control de movimiento

Consulte también

Reglas generales de bloques de función de control de movimiento en la


página 420

Tipos de datos de El tipo de datos AXIS_REF es una estructura de datos que contiene
información sobre un eje de movimiento y se utiliza como una variable de
AXIS_REF entrada y salida en todos los bloques de funciones de control de movimiento.
Una instancia de un tipo de datos AXIS_REF se crea automáticamente
cuando agrega un eje de movimiento a la configuración.

Parámetro Tipo de Descripción


datos
Axis_ID AXIS_REF ID de eje lógico asignado automáticamente por Connected Components
Workbench. El usuario no puede editarlo ni visualizarlo.

Marcador de BOOL Indica si hay un error en el eje.


error Una vez que un eje se marque con un error y el ID del error no sea cero, el
eje debe restablecerse mediante MC_Reset antes de activar cualquier otro
bloque de funciones de movimiento.
Eje en inicio BOOL Indica si la operación de alojamiento se ha ejecutado correctamente en el eje
o no.
Si el usuario intenta rehacer el alojamiento para un eje con Eje en inicio
activo (alojamiento realizado correctamente), y el resultado no es el
satisfactorio, el estado de Eje en inicio se borrará.
ConstVel BOOL Indica si el eje está en movimiento de Velocidad constante o no. El eje
estacionario no se tiene en cuenta en Velocidad constante.

AccFlag BOOL Indica si el eje está en un movimiento de aceleración o no.


DecelFlag BOOL Indica si el eje está en un movimiento de desaceleración o no.
AxisState USINT Indica el estado actual del eje.
ErrorID UINT Indica la causa del error del eje si el error lo indica ErrorFlag. Este error
suele ser el resultado de un fallo de ejecución de un bloque de función de
control de movimiento.
ExtraData UINT Reservado.
TargetPos REAL Indica la posición objetivo final del eje para los bloques de función de
MoveAbsolute y MoveRelative.
Para los bloques de función MoveVelocity, Stop y Halt, TargetPos es 0 salvo
si no se ha borrado el valor de TargetPos definida por los bloques de función
de posición anteriores.
CommandPo REAL Durante el movimiento, es la posición actual que el controlador ordena al eje.
s Es posible que haya un ligero retraso entre la posición real del eje y
CommandPos.
TargetVel REAL La velocidad máxima ordenada al eje para un bloque de función de
movimiento. El valor de TargetVel en el bloque de función actual o menor,
dependiendo del resto de parámetros en el mismo bloque de función.

CommandVel REAL Durante el movimiento, este elemento indica la velocidad actual que el
controlador ordena al eje.
Debe tenerse en cuenta que es posible que exista una ligera diferencia entre
la velocidad real del eje y CommandVel, debido al retraso de la unidad o al
exceso de ajuste de la unidad.

430 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Consulte también

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

Variables de eje en la página 432

Tipos de datos El tipo de datos FB_AXIS_REF es una estructura de datos que contiene
información sobre un eje de retroalimentación de movimiento. Se utiliza
FB_AXIS_REF como una variable de entrada y salida en los bloques de función de control
de movimiento. Una instancia de un tipo de datos FB_AXIS_REF se crea
automáticamente cuando agrega un módulo HSC y el modo se configura
como modo de retroalimentación del eje.

Importante: Una vez que un eje de retroalimentación se marque con un error y el ID del error no sea
cero, el FBAxis debe restablecerse mediante MC_Reset antes de activar cualquier otro
bloque de funciones de movimiento.

Parámetro Tipo de Descripción


datos
Axis_ID FB_AXIS_RE ID de eje lógico asignado automáticamente por Connected Components
F Workbench. El usuario no puede editarlo ni visualizarlo.

ErrorFlag BOOL Indica si hay un error en el eje de retroalimentación.


ConstVel BOOL Indica si el eje de retroalimentación está en movimiento de Velocidad
constante o no. El eje estacionario no se tiene en cuenta en Velocidad
constante.
AccelFlag BOOL Indica si el eje de retroalimentación está en un movimiento de aceleración o
no.
DecelFlag BOOL Indica si el eje de retroalimentación está en un movimiento de
desaceleración o no.
AxisState USINT Indica el estado actual del eje de retroalimentación.
ErrorID UINT Indica la causa del error del eje si el error lo indica ErrorFlag. Este error
suele ser el resultado de un fallo de ejecución de un bloque de función de
control de movimiento.
ExtraData UINT Reservado.

ActualPos REAL Lectura de la posición mecánica real del canal de retroalimentación de


movimiento (HSC).
ActualVel REAL Lectura de la velocidad mecánica real del canal de retroalimentación de
movimiento (HSC).

Consulte también

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

Variables de eje en la página 432

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 431


Capítulo 18 Instrucciones de control de movimiento

Variables de eje Las variables de eje se utilizan para controlar la posición, velocidad,
aceleración y error para un eje de control de movimiento concreto.

Para asignar una variable a un parámetro de salida de eje:

 En un diagrama de bloque de funciones


Conecte gráficamente el parámetro de salida Eje de un bloque de
funciones de control de movimiento con el parámetro de entrada
EntrEje de otro bloque de funciones de control de movimiento para
mayor comodidad. Por ejemplo, conecte el parámetro de salida
MC_POWER Axis al parámetro de entrada MC_HOME AxisIn.
 En un diagrama de lógica de escalera
No puede asignarse una variable al parámetro de salida Eje de un
bloque de funciones de control de movimiento, porque es de solo
lectura.

Supervisar una variable AXIS_REF

Supervise una variable AXIS_REF o FBAXIS_REF en el software mientras


está conectado al controlador cuando el motor de movimiento está activo, o
bien en la aplicación del usuario como parte de la lógica del usuario.
También puede hacerlo de forma remota a través de diversos canales de
comunicación.

Consulte también

Instrucciones de control de movimiento en la página 419

MC_AbortTrigger Cancela otros bloques de funciones de movimiento conectados a eventos de


disparador.
(disparador de
anulación del MC_AbortTrigger solo se ejecuta cuando se asigna a un eje que está
controlado por MC_TouchProbe.
control de
movimiento) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

432 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Parámetro Tipo de datos Descripción


EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_AbortTrigger actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

AxisIn Entrada AXIS_REF Utilice el tipo de datos AXIS_REF para definir el parámetro AxisIn.
FB_AXIS_REF Si el eje es un FB_Axis (eje de retroalimentación), utilice el tipo de
datos FB_AXIS_REF para definir los parámetros de AxisIn.
TriggerInp Entrada USINT Este parámetro se ignora.
Execute Entrada BOOL Si es Cierto, cancela el evento de activación en el flanco
ascendente.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de
lógica de escalera.
TriggerInput Salida USINT Este parámetro se ignora.
Listo Salida BOOL Cierto: el evento de activación se cancela.
Busy Salida BOOL Cierto: el bloque de función no se ha completado.
Error Salida BOOL Cierto: se ha detectado un error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en ID de error del bloque de funciones de
control de movimiento.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 433


Capítulo 18 Instrucciones de control de movimiento

Ejemplo de diagrama de bloque de funciones MC_AbortTrigger

Ejemplo de diagrama de lógica de escalera MC_AbortTrigger

Ejemplo de texto estructurado MC_AbortTrigger

434 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Resultados

Consulte también

Tipos de datos de AXIS_REF en la página 430

Tipos de datos FB_AXIS_REF en la página 431

Reglas generales de bloques de función de control de movimiento en la


página 420

Instrucciones de control de movimiento en la página 419

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

MC_Halt (detención Activa una parada de movimiento controlada en condiciones normales de


funcionamiento.
de control de
movimiento) Detalles de funcionamiento:

 Este estado de eje cambia a Movimiento discreto, hasta que la


velocidad sea cero. Cuando la velocidad llegue a cero, Done se define a
Cierto y el estado del eje cambia a Atascado.
 Es posible ejecutar otro comando de movimiento durante la
desaceleración del eje, lo que provoca la cancelación de MC_Halt.
 Si se activa MC_Halt cuando el estado del eje es Autodirección, el
bloque de instrucción genera un error y el proceso de autodirección
no se interrumpe.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 435


Capítulo 18 Instrucciones de control de movimiento

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Tipo de Tipo de Descripción


parámetro datos

EN Entrada BOOL Habilitar bloque de instrucción.


Cierto: ejecuta el cálculo MC_Halt actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
AxisIn Entrada AXIS_REF Utilice los parámetros de tipo de datos AXIS_REF para definir AxisIn.
Execute Entrada BOOL Indica cuándo iniciar movimiento.
Cierto: comienza el movimiento en el flanco ascendente.
Falso: no comienza el movimiento.
Si se ejecuta MC_Halt durante el alojamiento, MC_Halt se define a
MC_FB_ERR_STATE y el proceso de alojamiento continúa.
Deceleration Entrada REAL Valor de la desaceleración (siempre positiva: reducción de energía del
motor.)
Si la desaceleración <= 0 y el eje no tiene un estado de Atascado, MC_Halt
se define a MC_FB_ERR_RANGE.
Jerk Entrada REAL Valor de la sacudida (siempre positivo).
Si la sacudida < 0 y el eje tiene un estado de atascado, MC_Halt se define a
MC_FB_ERR_RANGE.
BufferMode Entrada SINT No se utiliza. El modo es siempre MC_Aborting.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de lógica de
escalera.
Listo Salida BOOL Se ha alcanzado la velocidad de cero.
Busy Salida BOOL El bloque de instrucción no se ha completado.
Activo Salida BOOL Indica que el bloque de instrucción tiene control sobre el eje.
CommandAborted Salida BOOL El comando se cancela por otro comando o parada de error.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.

436 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Tipo de Tipo de Descripción


parámetro datos

ErrorID Salida UINT Un número único que identifica el error. Los errores de esta instrucción se
definen en ID de error del bloque de funciones de control de movimiento.

Ejemplo de diagrama de bloque de función MC_Halt

Ejemplo de diagrama de lógica de escalera MC_Halt

Ejemplo de texto estructurado MC_Halt

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 437


Capítulo 18 Instrucciones de control de movimiento

Resultados

Consulte también

Tipos de datos de AXIS_REF en la página 430

Reglas generales de bloques de función de control de movimiento en la


página 420

Instrucciones de control de movimiento en la página 419

ID de error de bloque de función de control de movimiento en la


página 427

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

MC_Home (entrada Ordena al eje que ejecute la secuencia <search home>. Los detalles de esta
secuencia dependen del fabricante y se pueden definir por los parámetros del
de control de eje. La entrada Position se utiliza para definir la posición absoluta cuando se
movimiento) detecta una señal de referencia y se alcanza el offset inicial configurado.

Detalles de la operación:

 Después de activarse MC_Power, se restablece el estado de


autodirección del eje a 0 (sin autodirección). En la mayoría de los
casos, después de que el eje reciba alimentación, el bloque de función
MC_Home se debe ejecutar para calibrar la posición del eje y la
referencia inicial.
 El bloque de funciones MC_Home solo se puede cancelar mediante un
bloque de funciones MC_Stop o MC_Power. Si se cancela antes de
completarse, la posición inicial buscada anteriormente no se considera
válida y se elimina el estado inicial del eje.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

438 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_Home actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

AxisIn Entrada AXIS_REF Utilice los parámetros de tipo de datos AXIS_REF para definir AxisIn.
Execute Entrada BOOL Indica cuándo iniciar movimiento.
Cierto: comienza el movimiento en el flanco ascendente.
Falso: no comienza el movimiento.
Position Entrada REAL La posición absoluta se define cuando se detecta la señal de referencia y
se alcanza el desplazamiento inicial configurado.
El rango de valor de esta entrada es -0x40000000 - 0x40000000 pulsos
físicos después de convertir la posición de la unidad de posición del
usuario a pulso PTO. Defina el valor de posición dentro del límite flexible.
Un valor de entrada no válido genera un error.
ID de error = MC_FB_ERR_PARAM.

HomingMode Entrada SINT Entrada de enum. para modo de autodirección.


BufferMode Entrada SINT No se utiliza. El modo es siempre mcAborting.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de lógica
de escalera.
Listo Salida BOOL Cierto: la operación de autodirección se completa correctamente y el
estado del eje se define a Atascado.
Falso: la operación de autodirección está en curso o incompleta.
Busy Salida BOOL Cierto: el bloque de instrucción no se ha completado.
Falso: el bloque de instrucción se ha completado.
Activo Salida BOOL Cierto: indica que el bloque de instrucción tiene control sobre el eje.
CommandAborted Salida BOOL Cierto: el comando ha sido cancelado por otro comando o parada de
error.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 439


Capítulo 18 Instrucciones de control de movimiento

Parámetro Tipo de Tipo de Descripción


parámetro datos
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UNIT Un número único que identifica el error. Los errores de esta instrucción se
definen en ID de error del bloque de funciones de control de movimiento.

HomingModes

Utilice esta tabla para determinar los valores del parámetro HomingMode en
la instrucción de control de movimiento MC_Home.

Valor Nombre Descripción


0x00 MC_HOME_ABS_SWITCH Proceso de autodirección buscando el interruptor de posición absoluta
de autodirección
0x01 MC_HOME_LIMIT_SWITCH Proceso de autodirección buscando el interruptor de límite
0x02 MC_HOME_REF_WITH_ABS Proceso de autodirección buscando el interruptor de posición absoluta
de autodirección más el pulso de referencia del codificador

0x03 MC_HOME_REF_PULSE Proceso de autodirección buscando el interruptor de límite más el


pulso de referencia del codificador

0x04 MC_HOME_DIRECT Proceso de autodirección estático con forzado directo de una posición
de autodirección desde la referencia del usuario. El bloque de
funciones define la posición actual del mecanismo (determinada por el
parámetro de entrada Position) como la de autodirección.

Ejemplo de diagrama de bloque de función MC_Home

440 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de diagrama de lógica de escalera MC_Home

Ejemplo de texto estructurado MC_Home

Resultados

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 441


Capítulo 18 Instrucciones de control de movimiento

Consulte también

Tipos de datos de AXIS_REF en la página 430

Reglas generales de bloques de función de control de movimiento en la


página 420

Instrucciones de control de movimiento en la página 419

ID de error de bloque de función de control de movimiento en la


página 427

MC_MoveAbsolute Envía un movimiento controlado a una posición absoluta especificada.

(absoluto de Detalles de la operación:


movimiento del
 En el caso de un controlador Micro800,
control de
 El signo de la entrada Velocity de un bloque de funciones
movimiento) MC_MoveAbsolute se ignora porque la dirección de movimiento
viene determinada por la posición actual y la posición de destino.
 La entrada Direction de un bloque de funciones
MC_MoveAbsolute se ignora porque solo existe una solución
matemática para alcanzar la posición de destino.
 Si se activa el bloque de funciones MC_MoveAbsolute cuando el
estado del eje del controlador Micro800 es Atascado y la distancia
relativa de movimiento es cero, la ejecución del bloque de funciones se
notifica inmediatamente como finalizada.
 Si se activa un bloque de funciones MC_MoveAbsolute en un eje que
no está en posición de autodirección, el bloque de funciones notifica un
error.
 El bloque de funciones MoveAbsolute se completa con una velocidad
de cero si no lo cancela otro bloque de funciones.

442 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetr datos
o
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_MoveAbsolute actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

AxisIn Entrada AXIS_RE Utilice los parámetros de tipo de datos AXIS_REF para definir AxisIn.
F
Execute Entrada BOOL Indica cuándo iniciar movimiento.
Cierto: comienza el movimiento en el flanco ascendente.
Falso: no comienza el movimiento.
El eje debe estar en la posición inicial cuando se activa este comando, o se
produce un error MC_FB_ERR_NOT_HOMED.
Position Entrada REAL Posición de destino del movimiento de la unidad técnica (negativa o positiva) .
La unidad técnica se define en la página de configuración Movimiento -
General de un eje.
Velocity Entrada REAL Valor de la velocidad máxima.
Es posible que la velocidad máxima no se alcance si Jerk = 0.
El signo de la velocidad se ignora; la dirección del movimiento viene
determinada por la entrada Position.

Acceleration Entrada REAL Valor de la aceleración (siempre positiva: aumento de energía del motor.)
unidad de usuario/seg2
Deceleration Entrada REAL Valor de la desaceleración (siempre positiva: reducción de energía del motor.)
u/seg.2

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 443


Capítulo 18 Instrucciones de control de movimiento

Parámetro Tipo de Tipo de Descripción


parámetr datos
o
Jerk Entrada REAL Valor de la sacudida (siempre positivo).
u/seg.3
Si el valor de la entrada Jerk = 0, el perfil de trapezoide se calcula mediante el
motor de movimiento. Si Jerk > 0, se calcula el perfil de la curva en S.

Dirección Entrada SINT Este parámetro no se utiliza.


BufferMode Entrada SINT Este parámetro no se utiliza.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_RE La salida del eje es de solo lectura en programas de diagrama de lógica de
F escalera.
Listo Salida BOOL Si es Cierto, se alcanza la posición de comando.
Si la entrada In-Position se configura como habilitada para este eje, es
necesario definir la unidad a la señal de la entrada In-Position activa antes de
que el bit Done sea Cierto.
Esta acción se completa con una velocidad de cero, salvo que se cancele.
Busy Salida BOOL Cuando es Cierto, el bloque de función no se ha terminado.
Activo Salida BOOL Si es Cierto, indica que el bloque de función tiene el control del eje.
CommandAborted Salida BOOL Si es Cierto, el comando se cancela por otro comando o parada de error.

Error Salida BOOL Indica que se ha producido un error.


CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta instrucción se
definen en ID de error del bloque de funciones de control de movimiento.

Ejemplo de diagrama de bloque de función MC_MoveAbsolute

444 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de diagrama de lógica de escalera MC_MoveAbsolute

Ejemplo de texto estructurado MC_MoveAbsolute

Resultados

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 445


Capítulo 18 Instrucciones de control de movimiento

Consulte también

Instrucciones de control de movimiento en la página 419

Información común sobre instrucciones de control de movimiento en la


página 423

Tipos de datos de AXIS_REF en la página 430

ID de error de bloque de función de control de movimiento en la


página 427

MC_MoveRelative Envía un movimiento controlado a una distancia especificada relativa a la


posición actual en el momento de ejecución.
(relativo de
movimiento del Detalles de la operación:

control de  Como la dirección del movimiento de MC_MoveRelative se determina


movimiento) por la posición actual y la posición de destino, el signo de Velocity se
ignora.
 MoveRelative se completa con una velocidad de cero si no lo cancela
otro bloque de funciones.
 Si MC_MoveRelative se activa cuando el estado del eje del controlador
Micro800 es Atascado y la distancia relativa de movimiento es cero, la
ejecución del bloque de funciones se notifica inmediatamente como
finalizada.
 En el caso de un controlador Micro800, el signo de la entrada Velocity
de MC_MoveRelative se ignora porque la dirección de movimiento se
determina por la posición actual y la posición de destino.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

446 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Operación MC_MoveRelative

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo de MC_MoveRelative actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
AxisIn Entrada AXIS_REF Utilice los parámetros de tipo de datos AXIS_REF para definir AxisIn.
Execute Entrada BOOL Indica cuándo iniciar movimiento.
Cierto: comienza el movimiento en el flanco ascendente.
Falso: no comienza el movimiento.
Distancia Entrada REAL Distancia relativa del movimiento (en unidad técnica [u]).
Velocity Entrada REAL Valor de la velocidad máxima (no se alcanza necesariamente) [u/s]. Como
la dirección del movimiento viene determinada por la entrada Position, el
bloque de funciones ignora el signo de la velocidad.
Es posible que la velocidad máxima no se alcance si Jerk = 0.

Acceleration Entrada REAL Valor de la aceleración (aumento de energía del motor) [u/s2]

Deceleration Entrada REAL Valor de la desaceleración (descenso de energía del motor) [u/s2]
Jerk Entrada REAL Valor de la sacudida [u/s3]
BufferMode Entrada SINT Este parámetro no se utiliza.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de lógica de
escalera.
Listo Salida BOOL Cierto: alcanza la distancia comandada.
Si se habilita la entrada In-Position para un eje, la señal In-Position se debe
definir antes de que Done = Cierto.

Busy Salida BOOL Cierto: el bloque de instrucción no se ha completado.


Falso: el bloque de instrucción se ha completado.
Activo Salida BOOL Cierto: indica que el bloque de instrucción tiene control sobre el eje.
CommandAborted Salida BOOL Cierto: el comando se cancela por otro comando o parada de error.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.

ErrorID Salida UINT Un número único que identifica el error. Los errores de esta instrucción se
definen en ID de error del bloque de funciones de control de movimiento.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 447


Capítulo 18 Instrucciones de control de movimiento

Ejemplo de diagrama de bloque de función MC_MoveRelative

Ejemplo de diagrama de lógica de escalera MC_MoveRelative

Ejemplo de texto estructurado MC_MoveRelative

448 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Resultados

Consulte también

Tipos de datos de AXIS_REF en la página 430

Reglas generales de bloques de función de control de movimiento en la


página 420

Instrucciones de control de movimiento en la página 419

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

ID de error de bloque de función de control de movimiento en la


página 427

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 449


Capítulo 18 Instrucciones de control de movimiento

MC_MoveVelocity Envía un movimiento controlado que nunca finaliza a una velocidad


especificada.
(velocidad de
movimiento del Detalles de la operación:

control de  Si la entrada DirectionIn de MC_MoveVelocity es igual a 0 y:


movimiento)  el eje no se está moviendo, se ignora el signo de la entrada
Velocity, el eje continúa moviéndose en su dirección actual y se
aplican los nuevos parámetros dinámicos.
 el eje no se está moviendo, MC_MoveVelocity genera un error.
 Si se alcanza el límite de pulso PTO durante la ejecución de
MC_MoveVelocity, el valor del acumulador PTO se renueva en 0 (o
como el límite por software opuesto si se ha activado el límite) y la
ejecución continúa.
 Si el eje no se está moviendo y MC_MoveVelocity genera un
movimiento en el que la dirección (el signo de Velocity * Direction) es
opuesta a la dirección de movimiento actual, MC_MoveVelocity
genera un error.
 Una vez definida la señal InVelocity, indica que MC_MoveVelocity se
ha completado. Cualquier evento de movimiento posterior no tendrá
ningún efecto en las salidas de MC_MoveVelocity, excepto la señal
'InVelocity'.
 La salida InVelocity de MC_MoveVelocity permanece como Cierto
cuando la velocidad del eje alcanza la velocidad solicitada o hasta que
MC_MoveVelocity se cancela.
 El signo de (Velocity * Direction) determina la dirección de
movimiento de MC_MoveVelocity. Si velocidad y dirección tienen el
mismo signo, se genera un movimiento positivo. Si velocidad y
dirección tienen distinto signo, se genera un movimiento negativo.
 La señal InVelocity se restablece si otro bloque de funciones o evento
de movimiento o el flanco descendente de 'Execute' cancelan
MC_MoveVelocity.
 Para detener o cambiar el movimiento iniciado por MC_MoveVelocity,
otro bloque de instrucciones debe interrumpirlo o cancelarlo, por
ejemplo, volviendo a ejecutar MC_MoveVelocity con parámetros
diferentes.
 Si se activa MC_MoveVelocity con el estado del eje en Atascado (no
controlado por ningún otro bloque de funciones) y se produce un error
de bloque de funciones, el estado del eje cambia a Parada de error.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

450 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetr datos
o
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_MoveVelocity actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
AxisIn Entrada AXIS_REF Utilice los parámetros de tipo de datos AXIS_REF para definir AxisIn.
Execute Entrada BOOL Indica cuándo iniciar movimiento.
Cierto: comienza el movimiento en el flanco ascendente.
Falso: no comienza el movimiento.
Velocity Entrada REAL Valor de la velocidad máxima [u/s].
Acceleration Entrada REAL Valor de la aceleración (aumento de energía del motor) [u/s2]
Deceleration Entrada REAL Valor de la desaceleración (descenso de energía del motor) [u/s2]
Jerk Entrada REAL Valor de la sacudida [u/s3]
DirectionIn Entrada SINT Los valores válidos son: –1, 0, 1.
BufferMode Entrada SINT Este parámetro no se utiliza.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de
lógica de escalera.
InVelocity Salida BOOL Cierto: se ha alcanzado la velocidad comandada (primera vez).
Busy Salida BOOL Cierto: el bloque de instrucción no se ha completado.
Falso: el bloque de instrucción se ha completado.
Activo Salida BOOL Cierto: indica que el bloque de función tiene control sobre el eje.
Dirección Salida SINT Los valores válidos son: –1, 0, 1.
CommandAborted Salida BOOL Cierto: el comando se cancela por otro comando o parada de error.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 451


Capítulo 18 Instrucciones de control de movimiento

Parámetro Tipo de Tipo de Descripción


parámetr datos
o
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en ID de error del bloque de funciones de
control de movimiento.

Ejemplo de diagrama de bloque de función MC_MoveVelocity

Ejemplo de diagrama de lógica de escalera MC_MoveVelocity

452 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de texto estructurado MC_MoveVelocity

Resultados

Consulte también

Tipos de datos de AXIS_REF en la página 430

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 453


Capítulo 18 Instrucciones de control de movimiento

Reglas generales de bloques de función de control de movimiento en la


página 420

Instrucciones de control de movimiento en la página 419

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

ID de error de bloque de función de control de movimiento en la


página 427

MC_Power Controla la etapa de potencia, ON u OFF.

(potencial de Detalles de la operación:


control de
 Si importa un proyecto creado en CCW 7 a CCW 8 aparecerá el nuevo
movimiento) parámetro de entrada Mc_Power __DTI_AxisIn. Si se produce un error
de compilación, vuelva a seleccionar la instrucción y a compilar.
 Después de completarse la activación del eje, se restablece el estado de
autodirección del eje a 0 (sin autodirección).
 Las entradas Enable_Positive y Enable_Negative de MC_Power se
activan por niveles; se activan cuando la entrada Enable cambia de
apagado a encendido. El cambio sobre la marcha de las entradas
Enable_Positive y Enable_Negative sin cambiar la entrada Habilitar no
está activado.
 Si se produce un error de alimentación durante la operación (cuando se
ha detectado que el servo está preparado), el estado del eje pasa a
Parada de error.
 La instrucción MC_Power tiene un valor de tiempo de espera de 2
minutos. MC_Power devuelve un error cuando finaliza el período de
tiempo de espera y la entrada de unidad preparada es Falso.
 Si un bloque de función MC_Power con habilitar definido a cierto se
denomina mientras el estado del eje es deshabilitado, el estado del eje
pasa a Atascado a menos que se detecte un error, en cuyo caso el
estado del eje cambia a parada de error.
 Solo se puede generar un bloque de funciones MC_Power por eje. Si
utiliza un bloque de función MC_ Power diferente para controlar el
mismo eje de forma simultánea, el motor de movimiento lo rechazará.
 Si hay un interruptor de estado de encendido o apagado para un eje, la
posición absoluta del eje no se restablece.
 Si se activa un bloque de funciones MC_Power con Enable
configurado como Falso, el estado del eje cambia a Disabled para cada
estado, incluido Parada de error.
 El bloque de función MC_Power puede encender el eje si Enable está
configurado como Cierto y apagarlo si está configurado como Falso.

454 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_Power actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

AxisIn Entrada AXIS_REF Utilice los parámetros de tipo de datos AXIS_REF para definir AxisIn.
FB_AXIS_RE Para un FB_Axis (eje de retroalimentación), utilice el tipo de datos
F FB_AXIS_REF para definir los parámetros de AxisIn.
Enable Entrada BOOL Cierto: la alimentación está encendida.
Falso: la alimentación está apagada.
Enable_Positive Entrada BOOL Cierto: se permite movimiento en dirección positiva.
Enable_Negative Entrada BOOL Cierto: se permite movimiento en dirección negativa.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de
lógica de escalera.
Tipos de datos de AXIS_REF.
Estado Salida BOOL Estado de la fase de potencia:
 Cierto: se ha encendido la unidad.
 Falso: no se ha encendido la unidad.
Busy Salida BOOL Cierto: el bloque de instrucción no se ha completado.
Falso: el bloque de instrucción se ha completado.
Activo Salida BOOL Cierto: indica que el bloque de función tiene control sobre el eje.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en ID de error del bloque de funciones de
control de movimiento.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 455


Capítulo 18 Instrucciones de control de movimiento

Ejemplo de diagrama de bloque de función MC_Power

Ejemplo de diagrama de lógica de escalera MC_Power

Ejemplo de texto estructurado MC_Power

456 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Resultados

Consulte también

Instrucciones de control de movimiento en la página 419

Reglas generales de bloques de función de control de movimiento en la


página 420

ID de error de bloque de función de control de movimiento en la


página 427

Tipos de datos de AXIS_REF en la página 430

Tipos de datos FB_AXIS_REF en la página 431

MC_ReadActualPosi Devuelve la posición real del eje de retorno. MC_ReadActualPosition solo es


aplicable a movimiento de retroalimentación.
tion (posición real
de lectura de Detalles de la operación:

control de  Antes de ejecutar MC_ReadActualPosition, compruebe que el eje está


movimiento) en uno de los siguientes estados del eje:
 Deshabilitado
 Atascado
 Movimiento discreto
 Parada de error
 La posición real para un eje de retroalimentación no se restablece a 0
tras una descarga. Para restablecer o borrar la posición del eje de
retroalimentación, use la instrucción MC_Home o una instrucción
MC_SetPosition.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 457


Capítulo 18 Instrucciones de control de movimiento

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
AxisIn Entrada FB_AXIS_REF Para un FB_Axis (eje de retroalimentación), utilice el tipo de
datos FB_AXIS_REF para definir los parámetros de AxisIn.
Enable Entrada BOOL Cierto: obtiene el valor del parámetro de forma continua
mientras está activado.
Falso: inactivo.
Eje Salida FB_AXIS_REF La salida del eje es de solo lectura en programas de diagrama
de lógica de escalera.
Los parámetros de salida del eje se definen en el archivo de
datos FB_AXIS_REF.
Valid Salida BOOL Cierto: el bloque de instrucción está activo y que se esperan
nuevos valores de salida.
Falso: el bloque de instrucción está inactivo.
Busy Salida BOOL Cierto: el bloque de instrucción no se ha completado.
Falso: el bloque de instrucción se ha completado.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UNIT Un número único que identifica el error. Los errores de esta
instrucción se definen en ID de error del bloque de funciones de
control de movimiento.
Position Salida REAL El valor de la posición absoluta real para el eje de movimiento
de retroalimentación. (en unidades de eje [u])

458 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de diagrama de bloque de funciones MC_ReadActualPosition

Ejemplo de diagrama de lógica de escalera MC_ReadActualPosition

Ejemplo de texto estructurado MC_ReadActualPosition

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 459


Capítulo 18 Instrucciones de control de movimiento

Resultados

Consulte también

Tipos de datos FB_AXIS_REF en la página 431

Reglas generales de bloques de función de control de movimiento en la


página 420

460 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Instrucciones de control de movimiento en la página 419

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

ID de error de bloque de función de control de movimiento en la


página 427

MC_ReadActualVelo Devuelve el valor de la velocidad real del eje de retroalimentación.

city (velocidad real MC_ReadActualVelocity sólo es aplicable a movimiento de


de lectura de retroalimentación.

control de Antes de ejecutar MC_ReadActualVelocity, compruebe que el eje está en


movimiento) uno de los siguientes estados:

 Atascado
 Movimiento discreto
 Parada de error

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
AxisIn Entrada FB_AXIS_REF Para un FB_Axis (eje de retroalimentación), utilice el tipo de datos
FB_AXIS_REF para definir los parámetros de AxisIn.
Enable Entrada BOOL Cierto: obtiene el valor de la velocidad real de forma continua.
Falso: los datos ya no son válidos, todas las salidas se restablecen a 0,
Válido está definido en Falso.
Eje Salida FB_AXIS_REF La salida del eje es de solo lectura en programas de diagrama de
lógica de escalera.
Los parámetros de salida del eje se definen en el archivo de datos
FB_AXIS_REF.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 461


Capítulo 18 Instrucciones de control de movimiento

Parámetro Tipo de Tipo de datos Descripción


parámetro
Valid Salida BOOL Cierto: el bloque de función está activo y se esperan nuevos valores de
salida.
Falso: la función no espera nuevos valores de salida.
Busy Salida BOOL Cierto: el bloque de función no se ha completado.
Falso: la función está inactiva.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UNIT Un número único que identifica el error. Los errores de esta instrucción
se definen en ID de error del bloque de funciones de control de
movimiento.
ActualVelocity Salida REAL El valor de la velocidad real para el eje de movimiento de
retroalimentación (en unidades de eje [u/s]).
ActualVelocity es un valor con signo que incluye información de
dirección.

Ejemplo de diagrama de bloque de funciones MC_ReadActualVelocity

Ejemplo de diagrama de lógica de escalera MC_ReadActualVelocity

462 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de texto estructurado MC_ReadActualVelocity

Resultados

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 463


Capítulo 18 Instrucciones de control de movimiento

Consulte también

Tipos de datos FB_AXIS_REF en la página 431

Reglas generales de bloques de función de control de movimiento en la


página 420

Instrucciones de control de movimiento en la página 419

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

ID de error de bloque de función de control de movimiento en la


página 427

MC_ReadAxisError Describe los errores del eje no relacionados con los bloques de instrucciones
de control de movimiento.
(error de eje de
lectura de control Si el estado del eje es Deshabilitado, es posible que MC_ReadAxisError
tenga o no un ID de error distinto de cero para el eje, ya que un eje
de movimiento) deshabilitado puede contener errores o no.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_ReadAxisError actual.
Falso: Error, ErrorID y AxisErrorID se restablecen en Falso (o 0).
Solo se aplica a programas LD.

AxisIn Entrada AXIS_REF Utilice los parámetros de tipo de datos AXIS_REF para definir AxisIn.
FB_AXIS_REF Para un FB_Axis (eje de retroalimentación), utilice el tipo de datos
FB_AXIS_REF para definir los parámetros de AxisIn.

464 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Cierto: obtiene el valor del parámetro de forma continua mientras está
activado.
Falso: restablece las salidas de Error, ErrorID y AxisErrorID a 0.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de
lógica de escalera.
Los parámetros de salida del eje se definen en el archivo de datos
FB_AXIS_REF.
Valid Salida BOOL Cierto: el bloque de instrucción está activo y que se esperan nuevos
valores de salida.
Falso: el bloque de instrucción está inactivo.
Busy Salida BOOL Cierto: el bloque de instrucción no se ha completado.
Falso: el bloque de instrucción se ha completado.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en ID de error del bloque de funciones de
control de movimiento.
AxisErrorID Salida UINT Un número único que identifica el error del eje. Los errores de esta
instrucción se definen en códigos de error AxisErrorID.

Ejemplo de diagrama de bloque de funciones MC_ReadAxisError

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 465


Capítulo 18 Instrucciones de control de movimiento

Ejemplo de diagrama de lógica de escalera MC_ReadAxisError

Ejemplo de texto estructurado MC_ReadAxisError

Resultados

Consulte también

Tipos de datos de AXIS_REF en la página 430

Códigos de error AxisErrorID en la página 467

Tipos de datos FB_AXIS_REF en la página 431

Instrucciones de control de movimiento en la página 419

466 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

Códigos de error La siguiente tabla describe los códigos de error de eje identificados como
AxisErrorID para el error MC_ReadAxisError.
AxisErrorID
Valor ID de MACRO Descripción

00 MC_FB_ERR_ El eje tiene un estado operativo (no hay nada que mostrar).
NO

01 MC_FB_ERR_ El eje no está operativo debido a un estado de eje incorrecto detectado


WRONG_STATE durante la ejecución de un bloque de función.
Restablezca el estado del eje mediante bloques de funciones
MC_Power y MC_Reset.
02 MC_FB_ERR_ El eje no está operativo debido a que se ha definido un parámetro
RANGE dinámico de eje no válido (velocidad, aceleración, desaceleración o
sacudida) en un bloque de función.
Restablezca el estado del eje mediante bloques de funciones
MC_Power y MC_Reset.
En el bloque de función, corrija las opciones de los parámetros
dinámicos que entren en conflicto con las opciones de la página de
configuración de dinámica del eje.
03 MC_FB_ERR_ El eje no está operativo debido a que se ha definido un parámetro no
PARAM válido (diferente de la velocidad, la aceleración, la desaceleración o la
sacudida) en un bloque de función.
Restablezca el estado del eje mediante bloques de funciones
MC_Power y MC_Reset.
En el bloque de función, corrija la configuración de los parámetros,
como el modo o la posición.
04 MC_FB_ERR_ Error interno de movimiento. ID de error = 0x04.
AXISNUM Póngase en contacto con su representante de soporte técnico local de
Rockwell Automation. Para ver la información de contacto, consulte:
http://www.rockwellautomation.com/support

05 MC_FB_ERR_ El eje no está operativo porque se ha detectado un problema mecánico


MECHAN o en la unidad.
Compruebe la conexión entre la unidad y el controlador (señales de
unidad preparada y en posición), y asegúrese de que la unidad
funciona con normalidad.
Restablezca el estado del eje mediante bloques de funciones
MC_Power y MC_Reset.
06 MC_FB_ERR_ El eje no está conectado.
NOPOWER Conecte el eje mediante el bloque de función MC_Power.
Restablezca el estado del eje mediante el bloque de función
MC_Reset.
07 MC_FB_ERR_ El eje no está operativo debido a que el propio eje o los recursos
RESOURCE relacionados requeridos por un bloque de función se encuentran bajo el
control de otro bloque de función o no está disponible.
Asegúrese de que el eje o los recursos relacionados requeridos por el
bloque de función estén disponibles para su uso.
Restablezca el estado del eje mediante bloques de funciones
MC_Power y MC_Reset.
Revise y corrija la aplicación si hay varias instancias del mismo bloque
de función que estén intentando controlar el eje al mismo tiempo.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 467


Capítulo 18 Instrucciones de control de movimiento

Valor ID de MACRO Descripción

08 MC_FB_ERR_ El eje no está operativo porque el perfil de movimiento definido en el


PROFILE bloque de función no es válido.
Restablezca el estado del eje mediante bloques de funciones
MC_Power y MC_Reset.
Corrija el perfil en el bloque de función.
09 MC_FB_ERR_ El eje no está operativo porque el perfil de movimiento solicitado en un
VELOCITY bloque de función entra en conflicto con la velocidad del eje actual.
Causas posibles:
 El bloque de funciones solicita que el eje invierta la dirección
mientras está en movimiento.
 La velocidad actual es demasiado baja o demasiado alta para el
perfil de movimiento solicitado.
Restablezca el estado del eje mediante bloques de funciones
MC_Power y MC_Reset.
Corrija el perfil de movimiento en el bloque de función o vuelva a
ejecutar el bloque de función cuando la velocidad del eje sea
compatible con el perfil de movimiento solicitado.
10 MC_FB_ERR_ El eje no está operativo porque se detectó un error de límite por
SOFT_LIMIT software; o bien la ejecución del bloque de funciones provocaría un
error de límite por software.
Restablezca el estado del eje mediante bloques de funciones
MC_Power y MC_Reset.
Compruebe la configuración de velocidad o de posición de destino para
el bloque de función, o ajuste el límite flexible.
11 MC_FB_ERR_ El eje no está operativo debido a que se detectó un error de límite
HARD_LIMIT estricto.
Restablezca el estado del eje con el bloque de función MC_Reset y, a
continuación, separe el eje del interruptor de límite estricto en la
dirección opuesta.
12 MC_FB_ERR_ El eje no está operativo porque se detectó un error de límite de lógica
LOG_LIMIT del acumulador de PTO, o bien la ejecución del bloque de funciones
provocaría un error de límite de lógica del acumulador de PTO.
Restablezca el estado del eje mediante bloques de funciones
MC_Power y MC_Reset.
Compruebe la configuración de velocidad o de posición de destino del
bloque de función. Use el bloque de función MC_SetPosition para
ajustar el sistema de coordenadas del eje.
13 MC_FB_ERR_ El eje no está operativo porque se detectó un error de ejecución del
ERR_ENGINE motor de movimiento.
Desconecte y vuelva a conectar toda la máquina y descargue de nuevo
la aplicación del usuario en el controlador.
Si el problema continúa, póngase en contacto con el representante
local de soporte técnico de Rockwell Automation. Para ver la
información de contacto, consulte:
http://www.rockwellautomation.com/support.
16 MC_FB_ERR_ El eje no está operativo porque no se ha alojado.
NOT_HOMED Restablezca el estado del eje mediante bloques de funciones
MC_Power y MC_Reset.
Ejecute el alojamiento con respecto al eje mediante el bloque de
función MC_Home.

468 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Valor ID de MACRO Descripción

128 MC_FB_ERR_ Advertencia interna de movimiento, ID de advertencia = 0x80.


PARAM_MODIFIED Póngase en contacto con su representante de soporte técnico local de
Rockwell Automation. Para ver la información de contacto, consulte:
http://www.rockwellautomation.com/support.

Consulte también

MC_ReadAxisError en la página 464

MC_ReadBoolPara Devuelve el valor de un parámetro específico del proveedor de tipo BOOL.

meter (parámetro Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


BOOL de lectura de de escalera y texto estructurado.

control de Esta instrucción se aplica a los controladores Micro830, Micro850 y


movimiento) Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_ReadBoolParameter actual.
Falso: restablece la salida Valor en 0.
Solo se aplica a programas de diagrama de lógica de escalera.

AxisIn Entrada AXIS_REF Utilice el tipo de datos AXIS_REF para definir AxisIn.
FB_AXIS_RE Para un FB_Axis (eje de retroalimentación), utilice el tipo de datos
F FB_AXIS_REF para definir los parámetros de AxisIn.
Enable Entrada BOOL Cierto: obtiene el valor del parámetro de forma continua mientras
está activado.
Falso: la salida Valor se restablece en 0.
ParameterNumber Entrada DINT Identificación del parámetro.
Las definiciones de números de parámetro se definen en números
de parámetro de bloque de funciones de control de movimiento.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 469


Capítulo 18 Instrucciones de control de movimiento

Parámetro Tipo de Tipo de Descripción


parámetro datos
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de
lógica de escalera.
Valid Salida BOOL Cierto: el valor del parámetro está disponible.
Falso: el valor del parámetro no está disponible.
Busy Salida BOOL Cierto: el bloque de función está funcionando y se esperan nuevos
valores de salida.
Falso: la función está inactiva.

Error Salida BOOL Indica que se ha producido un error.


CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en ID de error del bloque de funciones de
control de movimiento.
Valor Salida BOOL Valor del parámetro especificado en el tipo de datos, tal y como lo
especifica el proveedor.

Ejemplo de diagrama de bloque de funciones MC_ReadBoolParameter

Ejemplo de diagrama de lógica de escalera MC_ReadBoolParameter

470 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de texto estructurado MC_ReadBoolParameter

Resultados

Consulte también

Tipos de datos de AXIS_REF en la página 430

Tipos de datos FB_AXIS_REF en la página 431

Reglas generales de bloques de función de control de movimiento en la


página 420

Instrucciones de control de movimiento en la página 419

MC_ReadParameter Devuelve el valor de un parámetro específico de un proveedor en un tipo de


datos Real.
(parámetro de
lectura de control Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.
de movimiento)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 471


Capítulo 18 Instrucciones de control de movimiento

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_ReadParameter actual.
Falso: la salida Valor se restablece en 0.
Solo se aplica a programas de diagrama de lógica de escalera.

AxisIn Entrada AXIS_REF Utilice el tipo de datos AXIS_REF para definir AxisIn.
FB_AXIS_REF Para un FB_Axis (eje de retroalimentación), utilice el tipo de datos
FB_AXIS_REF para definir los parámetros de AxisIn.
Enable Entrada BOOL Cierto: obtiene el valor del número de parámetro de forma
continua.
Falso: la salida Valor se restablece en 0.
ParameterNumber Entrada DINT Identificación del parámetro.
Las definiciones de números de parámetro se definen en números
de parámetro de bloque de funciones de control de movimiento.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de
lógica de escalera.
Valid Salida BOOL Cierto: las salidas válidas están disponibles.
Falso: las salidas válidas no están disponibles.
Busy Salida BOOL Cierto: el bloque de función está funcionando y se esperan nuevos
valores de salida.
Falso: el bloque de funciones está inactivo.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en ID de error del bloque de funciones de
control de movimiento.
Valor Salida REAL Valor del parámetro especificado en el tipo de datos, tal y como lo
especifica el proveedor.

472 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de diagrama de bloque de funciones MC_ReadParameter

Ejemplo de diagrama de lógica de escalera MC_ReadParameter

Texto estructurado MC_ReadParameter ejemplo t

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 473


Capítulo 18 Instrucciones de control de movimiento

Resultados

Consulte también

Tipos de datos de AXIS_REF en la página 430

Tipos de datos FB_AXIS_REF en la página 431

Reglas generales de bloques de función de control de movimiento en la


página 420

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

Instrucciones de control de movimiento en la página 419

MC_ReadStatus Devuelve el estado del eje con respecto al movimiento en curso actualmente.

(estado de lectura Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de control de de escalera y texto estructurado.

movimiento)

474 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_ReadStatus actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.
AxisIn Entrada AXIS_REF Utilice los parámetros de tipo de datos AXIS_REF para definir AxisIn.
FB_AXIS_REF Para un FB_Axis (eje de retroalimentación), utilice el tipo de datos
FB_AXIS_REF para definir los parámetros de AxisIn.
Enable Entrada BOOL Cierto: obtiene el estado del eje de forma continua.
Falso: el estado de todas las salidas se restablece a 0.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de
lógica de escalera.
Valid Salida BOOL Cierto: las salidas válidas están disponibles.
Falso: las salidas no están disponibles.
Busy Salida BOOL Cierto: el bloque de función está funcionando y se esperan nuevos
valores de salida.
Falso: el bloque de funciones está inactivo.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 475


Capítulo 18 Instrucciones de control de movimiento

Parámetro Tipo de Tipo de datos Descripción


parámetro
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en ID de error del bloque de funciones de
control de movimiento.
ErrorStop Salida BOOL Cierto: el estado del eje es Parada de error.
Los estados del eje se definen en los nombres y valores de estado del
eje de control de movimiento.
Deshabilitado Salida BOOL Cierto: el estado del eje es Deshabilitado.
Parando Salida BOOL Cierto: el estado del eje es Parando.
Referenced Salida BOOL Cierto: el estado del eje es Autodirección, se conoce la posición de
referencia absoluta del eje.
Atascado Salida BOOL Cierto: el estado del eje es Atascado.
Movimiento discreto Salida BOOL Cierto: el estado del eje es Movimiento discreto.
ContinuousMotion Salida BOOL Cierto: el estado del eje es Movimiento continuo.
SynchronizedMotion Salida BOOL Los controladores Micro800 no admiten el movimiento sincronizado.
Cierto: nunca es cierto.
Falso: siempre es falso.
Autodirección Salida BOOL Cierto: el estado del eje es Autodirección.
ConstantVelocity Salida BOOL Cierto: la velocidad del motor es constante.
Acelerando Salida BOOL Cierto: el eje está acelerando, aumento de energía del motor.
Desacelerando Salida BOOL Cierto: el eje está desacelerando, reducción de energía del motor.

476 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de diagrama de bloque de funciones MC_ReadStatus

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 477


Capítulo 18 Instrucciones de control de movimiento

Ejemplo de diagrama de lógica de escalera MC_ReadStatus

478 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de texto estructurado MC_ReadStatus

Resultados

Consulte también

Tipos de datos de AXIS_REF en la página 430

Tipos de datos FB_AXIS_REF en la página 431

Reglas generales de bloques de función de control de movimiento en la


página 420

Instrucciones de control de movimiento en la página 419

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

MC_Reset Cambia el estado del eje de Parada de error a Atascado restableciendo todos
los errores internos de los ejes. Las salidas de las instancias del bloque de
(restablecimiento de función no cambian.
control de
Detalles de la operación:
movimiento)
 Si el estado de alarma del eje no cambia después de ejecutar
MC_Reset, ejecute MC_Power seguido de MC_Reset.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 479


Capítulo 18 Instrucciones de control de movimiento

 MC_Reset restablece únicamente el estado del eje de Parada de error a


Atascado. Ejecutar MC_Reset cuando el eje está en otros estados,
incluyendo Deshabilitado, genera un error y no tiene ningún efecto
sobre el movimiento continuado ni el estado del eje.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_Reset actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

AxisIn Entrada AXIS_REF Utilice el tipo de datos AXIS_REF para definir AxisIn.
FB_AXIS_REF Para un FB_Axis (eje de retroalimentación), utilice el tipo de datos
FB_AXIS_REF para definir los parámetros de AxisIn.
Execute Entrada BOOL Cierto: restablece el eje al flanco ascendente.

ENO Salida BOOL Habilita la salida.


Solo se aplica a programas de diagrama de lógica de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de lógica de
escalera.
Listo Salida BOOL Cierto: el estado del eje es Atascado o Deshabilitado.
Busy Salida BOOL Cierto: el bloque de función no se ha completado.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta instrucción se
definen en ID de error del bloque de funciones de control de movimiento.

480 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de diagrama de bloque de funciones MC_Reset

Ejemplo de diagrama de lógica de escalera MC_Reset

Ejemplo de texto estructurado MC_Reset

Resultados

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 481


Capítulo 18 Instrucciones de control de movimiento

Consulte también

Reglas generales de bloques de función de control de movimiento en la


página 420

Instrucciones de control de movimiento en la página 419

ID de error de bloque de función de control de movimiento en la


página 427

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

MC_SetPosition Cambia el sistema de coordenadas de un eje manipulando la posición real de


un eje con el mismo valor, sin causar ningún movimiento.
(posición
establecida de Detalles de la operación:

control de  MC_SetPosition solo se puede completar correctamente si el estado


movimiento) del eje es Atascado o Movimiento continuado (MC_ExecutionMode =
0), o si se completa el movimiento continuado y finaliza con el estado
Atascado (MC_ExecutionMode = 1).
 MC_SetPosition funciona de la misma forma que MC_Home si
HomingMode = MC_HOME_DIRECT (0x04), salvo que el bloque de
funciones MC_Home define el estado de autodirección del eje.
 Si MC_ExecutionMode = 0 (mcImmediately), la ejecución del bloque
de funciones MC_SetPosition notifica un error si existe un movimiento
continuado y no continuo con el eje.
 Si MC_ExecutionMode = 1 (mcQueued), el ajuste de posición real solo
se produce cuando se detiene todo el movimiento continuado anterior.
Es decir, cada bloque de función anterior debe tener al menos una de
las salidas Listo, Anulado o Error definida a Verdadera.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.
482 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018
Instrucciones de control de movimiento Capítulo 18

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_SetPosition actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de
escalera.
AxisIn Entrada AXIS_REF Utilice el tipo de datos AXIS_REF para definir AxisIn.
FB_AXIS_REF Para un FB_Axis (eje de retroalimentación), utilice el
tipo de datos FB_AXIS_REF para definir los
parámetros de AxisIn.
Execute Entrada BOOL Cierto: comienza a definir la posición del eje.
Position Entrada REAL La posición absoluta o distancia relativa que se va a
establecer para el eje.
Relative Entrada BOOL Cierto: define la distancia relativa del eje.
Falso: define la posición absoluta del eje.
MC_ExecutionMode Entrada SINT Los valores son:
 0 (mcImmediately): la funcionalidad es válida
inmediatamente.
 1 (mcQueued): la nueva funcionalidad se valida si:
 todos los comandos de movimiento anteriores
están definidos como uno de los siguientes
parámetros de salida: Listo, Anulado o
Error.
 El eje no se está moviendo.
Para (MC_ExecutionMode = 0), este bloque de función
solo se completa correctamente si el estado del eje es
Inhabilitado o Atascado. La ejecución de este bloque de
funciones genera un error si se produce un movimiento
no continuado con el eje en este modo.
Para (MC_ExecutionMode = 1), este bloque de
funciones solo se completa correctamente si el estado
del eje es Inhabilitado o Atascado, o si el movimiento
continuado se puede completar, lo que finaliza un
estado Atascado.
El resto de valores de entrada están actualmente
reservados y se consideran parámetros no válidos.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de
escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de
diagrama de lógica de escalera.
Listo Salida BOOL Cierto: la posición tiene un valor nuevo.
Busy Salida BOOL Cierto: el bloque de función no se ha completado.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de
esta instrucción se definen en ID de error del bloque de
funciones de control de movimiento.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 483


Capítulo 18 Instrucciones de control de movimiento

Ejemplo de diagrama de bloque de funciones MC_SetPosition

Ejemplo de diagrama de lógica de escalera MC_SetPosition

Ejemplo de texto estructurado MC_SetPosition

Resultados

484 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Consulte también

Reglas generales de bloques de función de control de movimiento en la


página 420

ID de error de bloque de función de control de movimiento en la


página 427

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

Instrucciones de control de movimiento en la página 419

MC_Stop (parada de Ordena una parada de movimiento controlado y cambia el estado del eje a
Parando. Se anulan todas las ejecuciones del bloque de función en curso.
control de Todos los comandos de movimiento de bloque de función se ignoran hasta
movimiento) que el estado del eje cambia a Atascado.

Detalles de la operación:

 Mientras la entrada Execute sea alta, el eje tendrá el estado Parando.


Mientras el eje está en estado Parando, ningún otro bloque de función
de movimiento puede ejecutar ningún movimiento en el mismo eje.
 Si la desaceleración es igual a cero, los parámetros de MC_Stop se
determinan por el ajuste de parada de emergencia de la configuración
del eje, incluyendo el tipo de parada de emergencia, la desaceleración
de parada de emergencia y la sacudida de parada de emergencia.
 Si no se detecta ningún error durante la secuencia de parada, el estado
del eje cambia a Atascado después de que se active el bit Done y la
entrada de Execute se cambie a Falso.
 Utilice MC_Stop como funcionalidad de parada de emergencia o en
situaciones excepcionales. Utilice MC_Halt para paradas de
movimiento normales.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 485


Capítulo 18 Instrucciones de control de movimiento

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_Stop actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de
escalera.

AxisIn Entrada AXIS_REF Utilice el tipo de datos AXIS_REF para definir los
parámetros de AxisIn.
Execute Entrada BOOL Cierto: inicia la acción del flanco ascendente.
Falso: no se ejecuta.
Deceleration Entrada REAL Valor de la desaceleración [u/s2]

Jerk Entrada REAL Valor de la sacudida [u/s3]


ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de
escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de
diagrama de lógica de escalera.
Listo Salida BOOL Cierto: se ha alcanzado una velocidad cero sin errores
durante la secuencia de parada.

Busy Salida BOOL Cierto: el bloque de función no se ha completado.


Activo Salida BOOL Cierto: indica que el bloque de función tiene control sobre el
eje.
CommandAborted Salida BOOL Cierto: el bloque de funciones MC_Power(OFF) o ErrorStop
(parada de error) ha anulado el comando.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en ID de error del bloque de
funciones de control de movimiento.

486 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de diagrama de bloque de funciones MC_Stop

Ejemplo de diagrama de lógica de escalera MC_Stop

Ejemplo de texto estructurado MC_Stop

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 487


Capítulo 18 Instrucciones de control de movimiento

Resultados

Consulte también

Tipos de datos de AXIS_REF en la página 430

Instrucciones de control de movimiento en la página 419

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

ID de error de bloque de función de control de movimiento en la


página 427

Reglas generales de bloques de función de control de movimiento en la


página 420

MC_TouchProbe Registra una posición del eje en un evento de disparo.

(sonda de toque de Detalles de la operación:


control de
 Si la dirección de la ventana (primera posición --> última posición)
movimiento) está en dirección opuesta a la dirección de movimiento, la ventana de
la sonda de toque no se activará.
 Si el ajuste de la ventana (primera posición o última posición) no es
válido, el bloque de funciones MC_TouchProbe notifica un error.
 Si se activa una segunda instancia del bloque de funciones
MC_TouchProbe en el mismo eje y la primera instancia del bloque
tiene el estado Busy, la segunda instancia notifica un error.
 Solo se puede activar una instancia de bloque de funciones
MC_TouchProbe en un eje.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

488 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo MC_TouchProbe actual.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica de escalera.

AxisIn Entrada AXIS_REF Utilice el tipo de datos AXIS_REF para definir los parámetros de
FB_AXIS_RE AxisIn.
F Para un eje de retroalimentación, utilice el archivo de datos
FB_AXIS_REF para definir los parámetros de AxisIn.
TriggerInp Entrada USINT No compatible actualmente. Configure disparador de entrada en
la configuración del eje.
Execute Entrada BOOL Cierto: comienza el registro de la sonda de toque en el flanco
ascendente.
Falso: no se ejecuta.
WindowOnly Entrada BOOL Cierto: utilice solo la ventana para aceptar eventos de disparador.
La resolución de movimiento se limita al intervalo de motor de
movimiento que configura el usuario.
Para la funcionalidad WindowOnly TouchProbe existe un retardo
de tiempo máximo de respuesta que es igual al intervalo del
motor de movimiento para la activación de la primera y la última
posición.
El máximo intervalo posible de la posición de activación (primera
y última posición) se puede calcular de la siguiente forma:
intervalo de motor de movimiento * velocidad de movimiento.
FirstPosition Entrada REAL Inicia la posición de la ventana desde la que se aceptan los
eventos de activación (en unidades técnicas [u]). Valor incluido en
la ventana.
LastPosition Entrada REAL Detiene la posición de la ventana desde la que se aceptan los
eventos de activación (en unidades técnicas [u]). Valor incluido en
la ventana.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 489


Capítulo 18 Instrucciones de control de movimiento

Parámetro Tipo de Tipo de Descripción


parámetro datos
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de diagrama de
FB_AXIS_RE lógica de escalera.
F
TriggerInput Salida USINT No compatible actualmente.
Listo Salida BOOL Cierto: el evento de disparador se ha registrado.
Busy Salida BOOL Cierto: el bloque de función no se ha completado.
CommandAborted Salida BOOL Cierto: el comando se ha cancelado por el bloque de funciones
MC_Power(OFF) o ErrorStop (parada de error).
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores de esta
instrucción se definen en ID de error del bloque de funciones de
control de movimiento.
RecordedPosition Salida REAL Posición en la que se ha producido el evento de activación (en
unidades técnicas [u])
El movimiento es un movimiento de bucle abierto.
La posición del eje en el momento en que se produce el evento
de activación. Si el movimiento del eje es un movimiento de bucle
abierto, la posición solicitada (no una posición real) en el
momento en que se produce el evento de activación, si no hay
retardo de movimiento entre la unidad y el motor.

Entrada/salida fija de movimiento

Señales de movimiento PTO0 PTO1 PTO2

Pulso PTO Salida_0 Salida_1 Salida_2


Dirección PTO Salida_3 Salida_4 Salida_5
Interruptor de límite (negativo) Entrada_0 Entrada_4 Entrada_8
inferior
Interruptor de límite (positivo) Entrada_1 Entrada_5 Entrada_9
superior
Interruptor de posición absoluta Entrada_2 Entrada_6 Entrada_10
Interruptor de entrada de sonda de Entrada_3 Entrada_7 Entrada_11
toque

490 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Ejemplo de diagrama de bloque de funciones MC_TouchProbe

Ejemplo de diagrama de lógica de escalera MC_TouchProbe

Ejemplo de texto estructurado MC_TouchProbe

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 491


Capítulo 18 Instrucciones de control de movimiento

Resultados

Consulte también

Reglas generales de bloques de función de control de movimiento en la


página 420

ID de error de bloque de función de control de movimiento en la


página 427

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

Instrucciones de control de movimiento en la página 419

MC_WriteBoolPara Modifica el valor de un parámetro específico del proveedor de tipo BOOL.

meter (parámetro Los parámetros definidos por el bloque de funciones


BOOL de escritura MC_WriteBoolParameter solo se aplican a la aplicación temporalmente. Se
sobrescriben por los ajustes permanentes, que están configurados por el
de control de usuario en la configuración de movimiento de Connected Components
movimiento) Workbench, cuando el controlador se cambia del modo PRG a RUN o
cuando se desconecta y conecta la alimentación del controlador.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

492 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo de MC_WriteBoolParameter
actual.
Falso: la salida Valor se restablece en 0.
Solo se aplica a programas de diagrama de lógica de
escalera.
AxisIn Entrada AXIS_REF Utilice el tipo de datos AXIS_REF para definir los
FB_AXIS_REF parámetros de AxisIn.
Para un eje de retroalimentación, utilice el archivo de
datos FB_AXIS_REF para definir los parámetros de
AxisIn.
Execute Entrada BOOL Cierto: escribe el valor del parámetro en el flanco
ascendente.
ParameterNumber Entrada DINT Identificación del parámetro.
El número de parámetro se define en detalles de
parámetros del bloque de funciones de control de
movimiento.
Valor Entrada BOOL Cierto: el parámetro especificado tiene un valor
nuevo.
MC_ExecutionMode Entrada SINT Los valores son:
 0 (mcImmediately): la funcionalidad es válida
inmediatamente.
 1 (mcQueued): la nueva funcionalidad se valida si:
 todos los comandos de movimiento
anteriores definen uno de los siguientes
parámetros de salida: listo, anulado o
error
 El eje no se está moviendo.
Cuando MC_ExecutionMode = 0, para todos los
parámetros excepto Ciclo de servicio (1005), este
bloque de funciones solo se puede completar
correctamente si el estado del eje es inhabilitado o
en estancamiento.
Cuando MC_ExecutionMode = 0, para el parámetro
Ciclo de servicio (1005), este FB se puede completar
correctamente, excepto cuando el eje tiene el estado
Autodirección o Parada de error.
Para (MC_ExecutionMode = 1), este bloque de
función solo se puede completar correctamente si el
estado del eje es inhabilitado o en estancamiento, o
si el movimiento continuado se puede completar,
finalizado con un estado de estancamiento.
El resto de valores de entrada están actualmente
reservados y se consideran parámetros no válidos.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de
escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de
diagrama de lógica de escalera.
Listo Salida BOOL Cierto: el parámetro se ha escrito correctamente.

Busy Salida BOOL Cierto: el bloque de función no se ha completado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 493


Capítulo 18 Instrucciones de control de movimiento

Parámetro Tipo de Tipo de datos Descripción


parámetro
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores
de esta instrucción se definen en ID de error del
bloque de funciones de control de movimiento.

Ejemplo de diagrama de bloque de funciones MC_WriteBoolParameter

Ejemplo de diagrama de lógica de escalera MC_WriteBoolParameter

Ejemplo de texto estructurado MC_WriteBoolParameter

494 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Resultados

Consulte también

Instrucciones de control de movimiento en la página 419

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

ID de error de bloque de función de control de movimiento en la


página 427

Reglas generales de bloques de función de control de movimiento en la


página 420

MC_WriteParameter Modifica el valor de un parámetro específico del proveedor de tipo REAL.

(parámetro de Los parámetros definidos por el bloque de funciones MC_WriteParameter


escritura de control solo se aplican a la aplicación temporalmente. Se sobrescriben por los ajustes
permanentes, que están configurados por el usuario en la configuración de
de movimiento) movimiento de Connected Components Workbench, cuando el controlador
se cambia de PRG a RUN o cuando se desconecta y conecta la alimentación
del controlador.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro830, Micro850 y


Micro870 que son compatibles con control de movimiento.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 495


Capítulo 18 Instrucciones de control de movimiento

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el cálculo actual de
MC_WriteParameter.
Falso: no se realiza ningún cálculo.
Solo se aplica a programas de diagrama de lógica
de escalera.
AxisIn Entrada AXIS_REF Utilice el tipo de datos AXIS_REF para definir los
FB_AXIS_RE parámetros de AxisIn.
F Para un eje de retroalimentación, utilice el archivo
de datos FB_AXIS_REF para definir los parámetros
de AxisIn.
Execute Entrada BOOL Cierto: escribe el valor del parámetro en el flanco
ascendente.

ParameterNumber Entrada DINT Identificación del parámetro.


El número de parámetro se define en detalles de
parámetros del bloque de funciones de control de
movimiento.
Valor Entrada REAL Nuevo valor del parámetro especificado.
MC_ExecutionMode Entrada SINT Los valores son:
 0 (mcImmediately): la funcionalidad es válida
inmediatamente.
 1 (mcQueued): la nueva funcionalidad se valida
si:
 todos los comandos de movimiento
anteriores definen uno de los siguientes
parámetros de salida: listo, anulado o
error
 El eje no se está moviendo.
 Implica que el parámetro de salida Busy
está configurado como Falso.
Cuando MC_ExecutionMode = 0, para todos los
parámetros excepto Ciclo de servicio (1005), este
bloque de funciones solo se puede completar
correctamente si el estado del eje es inhabilitado o
en estancamiento.
Cuando MC_ExecutionMode = 0, para el parámetro
Ciclo de servicio (1005), este FB se puede
completar correctamente, excepto cuando el eje
tiene el estado Autodirección o Parada de error.

Para (MC_ExecutionMode = 1), este bloque de


función solo se puede completar correctamente si el
estado del eje es inhabilitado o en estancamiento, o
si el movimiento continuado se puede completar,
finalizado con un estado de estancamiento.
El resto de valores de entrada están actualmente
reservados y se consideran parámetros no válidos.

496 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de movimiento Capítulo 18

Parámetro Tipo de Tipo de Descripción


parámetro datos
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica
de escalera.
Eje Salida AXIS_REF La salida del eje es de solo lectura en programas de
diagrama de lógica de escalera.
Listo Salida BOOL Cierto: el parámetro se ha escrito correctamente.

Busy Salida BOOL Cierto: indica que el bloque de funciones tiene el


control del eje.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
ErrorID Salida UINT Un número único que identifica el error. Los errores
de esta instrucción se definen en ID de error del
bloque de funciones de control de movimiento.

Ejemplo de diagrama de bloque de funciones MC_WriteParameter

Ejemplo de diagrama de lógica de escalera MC_WriteParameter

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 497


Capítulo 18 Instrucciones de control de movimiento

Ejemplo de texto estructurado MC_WriteParameter

Resultados

Consulte también

Tipos de datos de AXIS_REF en la página 430

Tipos de datos FB_AXIS_REF en la página 431

Instrucciones de control de movimiento en la página 419

Detalles de parámetros de bloques de funciones de control de


movimiento en la página 423

Reglas generales del bloque de funciones de control de movimiento en


la página 420

498 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 19

Instrucciones de control de
proceso

Utilice las instrucciones de control de proceso para supervisar y mantener


bucles de proceso para cantidades como la presión, la temperatura, el caudal
y el nivel de fluidos. Los controles de proceso regulan el curso enviando una
señal de salida a la válvula de control.

Instrucción Descripción

DERIVATE en la página 499 Diferencia un valor real en un tiempo de ciclo determinado.


FFL en la página 501 Carga datos de 8, 16, 32 o 64 bits en una matriz creada por el usuario
denominada pila de FIFO.
FFU en la página 511 Descarga datos de 8, 16, 32 o 64 bits de una matriz creada por el
usuario denominada pila FIFO. Los datos se descargan en el mismo
orden en que se cargaron mediante la instrucción FFL.
HYSTER en la página 516 Realiza unahistéresis booleana en diferencia de reales.
INTEGRAL en la página 518 Integra un valor real durante el ciclo de tiempo definido.
LFL (carga LIFO) en la página Carga datos de 8, 16, 32 o 64 bits en una matriz creada por el usuario
522 denominada pila de LIFO.
LFU (descarga LIFO) en la página Descarga datos de 8, 16, 32 o 64 bits de una matriz creada por el
525 usuario denominada pila LIFO. Los datos se descargan en el mismo
orden en que se cargaron mediante la instrucción LFL.
PWM en la página 527 Activa o desactiva la salida de modulación de ancho de pulso (PWM)
de un canal PWM configurado.
SCALER en la página 529 Escala la variable de entrada según el intervalo de salida.
STACKINT en la página 531 Administra una pila de valores enteros.
LIMIT en la página 535 Limita los valores de entero a un intervalo concreto.
TND en la página 534 Detiene el ciclo actual de la exploración del programa del usuario.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

DERIVATE Diferenciación de un valor real en un tiempo de ciclo determinado.

Detalles de la operación:

 Si el valor del parámetro CYCLE es inferior a la temporización del


ciclo de ejecución del dispositivo, el periodo de muestra se fuerza a
esta temporización de ciclo.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 499


Capítulo 19 Instrucciones de control de proceso

 La derivación se realiza con una base temporal de milisegundos.La


derivación de una entrada de 1.000 que cambia a 2.000 durante un
período de tiempo de 1 segundo dará como resultado un valor de 1.
Para convertir la salida de la instrucción a unidades de segundos,
multiplique la salida por 1000.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Ejecución Entrada BOOL Indica el modo de funcionamiento de la instrucción.
Cierto: normal (realiza un cálculo)
Falso: restablecer
XIN Entrada REAL Define el valor en el que se realiza el cálculo de
derivación. El valor debe ser un valor REAL.
CYCLE Entrada TIME Define las muestras de período de tiempo en que se
recopilan los valores. Los valores de período de tiempo
posibles van desde 0 ms a 49d17h2m47s294ms.
XOUT Salida REAL Salida diferenciada.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de
escalera.

Ejemplo de diagrama de bloque de funciones DERIVATE

500 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Ejemplo de diagrama de lógica de escalera DERIVATE

Ejemplo de texto estructurado DERIVATE

(* Equivalencia de ST: DERIVATE1 es una instancia de un bloque


DERIVATE*)

DERIVATE1(modo_manual, valor_sensor, t#100ms);


valor_derivado:= DERIVATE1.XOUT;

Consulte también

Instrucciones de control de proceso en la página 499

FFL (carga FIFO) Carga datos de 8, 16, 32 o 64 bits en una matriz creada por el usuario
denominada pila de FIFO.

Detalles de la operación:

 Instrucción de FFL: de modo de no ejecución a modo de ejecución


 Si Execute cambia de FALSO a CIERTO.
 Se han verificado las condiciones de error.
 El contenido de Src se carga en la pila FIFO en la posición
disponible y Posición se incrementa en 1 si Posición es menor
o igual que cero y menor que Longitud.
 Completo se define como Cierto si Longitud es igual a Posición.
Completo es FALSO si Posición es menor o igual que cero y
menor que Longitud.
 Listo se establece si la instrucción se ejecuta correctamente.
 Cuando Execute cambia de CIERTO a FALSO.
 Error, Listo y ErrorID se establecen como FALSO.
 Vacío se establece como CIERTO si Posición es igual a cero.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 501


Capítulo 19 Instrucciones de control de proceso

 Completo se define como CIERTO si Longitud es igual a


Posición. Completo es FALSO si Posición es menor o igual que
cero y menor que Longitud.
 Las condiciones de error de FFL no se han verificado.
 Cuando Execute cambia de CIERTO a CIERTO.
 No se realiza ninguna operación de carga.
 Vacío se establece como CIERTO si Posición es igual a cero.
 Completo se define como FALSO si Posición es menor o igual
que cero y menor que Longitud. Completo se define como
CIERTO si Longitud es igual a Posición.
 Las condiciones de error de FFL no se han verificado.
 Cuando Execute cambia de FALSO a FALSO.
 Los bits Error, Listo y ErrorID se establecen como FALSO.
 Los bits Completo y Vacío conservan los valores del estado de
ejecución anterior.
 Vacío se establece como CIERTO si Posición es igual a cero.
 Completo se define como CIERTO si Longitud es igual a
Posición. Completo es FALSO si Posición es menor o igual que
cero y menor que Longitud.
 Las condiciones de error de FFL no se han verificado.
 Instrucción FFL: de modo de ejecución a modo de no ejecución:
 Error, ErrorID, Listo, Vacío y Completo conservan el estado de
modo de Execute.
 Para crear un elemento único para el parámetro FIFO:
 Sin matriz:
 La dirección basada en matriz como Fifo1 está permitida para
FIFO.
 La longitud debe configurarse como 1.
 Matriz:
 La dirección basada en matriz como Fifo1 o Fifo1[0] está
permitida para FIFO.
 La longitud debe configurarse como 1.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

502 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: si se ha detectado un flanco ascendente, inicia la operación
FFL.
FALSO: no se ha detectado un flanco ascendente.
Src Entrada ANY_ELEMENTAR El operando Src es la dirección del valor utilizado para rellenar la
Y posición actual disponible en la pila FIFO.
Tipos de datos elementales compatibles con Src:
 DWORD, REAL, TIME, DATE, LWORD, ULINT, LINT, LREAL, BOOL,
SINT, USINT, BYTE, INT, UINT, WORD, DINT, UDINT.
 La cadena no es compatible.
 Los elementos de matriz como Array[1] o Array[Index] son
compatibles.
FIFO Entrada ANY_ELEMENTAR La dirección inicial de la pila. FIFO debe configurarse del mismo modo
Y para las instrucciones FFL y FFU.
Tipos de datos elementales compatibles con FIFO:
DWORD, REAL, TIME, DATE, LWORD, ULINT, LINT, LREAL, BOOL,
SINT, USINT, BYTE, INT, UINT, WORD, DINT, UDINT.
 La cadena no es compatible.
 Solo la matriz de dimensión única es compatible con FIFO.
FIFOCon Entrada FF_LF_CON Control y configuración de FIFO. Debe configurarse la misma
configuración para las instrucciones FFL y FFU.
Utilice el tipo de datos FF_LF_CON para configurar la posición y la
longitud.
Listo Salida BOOL Indica cuándo se ha completado la operación de FFU.
CIERTO: la operación se ha realizado correctamente.
FALSO: la operación ha detectado una condición de error o la
instrucción FFU no se está ejecutando.
Vacío Salida BOOL Indica si la pila de FIFO está vacía.
CIERTO: cuando posición es igual a 0.
FALSO: cuando posición no es igual a 0.
Lleno Salida BOOL Indica si la pila FIFO está llena.
CIERTO: si longitud es igual a posición.
FALSO: si la posición es mayor o igual que cero y menor que la longitud.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 503


Capítulo 19 Instrucciones de control de proceso

Error Salida BOOL Indica la existencia de una condición de error.


Cierto: La operación ha detectado un error.
FALSO: la operación se ha realizado correctamente o la instrucción no
se ha ejecutado.
ErrorID Salida USINT Un número único que identifica el error. Los errores se establecen en los
códigos de estado FFL.

Tipo de datos FF_LF_CON

Utilice esta tabla para determinar los valores de los parámetros para el tipo de
datos FF_LF_CON.

Parámetro Tipo de Descripción


datos
Longitud UINT Número de elementos utilizado para la operación FIFO. El límite máximo es 1024.
Position USINT Determina la siguiente ubicación disponible en el FIFO para la entrada o eliminación de Src.
Posición es el desplazamiento de la matriz.
Ejemplo 1:
 Matriz configurada por el usuario, arr [0..5]. La posición inicial se configura como 1. Los datos
se insertan en arr [1] y la posición se incrementa por posición + 1.
Ejemplo 2:
 Matriz configurada por el usuario como arr [1..5]. La posición inicial se configura como 1. Los
datos se insertan en arr [2] y la posición se incrementa por posición + 1.

Códigos de error FFL

Utilice esta tabla para determinar los códigos de error FFL y FFU y las
descripciones.

Código de Descripción del error


error
0 No hay error.

1 El tipo de datos FFL Src no es compatible.

2 El tipo de datos FFU Dest no es compatible.

3 El tipo de datos FIFO no es compatible.

4 Error de coincidencia de tipo de datos Src y Dest con tipo de datos FIFO.
Acción correctiva:
El parámetro FFL Src y el tipo de datos del parámetro de FFU Dest deben coincidir con el tipo de datos de
matriz de FIFO.
5 FIFO: dimensión de la matriz no compatible.
Acción correctiva:
FIFO solo admite matrices de dimensión única.
6 La longitud de control de FIFOCon supera el tamaño de matriz FIFO.
Acción correctiva:
La longitud de control de FIFOCon no puede superar el tamaño de matriz FIFO.

504 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Código de Descripción del error


error
0 No hay error.

1 El tipo de datos FFL Src no es compatible.

2 El tipo de datos FFU Dest no es compatible.

3 El tipo de datos FIFO no es compatible.

4 Error de coincidencia de tipo de datos Src y Dest con tipo de datos FIFO.
Acción correctiva:
El parámetro FFL Src y el tipo de datos del parámetro de FFU Dest deben coincidir con el tipo de datos de
matriz de FIFO.
5 FIFO: dimensión de la matriz no compatible.
Acción correctiva:
FIFO solo admite matrices de dimensión única.
6 La longitud de control de FIFOCon supera el tamaño de matriz FIFO.
Acción correctiva:
La longitud de control de FIFOCon no puede superar el tamaño de matriz FIFO.
7 La longitud de FIFOCon supera la longitud máxima.

8 La longitud de FIFOCon es cero.

9 La posición de FIFOCon supera la longitud de FIFOCon.

10 La longitud de control de FFL y la posición son iguales.

11 La posición de control de FFU es cero.

12 La dimensión de la matriz FFL o FFU no es compatible.


Acción correctiva:
FFL y FFU solo admiten matrices de dimensión única.
13 DestOffset de FFL o FFU supera el tamaño de matriz Dest.

Ejemplo de diagrama de bloque de funciones FFL

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 505


Capítulo 19 Instrucciones de control de proceso

Ejemplo de diagrama de lógica de escalera FFL

Ejemplo de texto estructurado FFL

Resultados

506 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Consulte también

Diagramas de temporización de instrucción FFL y FFU en la página


507

Instrucciones de control de proceso en la página 499

Diagramas de Los siguientes ejemplos de diagrama de temporización describen escenarios


de ejecución para las instrucciones FFL (carga FIFO) y FFU (descarga
temporización de FIFO).
instrucción FFL y FFU
Ejecución FFL correcta seguida de ejecución de FFU correcta

Utilice esta tabla para determinar los valores de parámetros para cada ciclo
de exploración.

Ciclo de Descripción
exploración
1 La condición de línea pasa a ser Cierto cuando:
 El bit de entrada Execute es CIERTO.
 Datos de carga (insertados) a pila FIFO.
 El bit de salida Listo es CIERTO.
2,3,4 No hay cambio en la condición de línea.
5 La condición de línea pasa a ser FALSO cuando:
 El bit Execute es FALSO.
 El bit de salida Listo es FALSO.
6, 7 No hay cambio en la condición de línea.
 El bit Execute es FALSO.
 El bit de salida Listo es FALSO.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 507


Capítulo 19 Instrucciones de control de proceso

Ciclo de Descripción
exploración
8 Línea cambia a CIERTO si:
 El bit de entrada Execute es CIERTO.
 Descargar datos de pila FIFO.
 El bit de salida Listo es CIERTO.
9 No hay cambio en la condición de línea.
 El bit Execute es FALSO.
 El bit de salida Listo es FALSO.
10, 11 No hay cambio en la condición de línea.

Ejecución correcta si el bit vacío es CIERTO

Utilice esta tabla para determinar los valores de parámetros para cada ciclo
de exploración.

Ciclo de Descripción
exploración
1 La condición de línea pasa a ser Cierto cuando:
 El bit de entrada Execute es CIERTO. Se inicia la ejecución.
 La posición es cero. El bit Vacío es CIERTO.
 El bit de salida Listo es CIERTO.
2,3,4 No hay cambio en la condición de línea.
5 La condición de línea pasa a ser FALSO cuando:
 El bit Execute es FALSO.
 El bit vacío es CIERTO.
 El bit de salida Listo es FALSO.
6, 7 No hay cambio en la condición de línea.

508 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Ciclo de Descripción
exploración
8 Línea cambia a CIERTO si:
 El bit de entrada Execute es CIERTO. Se inicia la ejecución.
 El bit vacío es CIERTO.
 El bit de salida Listo es CIERTO.
9 La condición de línea pasa a ser FALSO cuando:
 El bit Execute es FALSO.
 El bit vacío es CIERTO.
 El bit de salida Listo es FALSO.
10, 11 No hay cambio en la condición de línea.

Ejecución correcta si el bit vacío es CIERTO

Utilice esta tabla para determinar los valores de parámetros para cada ciclo
de exploración.

Ciclo de Descripción
exploración
1 La condición de línea pasa a ser Cierto cuando:
 El bit de entrada Execute es CIERTO. Se inicia la ejecución.
 Posición es igual a Longitud, el bit Completo es CIERTO.
 El bit de salida Listo es CIERTO.
2,3,4 No hay cambio en la condición de línea.
5 La condición de línea pasa a ser FALSO cuando:
 El bit Execute es FALSO.
 El bit completo es CIERTO.
 El bit de salida Listo es FALSO.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 509


Capítulo 19 Instrucciones de control de proceso

Ciclo de Descripción
exploración
6, 7 No hay cambio en la condición de línea.

8 Línea cambia a CIERTO si:


 El bit de entrada Execute es CIERTO. Se inicia la ejecución.
 El bit completo es CIERTO.
 El bit de salida Listo es CIERTO.
9 La condición de línea pasa a ser FALSO cuando:
 El bit Execute es FALSO.
 El bit completo es CIERTO.
 El bit de salida Listo es FALSO.
10, 11 No hay cambio en la condición de línea.

Se ha detectado un error durante la ejecución de FFL y FFU

Utilice esta tabla para determinar los valores de parámetros para cada ciclo
de exploración.

Ciclo de Descripción
exploración
La condición de línea pasa a ser CIERTO cuando:
 El bit de entrada Execute es CIERTO. Se inicia la ejecución.
 El bit Error es CIERTO.
2,3,4 No hay cambio en la condición de línea.
5 La condición de línea pasa a ser FALSO cuando:
 El bit Execute es FALSO.
 Los bits Error y ErrorID son FALSO.

510 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Ciclo de Descripción
exploración
6, 7 No hay cambio en la condición de línea.

8 Línea cambia a CIERTO si:


 El bit de entrada Execute es CIERTO. Se inicia la ejecución.
 El bit Error es CIERTO.
9 La condición de línea pasa a ser FALSO cuando:
 El bit Execute es FALSO.
 Los bits Error y ErrorID son FALSO.
10, 11 No hay cambio en la condición de línea.

Consulte también

FFL en la página 511

FFU en la página 511

Instrucciones de control de proceso en la página 499

FFU (descarga Descarga datos de 8, 16, 32 o 64 bits de una matriz creada por el usuario
denominada pila de FIFO (primero en entrar, primero en salir) en el mismo
FIFO) orden en el que se cargaron los datos mediante la instrucción FFL.

Detalles de la operación:

 Instrucción de FFU: de modo de no ejecución a modo de ejecución:


 Si Execute cambia de FALSO a CIERTO.
 Se han verificado las condiciones de error FFU.
 Descarga el contenido de la pila FIFO en la posición cero si
Posición es mayor que cero y menor o igual a Longitud.
 Los elementos restantes se desplazan una posición hacia cero
y se establece el elemento superior de la pila FIFO en cero,
Posición disminuye en 1.
 El bit Vacío se define como CIERTO si Posición es igual a cero.
 Listo se establece si la instrucción se ejecuta correctamente.
 Cuando Execute cambia de CIERTO a FALSO.
 Error, Listo y ErrorID se establecen como FALSO.
 Vacío se establece como CIERTO si Posición es igual a cero.
 Completo se define como CIERTO si Longitud es igual a
Posición. Completo se define como FALSO si Posición es
menor o igual que cero y menor que Longitud.
 Las condiciones de error de FFU no se han verificado.
 Cuando Execute cambia de CIERTO a CIERTO.
 No se realiza ninguna operación de descarga.
Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 511
Capítulo 19 Instrucciones de control de proceso

 Vacío se establece como CIERTO si Posición es igual a cero.


 Completo se define como CIERTO si Longitud es igual a
Posición.
 Las condiciones de error de FFU no se han verificado.
 Cuando Execute cambia de FALSO a FALSO.
 Error, Listo y ErrorID se establecen como FALSO.
 Vacío se establece como CIERTO si Posición es igual a cero.
 Completo se define como CIERTO si Longitud es igual a
Posición. Completo se define como FALSO si Posición es
menor o igual que cero y menor que Longitud.
 Las condiciones de error de FLU no se han verificado.
 Instrucción FFU: de modo de ejecución a modo de no ejecución:
 Error, ErrorID, Listo, Vacío y Completo conservan el estado de
modo de Execute.
 Para crear un elemento único para el parámetro FIFO:
 Sin matriz:
 La dirección basada en matriz como Fifo1 está permitida para
FIFO.
 La longitud debe configurarse como 1.
 Matriz:
 La dirección basada en matriz como Fifo1 o Fifo1[0] está
permitida para FIFO.
 La longitud debe configurarse como 1.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

512 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: si se ha detectado un flanco ascendente inicia la operación FFU.
FALSO: no se ha detectado un flanco ascendente.
Dest Entrada ANY_ELEMENTAR Mantiene el valor ya existente en la pila FIFO.
Y Tipos de datos elementales compatibles con Dest:
 DWORD, REAL, TIME, DATE, LWORD, ULINT, LINT, LREAL, BOOL,
SINT, USINT, BYTE, INT, UINT, WORD, DINT, UDINT.
 La cadena no es compatible.
 Solo admite matrices de dimensión única como Array[1] o Array[Index].
DestOffset Entrada UINT Desplazamiento del elemento de destino.
El offset de elemento si el destino es un tipo de datos de matriz, de lo
contrario el offset debe establecerse en 0.
Para el tipo de datos de matriz, para descargar al primer elemento, el offset
debe establecerse como 0.

FIFO Entrada ANY_ELEMENTAR La dirección inicial de la pila. FIFO debe configurarse del mismo modo en
Y las instrucciones FFL y FFU.
 Tipos de datos elementales compatibles con FIFO:
DWORD, REAL, TIME, DATE, LWORD, ULINT, LINT, LREAL, BOOL,
SINT, USINT, BYTE, INT, UINT, WORD, DINT, UDINT.
 La cadena no es compatible.
 Solo la dimensión única es compatible con FIFO.
FIFOCon Entrada FF_LF_CON Control y configuración de FIFO. Debe configurarse la misma configuración
para las instrucciones FFL y FFU.
Utilice el tipo de datos FF_LF_CON para configurar la posición y la longitud.
Listo Salida BOOL Indica cuándo se ha completado la operación de FFU.
CIERTO: la operación se ha realizado correctamente.
FALSO: la operación ha detectado una condición de error o la instrucción
FFU no se está ejecutando.
Lleno Salida BOOL Indica si la pila FIFO está llena.
CIERTO: si longitud es igual a posición.
FALSO: cuando posición es mayor que cero y menor que longitud.
Vacío Salida BOOL Indica si la pila de FIFO está vacía.
CIERTO: cuando posición es igual a 0.
FALSO: cuando posición no es igual a 0.
Error Salida BOOL Indica la existencia de una condición de error.
CIERTO: La operación ha detectado un error.
FALSO: la operación se ha realizado correctamente o la instrucción no se
ha ejecutado.
ErrorID Salida USINT Un número único que identifica el error. Los errores se establecen en los
códigos de estado FFU.

Tipo de datos FF_LF_CON

Utilice esta tabla para determinar los valores de los parámetros para el tipo de
datos FF_LF_CON.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 513


Capítulo 19 Instrucciones de control de proceso

Parámetro Tipo de Descripción


datos
Longitud UINT Número de elementos utilizado para la operación FIFO. El límite máximo es 1024.

Position USINT Determina la siguiente ubicación disponible en el FIFO para la entrada o eliminación de Src.
Posición es el desplazamiento de la matriz.
Ejemplo 1:
 Matriz configurada por el usuario, arr [0..5]. La posición inicial se configura como 1. Los datos
se insertan en arr [1] y la posición se incrementa por posición + 1.
Ejemplo 2:
 Matriz configurada por el usuario como arr [1..5]. La posición inicial se configura como 1. Los
datos se insertan en arr [2] y la posición se incrementa por posición + 1.

Códigos de error FFU

Utilice esta tabla para determinar los códigos de error FFL y FFU y las
descripciones.

Código de Descripción del error


error
0 No hay error.

1 El tipo de datos FFL Src no es compatible.

2 El tipo de datos FFU Dest no es compatible.

3 El tipo de datos FIFO no es compatible.

4 Error de coincidencia de tipo de datos Src y Dest con tipo de datos FIFO.
Acción correctiva:
El parámetro FFL Src y el tipo de datos del parámetro de FFU Dest deben coincidir con el tipo de datos de
matriz de FIFO.
5 FIFO: dimensión de la matriz no compatible.
Acción correctiva:
FIFO solo admite matrices de dimensión única.
6 La longitud de control de FIFOCon supera el tamaño de matriz FIFO.
Acción correctiva:
La longitud de control de FIFOCon no puede superar el tamaño de matriz FIFO.
7 La longitud de FIFOCon supera la longitud máxima.

8 La longitud de FIFOCon es cero.

9 La posición de FIFOCon supera la longitud de FIFOCon.

10 La longitud de control de FFL y la posición son iguales.

11 La posición de control de FFU es cero.

12 La dimensión de la matriz FFL o FFU no es compatible.


Acción correctiva:
FFL y FFU solo admiten matrices de dimensión única.

514 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Código de Descripción del error


error
0 No hay error.

1 El tipo de datos FFL Src no es compatible.

2 El tipo de datos FFU Dest no es compatible.

3 El tipo de datos FIFO no es compatible.

4 Error de coincidencia de tipo de datos Src y Dest con tipo de datos FIFO.
Acción correctiva:
El parámetro FFL Src y el tipo de datos del parámetro de FFU Dest deben coincidir con el tipo de datos de
matriz de FIFO.
5 FIFO: dimensión de la matriz no compatible.
Acción correctiva:
FIFO solo admite matrices de dimensión única.
6 La longitud de control de FIFOCon supera el tamaño de matriz FIFO.
Acción correctiva:
La longitud de control de FIFOCon no puede superar el tamaño de matriz FIFO.
13 DestOffset de FFL o FFU supera el tamaño de matriz Dest.

Ejemplo de diagrama de bloque de funciones FFU

Ejemplo de diagrama de lógica de escalera FFU

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 515


Capítulo 19 Instrucciones de control de proceso

Ejemplo de texto estructurado FFU

Resultados

Consulte también

Diagramas de temporización de instrucción FFL y FFU en la página


507

Instrucciones de control de proceso en la página 499

HYSTER (histéresis) Histéresis booleana en diferencia de reales. Compara el valor actual de una
entrada con el límite alto establecido agregando la cantidad de intervalo
histórica medida por histéresis al valor esperado de una entrada y
determinando si el valor actual supera ese límite.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

516 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta el bloque de instrucción.
Falso: no se ejecuta el bloque de instrucción.
Solo se aplica a programas de diagrama de lógica de escalera.
XIN1 Entrada REAL Cualquier valor real.
XIN2 Entrada REAL Para comprobar si el valor de entrada XIN1 ha superado el límite
superior definido para esta entrada XIN2 + EPS.
EPS Entrada REAL Valor de histéresis (debe ser mayor que cero).
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Q Salida BOOL El resultado de la instrucción HYSTER.
Cierto: la entrada ha sobrepasado el límite superior, pero no está
por debajo del límite inferior.
Falso: la entrada no ha sobrepasado el límite superior.

Ejemplo de diagrama de temporización HYSTER

En el siguiente diagrama se utiliza HYSTER para determinar el intervalo de


rendimiento causado por la fricción del motor durante un período de tiempo
de 5 segundos. La instrucción se ejecuta cada 10 milisegundos. Durante la
fase de puesta en marcha, el motor ha funcionado con menor eficacia.

Ejemplo de diagrama de bloque de función HYSTER

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 517


Capítulo 19 Instrucciones de control de proceso

Ejemplo de diagrama de lógica de escalera HYSTER

Ejemplo de texto estructurado HYSTER

Consulte también

Instrucciones de control de proceso en la página 499

INTEGRAL Integra un valor real durante el ciclo de tiempo definido.

Detalles de la operación:

 Cuando se inicia por primera vez el bloque de funciones INTEGRAL,


sus valores iniciales no se consideran. Utilice el parámetro R1 para
definir los valores iniciales del cálculo.
 Para evitar la pérdida de un valor integrado, el valor de integración no
se elimina automáticamente si el controlador cambia de PROGRAM a
RUN o si el parámetro RUN cambia de Falso a Cierto. Use el
parámetro R1 para borrar el valor integral cuando el controlador
cambie por primera vez de PROGRAM a RUN y cuando comience una
nueva integración.
 Se recomienda no utilizar los parámetros opcionales EN o ENO con
este bloque de funciones porque el cálculo de tiempo de ciclo se
interrumpe cuando EN es Falso, lo que da lugar a una integración
incorrecta. Si decide utilizar los parámetros EN o ENO, alterne el
parámetro R1 con EN igual a Cierto para eliminar el resultado actual y
garantizar una integración correcta.
 La integración se realiza con una base temporal de milisegundos (es
decir, la integración de una entrada de 1 con un valor inicial de 0 para 1
segundo da como resultado un valor de 1.000). Para convertir la salida
de la instrucción a unidades de segundos, divida la salida por 1000.

518 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

 Si el valor del parámetro CYCLE es inferior a la temporización del


ciclo de la ejecución del dispositivo, el período de muestra se fuerza a
esta temporización de ciclo.
 Las muestras XIN y las ejecuciones del bloque de funciones se
producen en cada temporización de ciclo + jitter de tiempo de
exploración.
 Para un programa de usuario concreto, el jitter de tiempo de
exploración varía en función de cada controlador.
 El tiempo de ciclo determina la sensibilidad del bloque de funciones
Integral. Los cambios que se producen en XIN entre dos muestras (o en
el tiempo de ciclo) no se tienen en cuenta cuando se calcula el valor de
XOUT integral.
 El tiempo de ciclo y el jitter de tiempo de exploración contribuyen a la
imprecisión global de la salida Integral, tal y como se muestra en el
ejemplo de XIN en sincronización con la ejecución de un bloque de
funciones y el ejemplo de XIN sin sincronización con una ejecución de
un bloque de funciones.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Ejecución Entrada BOOL Modo: Cierto = integrar / Falso = mantener.
R1 Entrada BOOL Restablecimiento de la anulación.
XIN Entrada REAL Entrada: cualquier valor real.
X0 Entrada REAL Valor inicial.
CYCLE Entrada TIME Periodo de muestra. Los valores posibles van desde 0 ms a
49 d, 17 h, 2 m, 47 s, 294 ms.
Q Salida BOOL No R1.
XOUT Salida REAL Salida integrada.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 519


Capítulo 19 Instrucciones de control de proceso

Ejemplo de diagrama de bloque de funciones INTEGRAL

Ejemplo de diagrama de lógica de escalera INTEGRAL

Ejemplo de texto estructurado INTEGRAL

(* Equivalencia de ST: INTEGRAL1 es una instancia de un bloque


INTEGRAL*)

INTEGRAL1(modo_manual, NOT(modo_manual), valor_sensor,


valor_inicial, t#100ms);
valor_controlado:= INTEGRAL1.XOUT;

520 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Resultados

Ejemplo de XIN en sincronización con una ejecución de un bloque de


funciones

Las imágenes siguientes muestran el efecto de jitter de tiempo de exploración


en el valor de XOUT:

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 521


Capítulo 19 Instrucciones de control de proceso

Ejemplo de XIN sin sincronización con una ejecución de un bloque de


funciones

Las imágenes siguientes muestran un ejemplo en el que un error se introduce


en el valor de XOUT de un bloque de funciones Integral:

Consulte también

Instrucciones de control de proceso en la página 499

LFL (carga LIFO) La instrucción LFL se usa para la carga de datos (8, 16, 32 y 64 bits) en una
matriz creada por el usuario denominada pila de LIFO. Las instrucciones
LFL y LFU se usan en pares.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

522 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar el valor de parámetros de estas


instrucciones.

Parámetro Tipo de parámetro Tipo de datos Descripción


Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: si se ha detectado un flanco ascendente, inicia la
operación LFL.
FALSO: no se ha detectado un flanco ascendente.
Src Entrada ANY_ELEMENTARY El operando Src es la dirección del valor para rellenar las
posiciones disponibles actualmente en la pila LIFO.
Compatibilidad con tipos de datos Elemento:
 DWORD, REAL, TIME, DWORD, REAL, TIME, DATE,
LWORD, ULINT, LINT, LREAL, BOOL, SINT, USINT, BYTE,
INT, UINT, WORD, DINT, UDINT.\
 Elemento de matriz como Array[1] o Array[Index].
 La cadena no es compatible
LIFO Entrada ANY_ELEMENTARY La dirección inicial de la pila. LIFO debe configurarse del
mismo modo para las instrucciones LFL y LFU.
Compatibilidad con tipos de datos Elemento:
 DWORD, REAL, TIME, DWORD, REAL, TIME, DATE,
LWORD, ULINT, LINT, LREAL, BOOL, SINT, USINT, BYTE,
INT, UINT, WORD, DINT, UDINT.
 Solo la dimensión única es compatible.
 La cadena no es compatible.
LIFOCon Entrada FF_LF_CON Control y configuración de LIFO. Debe configurarse la misma
configuración para las instrucciones LFL y LFU. Utilice el tipo
de datos FF_LF_CON para configurar la posición y la longitud.
Lleno Salida BOOL Indica si la pila LIFO está llena.
CIERTO: si longitud es igual a posición.
FALSO: si la posición es mayor o igual que cero y menor que la
longitud.
Vacío Salida BOOL Indica si la pila de LIFO está vacía.
CIERTO: cuando posición es igual a cero.
FALSO: cuando posición no es igual a cero.
Error Salida BOOL Indica la existencia de una condición de error.
Cierto: la operación ha detectado un error.
FALSO: la operación se ha realizado correctamente o la
instrucción no se ha ejecutado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 523


Capítulo 19 Instrucciones de control de proceso

Parámetro Tipo de parámetro Tipo de datos Descripción


ErrorID Salida USINT Un número único que identifica el error. Los errores se definen
en los códigos de error LFL.
Listo Salida BOOL Indica si la operación está completa.
CIERTO: la operación se ha realizado correctamente.
FALSO: la operación ha detectado una condición de error o la
instrucción LFL no se está ejecutando.

Ejemplo de diagrama de bloque de funciones LFL

Ejemplo de diagrama de lógica de escalera LFL

Ejemplo de texto estructurado LFL

Consulte también

Instrucciones de control de proceso en la página 499

524 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

LFU (descarga LIFO) en la página 525

LFU (descarga La instrucción LFU descarga datos (8, 18, 32, 64 bits) de una matriz creada
por el usuario denominada pila LIFO. Las instrucciones LFL y LFU se usan
LIFO) en pares.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar el valor de parámetros de estas


instrucciones.

Parámetro Tipo de parámetro Tipo de datos Descripción


Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: si se ha detectado un flanco ascendente, inicia la
operación LFL.
FALSO: no se ha detectado un flanco ascendente.
Dest Entrada ANY_ELEMENTARY Mantiene el valor ya existente en la pila LIFO.
Tipos de datos elementales compatibles con Dest:
 DWORD, REAL, TIME, DATE, LWORD, ULINT, LINT,
LREAL, BOOL, SINT, USINT, BYTE, INT, UINT, WORD,
DINT, UDINT.
 La cadena no es compatible.
 Solo admite matrices de dimensión única como Array[1] o
Array[Index].
DestOffset Entrada UINT Desplazamiento del elemento de destino.
El offset de elemento si el destino es un tipo de datos de
matriz, de lo contrario el offset debe establecerse en 0.
Para el tipo de datos de matriz, para descargar al primer
elemento, el offset debe establecerse como 0.
LIFO Entrada ANY_ELEMENTARY La dirección inicial de la pila. LIFO debe configurarse del
mismo modo para las instrucciones LFL y LFU.
Compatibilidad con tipos de datos Elemento:
 DWORD, REAL, TIME, DWORD, REAL, TIME, DATE,
LWORD, ULINT, LINT, LREAL, BOOL, SINT, USINT, BYTE,
INT, UINT, WORD, DINT, UDINT.
 Solo la dimensión única es compatible.
 La cadena no es compatible.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 525


Capítulo 19 Instrucciones de control de proceso

Parámetro Tipo de parámetro Tipo de datos Descripción


LIFOCon Entrada FF_LF_CON Control y configuración de LIFO. Debe configurarse la misma
configuración para las instrucciones LFL y LFU. Utilice el tipo
de datos FF_LF_CON para configurar la posición y la longitud.
Lleno Salida BOOL Indica si la pila LIFO está llena.
CIERTO: si longitud es igual a posición.
FALSO: si la posición es mayor o igual que cero y menor que la
longitud.
Error Salida BOOL Indica la existencia de una condición de error.
Cierto: la operación ha detectado un error.
FALSO: la operación se ha realizado correctamente o la
instrucción no se ha ejecutado.
ErrorID Salida USINT Un número único que identifica el error. Los errores se definen
en los códigos de error LFL.
Listo Salida BOOL Indica si la operación está completa.
CIERTO: la operación se ha realizado correctamente.
FALSO: la operación ha detectado una condición de error o la
instrucción LFL no se está ejecutando.

Ejemplo de diagrama de bloque de funciones LFU

Ejemplo de diagrama de lógica escalera LFU

526 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Ejemplo de texto estructurado LFU

Consulte también

Instrucciones de control de proceso en la página 499

LFL (carga LIFO) en la página 522

PWM (modulación Activa o desactiva la salida PWM ("Pulse Width Modulation" o modulación
de ancho de impulso) de un canal PWM configurado.
de ancho de pulso)
Este bloque de instrucciones se usa con los controladores Micro820
2080-LC20-20QBB y admite un canal PWM usando el canal 6 de la salida
integrada.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción solo es aplicable al controlador Micro820


2080-LC20-20QBB.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 527


Capítulo 19 Instrucciones de control de proceso

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo Descripción


parámetro de
datos
Enable Entrada BOOL Habilitar bloque de instrucción. Este nivel se dispara solo
mediante bloque de instrucción.
Cierto: Sts se actualiza. PWM se activa o se desactiva en función
del parámetro de entrada Activado y de la configuración válida..
Falso: solo se actualiza Sts. El estado de PWM (activado o
desactivado) no se ve afectado.
Activado Entrada BOOL Establece la salida de PWM como activada o desactivada.
Cierto: la salida de PWM está activa o sigue estando activa con la
última configuración válida. El LED de salida está activado
cuando PWM está activado, aunque el ciclo de función esté
establecido en 0%.
Falso: la salida de PWM está inactiva si la configuración también
es válida.
Freq Entrada UDINT Frecuencia de pulso.
 1 – 100 000 Hz
DutyCycle Entrada UINT Ciclo de servicio de pulso.
 0-1000 (0 %-100 %)
ChType Entrada UINT Tipo de canal
 0: integrado
 1: enchufable
 2: de expansión
ChSlot Entrada UINT Ranura de canal
 0: integrado
ChNum Entrada UINT Número de canal
 0: PWM CH0
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.
Sts Salida UINT Códigos de estado PWM:
 00: bloque de funciones no habilitado (sin funcionamiento)
 01: configuración correcta de PWM.
 02: ciclo de servicio no válido.
 03: frecuencia no válida.
 04: tipo de canal no válido.
 05: ranura de canal no válida.
 06: número de canal no válido.
 07: catálogo no válido. La función PWM no es compatible con
el catálogo en uso.

528 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Ejemplo de diagrama de bloque de funciones PWM

Ejemplo de diagrama de lógica de escalera PWM

Ejemplo de texto estructurado PWM

Consulte también

Instrucciones de control de proceso en la página 499

SCALER (escala Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.,

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 529


Capítulo 19 Instrucciones de control de proceso

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta la ecuación de escala.
Falso: no realiza ninguna ecuación de escala.
Solo se aplica a programas de diagrama de lógica de escalera.
Entrada Entrada REAL Señal de entrada.
InputMin Entrada REAL Determinar valor de desviación y pendiente.

InputMax Entrada REAL Determinar valor de desviación y pendiente.


OutputMin Entrada REAL Determinar valor de desviación y pendiente.
OutputMax Entrada REAL Determinar valor de desviación y pendiente.
Salida Salida REAL Valor de salida.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones SCALER

Ejemplo de diagrama de lógica de escalera SCALER

530 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Ejemplo de texto estructurado SCALER

(* Equivalencia de ST: SCALER1 es una instancia de un bloque SCALER*)

SCALER1(Signal_In, 4.0, 20.0 , 0.0 , 150.0 ) ;


Out_Temp := SCALER1.Output ;

Resultados

Consulte también

Instrucciones de control de proceso en la página 499

STACKINT (pila de Administra una pila de valores enteros.

enteros) Detalles de la operación:

 STACKINT incluye una detección de flanco ascendente para los


comandos PUSH y POP. El tamaño máximo de la pila es de 128. El
valor de OFLO solo es válido después de un restablecimiento (R1 se ha
configurado como Cierto y se ha restablecido a Falso al menos una
vez).
 El tamaño de pila N definido por la aplicación no puede ser menor que
1 ni mayor que 128.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 531


Capítulo 19 Instrucciones de control de proceso

 Si N < 1, STACKINT asume un tamaño de 1.


 Si N > 128, STACKINT asume un tamaño de 128.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
PUSH Entrada BOOL Cierto: flanco ascendente detectado, en comando PUSH.
Agrega el valor IN en la parte superior de la pila.
Falso: no se ha detectado flanco ascendente en comando
PUSH.
POP Entrada BOOL Cierto: flanco ascendente detectado, en comando PUSH.
Elimina el último valor agregado en la parte superior de la
pila.
Falso: no se ha detectado flanco ascendente en comando
POP.
R1 Entrada BOOL Cierto: restablece la pila a su estado vacío.
Falso: no se ha restablecido.
IN Entrada DINT Valor agregado.
N Entrada DINT Tamaño de la pila definido por la aplicación. El tamaño
máximo de la pila es de 128
EMPTY Salida BOOL Cierto: la pila está vacía.
Falso: la pila contiene valores.
OFLO Salida BOOL Cierto: Desbordamiento, la pila está llena y R1 se ha
configurado como Cierto al menos una vez y restablecido a
Falso.
Falso: el tamaño de pila es de 128 o menos. No hay
desbordamiento.
OUT Salida DINT Valor en la parte superior de la pila.
OUT es igual a 0 si OFLO es Cierto.

532 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Ejemplo de diagrama de bloque de funciones STACKINT

Ejemplo de diagrama de lógica de escalera STACKINT

Ejemplo de texto estructurado STACKINT

(* Equivalencia de ST: STACKINT1 es una instancia de un bloque


STACKINT*)

STACKINT1(err_detect, acknowledge, manual_mode, err_code,


max_err);
appli_alarm := auto_mode AND NOT(STACKINT1.EMPTY);
err_alarm := STACKINT1.OFLO;
last_error := STACKINT1.OUT;

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 533


Capítulo 19 Instrucciones de control de proceso

Resultados

Consulte también

Instrucciones de control de proceso en la página 499

TND (anulación de Detiene el ciclo actual de la exploración del programa de un usuario. Tras
completar la exploración de salida, la exploración de entrada y el servicio, el
programa actual) programa del usuario se vuelve a ejecutar desde el comienzo de la primera
rutina.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar función.
Si Habilitar = Cierto, se realiza la función.
Si Enable = Falso, no se realiza la función.
TND Salida BOOL Si es cierto, la función se realiza.
Si la supervisión de variables está activada, el valor de la
variable de supervisión se asigna a la salida de la instrucción.
Si la supervisión de variables está desactivada, el valor de la
variable de salida se asigna a la salida de la instrucción.

534 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Ejemplo de diagrama de bloque de funciones TND

Ejemplo de diagrama de lógica de escalera TND

Ejemplo de texto estructurado TND

(* Equivalencia de ST: *)

TESTOUTPUT := TND(TESTENABLE) ;

Resultados

Consulte también

Instrucciones de control de proceso en la página 499

LÍMITE (prueba Limita los valores de entero a un intervalo concreto. Los valores enteros
entre el mínimo y el máximo no se modifican. Los valores enteros mayores
límite) que el máximo se sustituyen por el valor máximo. Los valores enteros
menores que el mínimo se sustituyen por el valor mínimo.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 535


Capítulo 19 Instrucciones de control de proceso

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar función.
Cierto: ejecuta el cálculo LIMIT actual.
Falso: no se realiza ningún cálculo.
Se aplica a programas de diagrama de lógica de escalera.
MIN Entrada DINT Valor mínimo admitido.
IN Entrada DINT Cualquier valor de entero con signo.
MAX Entrada DINT Valor máximo admitido.
LIMIT Salida DINT Valor de entrada ligado al intervalo admitido.

ENO Salida BOOL Habilita la salida.


Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones LIMIT

Ejemplo de diagrama de lógica de escalera LIMIT

536 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de control de proceso Capítulo 19

Ejemplo de texto estructurado LIMIT

(* Equivalencia de ST: *)

new_value := LIMIT (min_value, value, max_value);

(* liga el valor al conjunto [min_value..max_value] *)

Resultados

Consulte también

Instrucciones de control de proceso en la página 499

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 537


Capítulo 19 Instrucciones de control de proceso

538 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 20

Instrucción de control de programa

Utiliza las instrucciones de control de programa para controlar


simultáneamente instrucciones de un programa de usuario y de un dispositivo
de interfaz de operador.

Instrucción Descripción

SUS en la página 539 Suspende la ejecución del <controlador M800>.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

SUS (suspensión) Suspende la ejecución del <controlador M800>. El controlador permanece


en modo de ejecución, pero la ejecución se suspende de forma indefinida. La
suspensión captura los errores y ayudas del programa de usuario en la
supervisión. Coloque la instrucción SUS en secciones de programa de
usuario en las que desee atrapar condiciones inusuales. En modo de
suspensión, RUN LED se define a OFF para indicar que la exploración del
programa está desactivada.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta la función.
Falso: no ejecuta la función.
SusID Entrada UINT ID de suspensión.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 539


Capítulo 20 Instrucción de control de programa

Parámetro Tipo de Tipo de datos Descripción


parámetro
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones SUS

Ejemplo de diagrama de lógica de escalera SUS

Ejemplo de texto estructurado SUS

Resultados

Consulte también

Instrucción de control de programa en la página 539

540 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 21

Instrucción proporcional integral


derivativa (PID)

Use las instrucciones proporcionales integrales derivativas (PID) para


controlar el proceso con mayor precisión mediante la funcionalidad de PID.

Instrucción Descripción

IPIDCONTROLLER en la página 541 Configurar y controlar las entradas y salidas utilizadas para la
lógica proporcional integral derivativa (PID).

PID en la página 567 Configurar y controlar las salidas que controlan las propiedades
físicas como la temperatura, la presión, el nivel de líquidos o el
caudal, por medio de bucles de proceso.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

¿Qué es el control El control proporcional integral derivativo (PID) permite al control del
proceso mantener el punto de ajuste con precisión ajustando las salidas del
proporcional-integr control. Los bloques de funciones PID combinan toda la lógica necesaria
al-derivativo (PID)? para llevar a cabo el control proporcional integral derivativo (PID).

Consulte también

Instrucción proporcional integral derivativa (PID) en la página 541

Operación de bloque de funciones IPIDCONTROLLER en la página


548

Usar la instrucción proporcional-integral-derivativa en la página 550

IPIDCONTROLLER Configura y controla las entradas y salidas utilizadas para la lógica


proporcional integral derivativa (PID). La lógica PID se utiliza para controlar
(proporcional - propiedades físicas, como la temperatura, presión, nivel de líquidos o caudal,
integral - derivativa usando bucles de proceso que calculan el valor de un error como la
diferencia entre un punto de ajuste deseado y una variable de proceso
- controlador) medida. El controlador intenta minimizar el error a lo largo del tiempo
mediante el ajuste de una variable de control. El cálculo incluye los términos
proporcional (P), integral (I) y derivativa (D), que se utilizan en la siguiente
forma:

-P: valores actuales del error.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 541


Capítulo 21 Instrucción proporcional integral derivativa (PID)

-I: valores anteriores del error.

-D: posibles valores futuros del error, basados en su actual tasa de cambio,
que controla propiedades físicas como la temperatura, la presión, el nivel de
líquidos o el caudal, usando bucles de proceso.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Si es Cierto, habilita el bloque de instrucción.
Cierto: ejecuta el cálculo PID.
Falso: el bloque de instrucción está inactivo.
Se aplica a programas de diagrama de lógica de escalera.
Process Entrada REAL Valor del proceso, que es el valor medido desde la salida del
proceso.
SetPoint Entrada REAL Punto de ajuste.
Retroalimentac Entrada REAL Señal de retorno, que es el valor de la variable de control
ión aplicada al proceso.
Por ejemplo, el retorno puede ser una salida IPIDCONTROLLER.

Auto Entrada BOOL El modo de funcionamiento del controlador PID:


 Cierto: el controlador se ejecuta en modo normal.
 Falso: el controlador causa el restablecimiento de R a la vía
(F-GE).
Initialize Entrada BOOL Un cambio en el valor (Cierto a Falso o Falso a Cierto) hace que
el control elimine cualquier ganancia proporcional durante ese
ciclo. Además inicializa las secuencias AutoTune.
Gains Entrada GAIN_PID Gana PID para IPIDController.
Utilice el tipo de datos GAIN_PID para definir los parámetros de
la entrada Gains.

542 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Parámetro Tipo de Tipo de datos Descripción


parámetro
AutoTune Entrada BOOL Cierto: cuando AutoTune es Cierto y Auto e Initialize son Falso,
se inicia la secuencia AutoTune.
Falso: no inicia AutoTune.
ATParameters Entrada AT_Param Parámetros Auto Tune.
Utilice el tipo de datos AT_Param para definir los parámetros de
la entrada ATParameters.
Salida Salida REAL Valor de salida del controlador.
AbsoluteError Salida REAL Error absoluto (Process - SetPoint) del controlador.

ATWarnings Salida DINT (ATWarning) Advertencia de la secuencia de puesta a punto


automática. Los valores posibles son:
 0: modo de puesta a punto automática sin habilitar.
 1: modo de puesta a punto automática habilitado.
 2: puesta a punto automática completada.
 -1: ERROR 1, entrada configurada automáticamente como
Cierto; la puesta a punto automática no se puede realizar.
 –2: ERROR 2, error de puesta a punto automática; ATDynaSet
caducado.
OutGains Salida GAIN_PID Ganancias calculadas tras secuencias de autoajuste.
Utilice el tipo de datos GAIN_PID para definir la salida OutGains.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

IPIDCONTROLLER Function Block Diagram examples

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 543


Capítulo 21 Instrucción proporcional integral derivativa (PID)

IPIDCONTROLLER Ladder Diagram example

IPIDCONTROLLER Structured Text example

(* Equivalencia de ST: IPIDController1 es una instancia de un bloque


IPIDController*)

IPIDController1(Proc,
SP,
FBK,
Auto,
Init,
G_In,
A_Tune,
A_TunePar,
Err );
Out_process := IPIDController1.Output ;
A_Tune_Warn := IPIDController1.ATWarning ;
A_Tune_Warn := IPIDController1.ATWarning ;

544 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Resultados

Consulte también

Tipos de datos AT_Param en la página 546

Tipos de datos GAIN_PID en la página 545

Operación de bloque de funciones IPIDCONTROLLER en la página


548

Usar la instrucción proporcional-integral-derivativa en la página 550

¿Qué es el control proporcional-integral-derivativo (PID)? en la página


541

Tipos de datos En la tabla siguiente se describe el tipo de datos GAIN_PID de la instrucción


IPIDCONTROLLER.
GAIN_PID
Parámetro Tipo de Descripción
datos
DirectActing BOOL Tipo de accionamiento:
 Cierto: accionamiento directo, la salida se mueve en la misma dirección que el error. Es
decir, el valor del proceso actual es superior al de SetPoint y la acción del controlador
correspondiente es aumentar la salida. Por ejemplo: Chilling.
 Falso:: accionamiento inverso, la salida se mueve en dirección opuesta al error. Es decir,
el valor del proceso actual es superior al de SetPoint y la acción del controlador
correspondiente es reducir la salida. Por ejemplo: Heating.

ProportionalGain REAL Ganancia proporcional para PID (>= 0,0001).


Cuando ProportionalGain es (< 0,0001) entonces ProportionalGain = 0,0001
Ganancia proporcional para PID (P_Gain)
Una ganancia proporcional superior provoca un cambio mayor en la salida según la
diferencia entre el PV (valor del proceso medido) y el SV (valor de punto de ajuste). Cuanto
mayor sea la ganancia, más rápidamente se reduce el error, pero se podría generar
inestabilidad en forma de oscilaciones. Cuanto menor sea la ganancia, más lentamente se
reduce el error, pero el sistema es más estable y menos sensible a grandes errores.
P_Gain es normalmente la ganancia de mayor importancia y la primera que hay que
establecer durante el ajuste automático.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 545


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Parámetro Tipo de Descripción


datos
DirectActing BOOL Tipo de accionamiento:
 Cierto: accionamiento directo, la salida se mueve en la misma dirección que el error. Es
decir, el valor del proceso actual es superior al de SetPoint y la acción del controlador
correspondiente es aumentar la salida. Por ejemplo: Chilling.
 Falso:: accionamiento inverso, la salida se mueve en dirección opuesta al error. Es decir,
el valor del proceso actual es superior al de SetPoint y la acción del controlador
correspondiente es reducir la salida. Por ejemplo: Heating.

TimeIntegral REAL Valor integral de tiempo de PID (>= 0,0001).


Cuando TimeIntegral es (< 0,0001) entonces TimeIntegral = 0,0001
Valor integral de tiempo de PID.
Una constante de tiempo integral menor provoca un cambio más rápido en la salida según
la diferencia entre el PV (valor del proceso medido) y el SV (valor de punto de ajuste)
integrado en este momento. Una constante de tiempo integral menor reduce el error de
estado de constante (error cuando no se ha cambiado SV) pero las probabilidades de que
aparezca inestabilidad en forma de oscilaciones aumentan. Una constante integral de
tiempo mayor reduce la respuesta del sistema y lo vuelve más estable, pero el PV se
acerca al SV a una velocidad más lenta.
TimeDerivative REAL Valor derivativo de tiempo de PID (> 0,0).
Cuando TimeDerivative es (<= 0,0) entonces TimeDerivative = 0,0
Cuando TimeDerivative = 0, IPID actúa como PI.
Valor derivativo de tiempo de PID (Td)
Una constante de tiempo derivativo menor provoca un cambio más rapido en la salida
según la velocidad de cambio de la diferencia entre el PV (valor del proceso medido) y SV
(valor de punto de ajuste). Una constante de tiempo derivativo menor hace que el sistema
sea más sensible a cambios repentinos que causen error (se cambia SV) pero aumenta las
probabilidades de inestabilidad como oscilaciones. Una constante de tiempo mayor hace
que un sistema sea menos sensible a cambios repentinos que causen error y menos
susceptible al ruido y a los cambios de paso en PV. TimeDerivative (Td) está relacionado
con la ganancia derivativa, pero permite que la contribución derivativa de PID se ajuste
utilizando el tiempo, de forma que el tiempo de muestra se debe tener en cuenta.
DerivativeGain REAL Ganancia derivativa de PID (> 0,0).
Cuando DerivativeGain es (< 0,0) entonces DerivativeGain = 0,1
Ganancia derivativa de PID (D_Gain)
Una ganancia derivativa superior provoca un cambio mayor en la salida según la velocidad
de cambio de la diferencia entre el PV (valor del proceso medido) y el SV (valor de punto de
ajuste). Una ganancia derivativa superior hace que el sistema sea más sensible a cambios
repentinos que causen error pero las probabilidades de que aparezca inestabilidad en
forma de oscilaciones aumentan. Una ganancia inferior hace que el sistema sea menos
sensible a cambios repentinos que causen error y menos susceptible al ruido y a los
cambios de paso en PV.

Consulte también

IPIDCONTROLLER en la página 541

Tipos de datos En la tabla siguiente se describen los parámetros del tipo de datos
AT_Param.
AT_Param
Parámetro Tipo de Descripción
datos
Load REAL Carga el parámetro de puesta a punto automática. Es el valor de salida al
iniciar AutoTune.

546 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Parámetro Tipo de Descripción


datos
Deviation REAL Desviación de la puesta a punto automática. Es la desviación estándar
utilizada para evaluar la banda de ruido necesaria para AutoTune.
Paso REAL Valor de paso de puesta a punto automática. Debe ser superior a la banda
de ruido y menor que la mitad de la carga.
ATDynamSet REAL Tiempo de espera en segundos antes de salir de la puesta a punto
automática.
ATReset BOOL La indicación de si el valor de salida se restablece a cero después de una
secuencia de AutoTune:
 Cierto: restablece la salida en cero.
 Falso: deja la salida en el valor de carga.

Consulte también

IPIDCONTROLLER en la página 541

Crear un bucle de retorno para el valor manipulado en la página 561

Cómo implementa el El bloque de funciones IPIDController, disponible en el conjunto de


instrucciones de Connected Components Workbench, se basa en la teoría del
bloque de funciones control PID y combina toda la lógica necesaria para llevar a cabo el control
IPIDController el proporcional integral derivativo (PID) y el procesamiento de canales de
control PID entrada analógica. En HMI, la placa frontal de IPID está disponible para su
uso con el bloque de función IPIDController.

Descripción del bloque de funciones IPIDController

El bloque de funciones IPIDController utiliza los siguientes componentes de


bloque de funciones:

 A: Accionamiento (+/- 1)
 PG: Ganancia proporcional
 DG: Ganancia derivada
 td: ãD
 ti: ãI

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 547


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Impedir la finalización integral

Si la diferencia entre el valor de punto de ajuste y el valor de proceso es


amplia, el valor de salida se incrementa de manera significativa y, durante el
tiempo que tarde en disminuir, el proceso no está bajo control. El bloque de
funciones IPIDController realiza un seguimiento del retorno de forma
interactiva e impide la finalización integral. Cuando se satura la salida, el
término integral en el controlador se vuelve a calcular para que su nuevo
valor proporcione una salida en el límite de saturación.

Consulte también

Instrucción proporcional integral derivativa (PID) en la página 541

Operación de bloque de funciones IPIDCONTROLLER en la página


548

Usar la instrucción proporcional-integral-derivativa en la página 550

Operación de bloque Si Entrada Auto es Cierto, IPIDController se ejecuta en modo automático


normal.
de funciones
IPIDCONTROLLER

548 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Si Entrada Auto es Falso, causa el restablecimiento de R a la vía (F-GE), lo


que fuerza a la salida de IPIDController a realizar un seguimiento del retorno
dentro de los límites de IPIDController, momento en el cual el controlador
regresa al modo automático sin aumentar la salida.

En la entrada Initialize, si cambia de Falso a Cierto o de Cierto a Falso, si


AutoTune es Falso, el IPIDController eliminará cualquier acción de ganancia
proporcional durante ese ciclo (por ejemplo, Initialize). Utilice este proceso
para evitar golpear la salida si se realizan cambios en SetPoint utilizando un
bloque de función de interruptor.

Para ejecutar una secuencia de AutoTune:

Para ejecutar una secuencia de AutoTune, se debe completar la entrada


ATParameters. La entrada Gain y los parámetros DirectActing se deben
definir de acuerdo con el proceso y el ajuste DerivativeGain, (normalmente
0,1). La secuencia AutoTune se inicia con la siguiente secuencia:

1. Defina la entrada Initialize en Cierto.

2. Defina la entrada Autotune en Cierto.

3. Cambie la entrada Initialize a Falso.

4. Espere a que la salida ATWarning cambie a 2.

5. Transfiera los valores de salida OutGains a entrada Gains.

Para finalizar la puesta a punto, pueden ser necesarios algunos ajustes,


dependiendo de los procesos y necesidades. Si define TimeDerivative a 0,0,
IPIDController fuerza a DerivativeGain a 1,0 y, a continuación, funciona
como un controlador de PI.

Consulte también

Instrucción proporcional integral derivativa (PID) en la página 541

Qué es la instrucción proporcional integral derivativa en la página 541

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 549


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Cómo implementa el bloque de funciones IPIDController el control


PID en la página 547

Operación de bloque de funciones IPIDCONTROLLER en la página


548

Usar la instrucción proporcional-integral-derivativa en la página 550

Usar la instrucción En esta sección se proporcionan ejemplos y detalles específicos sobre el uso
de la instrucción proporcional integral derivativa, incluidos los siguientes:
proporcional-integral-d
erivativa Ejemplo: Cómo crear un bucle de retorno para el valor manipulado

La adición de un bucle de retorno para el valor manipulado evita que se


excedan los límites al proporcionar un valor mínimo y uno máximo para el
MV.

Ejemplo de bucle de retorno de temperatura

Al comienzo del proceso de control de temperatura, la diferencia entre el


valor de proceso (PV) y el valor de punto de ajuste (SP) es amplia, como se
muestra en el siguiente gráfico. En este ejemplo de un bucle de retorno de
temperatura, el PV comienza en 0 grados Celsius y se mueve hacia el valor
de SP de 40 grados Celsius. Tenga en cuenta también que la fluctuación entre
los valores manipulados (MV) alto y bajo disminuye y se estabiliza con el
transcurso del tiempo. El comportamiento del MV depende de los valores
utilizados en cada uno de los parámetros P, I y D.

550 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

IPIDController con un bucle de retorno

El siguiente diagrama de bloque de funciones incluye un bucle de retorno


para el valor manipulado que evita que se excedan los límites al proporcionar
un valor mínimo y uno máximo para el MV.

Ejemplo: Cómo implementar el ajuste automático en un bloque de


funciones IPIDController

Utilice el parámetro AjusteAuto del bloque de funciones IPIDController para


implementar el ajuste automático en el programa de control.

Recomendaciones y requisitos de ajuste automático

A continuación, se proporciona un resumen de los requisitos y las


recomendaciones para implementar un ajuste automático correcto.

 El ajuste automático debe hacer que la salida del bucle de control


oscile, lo que significa que se debe llamar a IPIDController con la
frecuencia suficiente que permita crear una muestra de la oscilación
adecuadamente.
 El bloque de instrucciones IPIDController se debe ejecutar a un
intervalo de tiempo relativamente constante.
 Configure el tiempo de exploración del programa en la mitad del
periodo de oscilación.
 Considere utilizar un bloque de instrucciones de interrupción de texto
estructurado (STI) para controlar el bloque de instrucciones
IPIDController.

Ejemplo: Cómo agregar un UDFB a un programa PID

Agregue UDFB, aunque sin incluirlo en el programa principal, para llevar a


cabo funciones especiales, como convertir unidades o transferir valores.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 551


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Transferir el valor de ganancia de ajuste automático

Este bloque de funciones definidas por el usuario (UDFB) transfiere el valor


de ganancia de ajuste automático a My_GainTransfer para que pueda
utilizarlo el controlador.

Convertir un valor manipulado en una salida digital

Este UDFB convierte un valor manipulado (MV) en una salida digital (DO)
para utilizarla para controlar una entrada digital (DI).

Convertir un valor manipulado en una salida analógica

Este UDFB convierte un valor manipulado (MV) en una salida analógica


(AO) para utilizarla para controlar una entrada analógica (AI).

Consulte también

Usar la instrucción proporcional-integral-derivativa en la página 550

Instrucción proporcional integral derivativa (PID) en la página 541

Qué es la instrucción proporcional integral derivativa en la página 541

Operación de bloque de funciones IPIDCONTROLLER en la página


548

Usar la instrucción proporcional-integral-derivativa en la página 550

Utilizar el ajuste Utilice el parámetro AjusteAuto del bloque de funciones IPIDController para
automático con el bloque implementar el ajuste automático en el programa de control.
de funciones
IPIDController

552 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Recomendaciones y requisitos de ajuste automático

A continuación, se proporciona un resumen de los requisitos y las


recomendaciones para implementar un ajuste automático correcto.

 El ajuste automático debe hacer que la salida del bucle de control


oscile, lo que significa que se debe llamar a IPIDController con la
frecuencia suficiente que permita crear una muestra de la oscilación
adecuadamente.
 El bloque de instrucciones IPIDController se debe ejecutar a un
intervalo de tiempo relativamente constante.
 Configure el tiempo de exploración del programa en la mitad del
periodo de oscilación.
 Considere utilizar un bloque de instrucciones de interrupción de texto
estructurado (STI) para controlar el bloque de instrucciones
IPIDController.

Consulte también

Instrucción proporcional integral derivativa (PID) en la página 541

Qué es la instrucción proporcional integral derivativa en la página 541

Operación de bloque de funciones IPIDCONTROLLER en la página


548

Usar la instrucción proporcional-integral-derivativa en la página 550

Ajuste automático en Use el ajuste automático en sistemas de primer orden, que utilizan un solo
sistemas de primer y elemento, o en sistemas de segundo orden, que utilizan dos elementos
segundo orden independientes.

Los sistemas de primer orden utilizan un solo elemento de almacenamiento


de energía independiente. Entre los ejemplos se incluyen:

 Enfriamiento de un depósito de líquido, cuya unidad de


almacenamiento es la energía térmica.
 Flujo de líquido desde un depósito, cuya unidad de almacenamiento es
la energía potencial.
 Un motor con par de torsión constante que acciona un disco volante,
cuya unidad de almacenamiento es la energía cinética de rotación.
 Una red principal RC eléctrica, cuya unidad de almacenamiento es la
energía de almacenamiento de capacidad.

En un sistema de primer orden, la función se puede escribir en un formato


estándar, como f(t) = τ dy/dt + y(t)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 553


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Donde:

Variable Descripción Ejemplo: Enfriamiento de un depósito de líquido, cuyo


elemento de almacenamiento es la energía térmica
t Constante de tiempo Es igual a RC
del sistema Donde
R: resistencia térmica de las paredes del depósito
C: capacitancia térmica del líquido
f Función de fuerza Es la temperatura ambiente
y Variable de estado del Es la temperatura del líquido
sistema

Los sistemas de segundo orden utilizan dos elementos de almacenamiento de


energía independientes que intercambian energía almacenada. Entre los
ejemplos se incluyen:

 Un motor que acciona un disco volante y que se acopla a este último


por medio de un eje con rigidez torsional, cuyas unidades de
almacenamiento son la energía cinética de rotación y la energía de
muelle de torsión.
 Un circuito eléctrico compuesto por una fuente de corriente que
acciona una serie LR (inductor y resistor) con un desviador C
(condensador), cuyas unidades de almacenamiento son la energía
inductiva y la energía capacitiva.

Por lo general, los sistemas de calefacción y los accionados por motor se


pueden modelar mediante el circuito eléctrico C y la serie LR.

Consulte también

Utilizar el ajuste automático con el bloque de funciones IPIDController


en la página 552

Configurar el ajuste Utilice estos pasos generales para implementar el ajuste automático mediante
automático la función IPIDController.

N.º Paso Ejemplo


1 Restablezca el punto de
ajuste en cero.

554 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

N.º Paso Ejemplo


2 Cambie el modo
automático a Falso.

3 Establezca los parámetros


Gains.

4 Establezca los parámetros Establezca los parámetros de ajuste automático, incluidos un valor de carga
AutoTune. inicial, un cambio de paso para la salida, un tiempo estimado para completar el
proceso y el restablecimiento de este.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 555


Capítulo 21 Instrucción proporcional integral derivativa (PID)

N.º Paso Ejemplo


5 Establezca Initialize y
AutoTune en Cierto.

6 Observe los cambios de la salida en el valor de carga cuando establece AutoTune en Cierto.

7 Observe que el valor de


proceso aumenta
rápidamente hasta
aproximarse a su punto de
saturación.
8 Observe la estabilización
del valor de proceso y su
fluctuación.

9 Establezca la desviación.

556 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

N.º Paso Ejemplo


10 Establezca Initialize en
Falso.

11 El controlador comienza el
proceso de ajuste
automático. Espere a que
ATWarning sea 2.

12 Establezca AutoTune en
Falso.

13 Observe los valores


ajustados que aparecen en
OutGains.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 557


Capítulo 21 Instrucción proporcional integral derivativa (PID)

N.º Paso Ejemplo


14 Transfiera el parámetro de
OutGain a My_Gains.

15 Observe que el controlador


se actualiza con el
parámetro de ganancia
ajustado.

Consulte también

Utilizar el ajuste automático con el bloque de funciones IPIDController


en la página 552

Utilizar una interrupción de


temporización
estructurada (STI) con el
ajuste automático

558 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Las instrucciones PID funcionan aunque no se controlen mediante una


interrupción de temporización estructurada (STI), pero el uso de una aumenta
el índice de éxito del ajuste automático, ya que este funciona en un ciclo fijo.

Consulte también

Utilizar el ajuste automático con el bloque de funciones IPIDController


en la página 552

Ejemplo: IPIDController En el siguiente programa de ejemplo se muestran las variables utilizadas para
con ajuste automático configurar los parámetros de ajuste automático.

Parámetros de ajuste automático

En la siguiente tabla se describen las variables que se utilizan con cada


parámetro del ejemplo para configurar el ajuste automático.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 559


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Parámetros de entrada
Variable Parámetro Descripción
AutoMode Auto El modo de funcionamiento del controlador PID:
Cierto: el controlador se ejecuta en modo normal.
Falso: el término derivativo se omite, lo que fuerza un seguimiento
del retorno dentro de los límites del controlador por parte de la
salida del controlador y permite a este último volver al modo
automático sin aumentar la salida.
Initialize Initialize Inicializa la secuencia de ajuste automático.
Un cambio en el valor de Cierto a Falso o de Falso a Cierto hace
que el controlador elimine cualquier ganancia proporcional durante
el ciclo.
My_Gains Gains Establece las ganancias de PID de IPIDController.
My_Gains.DirectActing DirectActing Define el tipo de accionamiento de la salida.
Cierto: accionamiento directo en el que la salida se mueve en la
misma dirección que la del error. Es decir, el valor de proceso real
es superior al del punto de ajuste y la acción del controlador
correspondiente es aumentar la salida. Por ejemplo, refrigeración.
Falso: accionamiento inverso en el que la salida se mueve en
dirección opuesta a la del error. Es decir, el valor de proceso real
es superior al del punto de ajuste y la acción del controlador
correspondiente es disminuir la salida. Por ejemplo, calefacción.
My_Gains.ProportionalGain ProportionalGain Ganancia proporcional para PID (>= 0,0001).
My_Gains.TimeIntegral TimeIntegral Valor integral de tiempo de PID (>= 0,0001).
La tendencia de oscilación aumenta con una disminución de ti.
My_Gains.TimeDerivative TimeDerivative Valor derivativo de tiempo de PID (> 0,0).
La amortiguación aumenta con un incremento en el tiempo
derivativo, pero disminuye si el valor del tiempo derivativo es
demasiado grande.
My_Gains.DerivativeGain Ganancia derivativa de PID (> 0,0).
AutoTune Cuando se establece en Cierto y Auto e Initialize son Falso, la secuencia AutoTune se
inicia.
ATParameters
Load  Valor de salida inicial durante el ajuste automático.
 Permite que el valor de proceso se estabilice en la carga.
Deviation  La desviación estándar de una serie de valores de proceso estabilizados. Por
ejemplo, si el valor de proceso se estabilizó entre 31,4 y 32,0, el valor de desviación
sería (32,0-31,4)/2 = 0,3.
 Algunos valores de proceso, como la temperatura, tardan mucho tiempo en
estabilizarse.
Paso  El proceso de ajuste automático considera el modo en que reacciona el valor de
proceso a los cambios en los valores de paso y deriva los parámetros Gain.
ATDynaSet  Tiempo asignado para la finalización del ajuste automático. Debe ser mayor que el
requerido para el proceso de ajuste automático.
 Un valor común de muchos sistemas es de 600 segundos, pero algunos pueden
requerir más tiempo.
ATReset  Si es Cierto, la salida se restablecerá en 0 una vez completado el ajuste automático.
 Si es Falso, la salida permanecerá en el valor de carga una vez completado el ajuste
automático.

560 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Parámetros de entrada
Parámetros de salida
Parámetro Descripción
AbsoluteError Error absoluto (Process - SetPoint) del controlador.
ATWarning Advertencia de la secuencia de ajuste automático. Los valores posibles son:
 0: modo de puesta a punto automática sin habilitar.
 1: modo de puesta a punto automática habilitado.
 2: puesta a punto automática completada.
 -1: ERROR 1, entrada configurada automáticamente como Cierto; la puesta a punto
automática no se puede realizar.
 –2: ERROR 2, error de ajuste automático, ATDynaSet caducado.
OutGains Ganancias calculadas tras secuencias de autoajuste.

Consulte también

Usar la instrucción proporcional-integral-derivativa en la página 550

Ejemplo: Cómo crear un La adición de un bucle de retorno para el valor manipulado evita que se
bucle de retorno para el excedan los límites al proporcionar un valor mínimo y uno máximo para el
valor manipulado MV.

Ejemplo de bucle de retorno de temperatura

Al comienzo del proceso de control de temperatura, la diferencia entre el


valor de proceso (PV) y el valor de punto de ajuste (SP) es amplia, como se
muestra en el siguiente gráfico. En este ejemplo de un bucle de retorno de
temperatura, el PV comienza en 0 grados Celsius y se mueve hacia el valor
de SP de 40 grados Celsius. Tenga en cuenta también que la fluctuación entre
los valores manipulados (MV) alto y bajo disminuye y se estabiliza con el
transcurso del tiempo. El comportamiento del MV depende de los valores
utilizados en cada uno de los parámetros P, I y D.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 561


Capítulo 21 Instrucción proporcional integral derivativa (PID)

IPIDController con un bucle de retorno

El siguiente diagrama de bloque de funciones incluye un bucle de retorno


para el valor manipulado que evita que se excedan los límites al proporcionar
un valor mínimo y uno máximo para el MV.

Consulte también

Usar la instrucción proporcional-integral-derivativa en la página 550

Ejemplo: Cómo agregar un En programas PID, use bloque de funciones definidas por el usuario (UDFB)
UDFB a un programa PID fuera del programa principal para llevar a cabo funciones especiales, como
convertir unidades o transferir valores. A continuación se incluyen ejemplos
de UDFB.

Transferir el valor de ganancia de ajuste automático

Este bloque de funciones definidas por el usuario (UDFB) transfiere el valor


de ganancia de ajuste automático a My_GainTransfer para que pueda
utilizarlo el controlador.

Convertir un valor manipulado en una salida digital

Este UDFB convierte un valor manipulado (MV) en una salida digital (DO)
para utilizarla para controlar una entrada digital (DI).

562 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Convertir un valor manipulado en una salida analógica

Este UDFB convierte un valor manipulado (MV) en una salida analógica


(AO) para utilizarla para controlar una entrada analógica (AI).

Consulte también

Usar la instrucción proporcional-integral-derivativa en la página 550

Ejemplo: Cómo crear un El programa de control de temperatura mantiene la temperatura dentro de la


programa IPIDController zona de control.
para controlar la
temperatura Valores de punto de ajuste, de proceso y manipulado

En la tabla siguiente se define el uso de los valores SP, PV y MV en el


programa de control de temperatura.

Elemento Descripción
Punto de ajuste (SP) Medida de temperatura en grados Celsius que define la temperatura de la zona de control.
Valor de proceso (PV) Se debe convertir en la misma unidad que la del SP, que es una medida de grados Celsius.
Valor manipulado (MV) Se debe convertir en un valor analógico para poder utilizarlo como salida de PWM para
controlar el elemento de calefacción.

Sistema de control de temperatura

El diagrama y la tabla siguientes definen los componentes en el sistema de


control de temperatura controlados por el programa de control de
temperatura y los eventos que se producen cuando se ejecuta el programa de
control.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 563


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Secuencia de eventos del programa de control de temperatura

En la siguiente tabla se identifican los componentes del sistema de control de


temperatura y se describe la secuencia de eventos que se producen en él
cuando se ejecuta el programa de control de temperatura.

No Elemento Descripción
Salida del controlador Envía el MV a PWM (Act./Desact.).

Control de temperatura de modulación Relé de estado sólido que controla el elemento de calefacción.
de ancho de impulso (PWM)
Elemento de calefacción Aumenta la temperatura en la zona de control.

Detector de temperatura de resistencia Mide la temperatura de la zona de control y envía el PV (señal RTD) a la
(RTD) entrada del controlador.
Entrada del controlador Recibe el PV (señal RTD).

Programa PLC Convierte el PV (señal RTD) en la misma unidad que la del SP (grados
Celsius) y determina la diferencia entre el PV y el SP, así como también ajusta
el MV de acuerdo con los valores de los parámetros P, I y D.

Ejemplo: Diagrama de bloque de funciones para controlar la


temperatura

En este diagrama de bloque de funciones se muestran los bloques de


funciones definidas por el usuario y predefinidos que se utilizan en la
aplicación para controlar la temperatura en una zona de control.

Consulte también

Ejemplo: Cómo crear un programa IPIDController para controlar el


nivel de suministro de agua en la página 564

Usar la instrucción proporcional-integral-derivativa en la página 550

Ejemplo: Cómo crear un El programa de control del nivel de suministro de agua de ejemplo mantiene
programa IPIDController agua suficiente en un depósito de suministro de agua que tiene un flujo de
para controlar el nivel de salida. Una válvula solenoide controla el agua entrante y llena el depósito
suministro de agua según una tasa predefinida (el agua saliente también se controla según una

564 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

tasa predefinida).

Información del programa de ejemplo

El ejemplo del programa de nivel de suministro de agua incluye la siguiente


información.

 La secuencia de eventos que se producen en el proceso de control


 Cómo se utilizan los valores de punto de ajuste, de proceso y
manipulado en el programa de control
 Un diagrama de bloque de funciones de ejemplo que muestra
IPIDController y otros bloques de instrucciones

Valores de punto de ajuste, de proceso y manipulado

En la tabla siguiente se define cómo se utilizan los valores SP, PV y MV en


el programa de nivel de suministro de agua.

Elemento Descripción
Punto de ajuste (SP) Medida de altura que define el nivel de suministro de agua de destino.
Valor de proceso (PV) Se debe convertir 4-20 mA en la misma unidad que la del SP, que es una medida de altura.
Valor manipulado (MV) Se debe convertir en un valor analógico para poder utilizarlo como salida de la unidad para
controlar la bomba.

Sistema de nivel de suministro de agua

En el siguiente diagrama se muestran los componentes del sistema de nivel


de suministro de agua que controla el programa de nivel de suministro de
agua. En la tabla que sigue al diagrama se describen los eventos que se
producen cuando se ejecuta el programa de control.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 565


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Secuencia de eventos del sistema de nivel de suministro de agua

En la siguiente tabla se identifican los componentes del sistema de nivel de


suministro de agua y se describen, en secuencia, los eventos que se producen
en él cuando se ejecuta el programa de nivel de suministro de agua.

No Elemento Descripción
Salida del Envía el MV a la unidad PowerFlex (0-10 V).
controlador
Unidad Controla la bomba de agua (0-50 Hz).
PowerFlex
Bomba de agua Controla el nivel de agua en el depósito de suministro.

Dispositivo de Mide la altura del nivel de suministro de agua (4-20 mA) y envía el PV al controlador.
transferencia de
salida
Entrada del Recibe el PV (nivel de suministro de agua de 4-20 mA).
controlador
Programa PLC Convierte el PV en la misma unidad que la del SP (medida de altura) y determina la diferencia entre
el PV y el SP, así como también ajusta el MV de acuerdo con los valores de los parámetros P, I y D.

Ejemplo: Diagrama de bloque de funciones para controlar el nivel de


suministro de agua

En el siguiente diagrama de bloque de funciones se muestran los bloques de


funciones definidas por el usuario y predefinidos que se utilizan en el
programa para controlar el nivel de suministro de agua.

566 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Bloques de funciones y UDFB utilizados en el FBD de nivel de agua

Esta aplicación, desarrollada en el lenguaje del diagrama de bloque de


funciones (FBD), utiliza las instrucciones descritas en la siguiente tabla.

Bloque de función Descripción


Bloque de funciones Proporciona control de proceso PID.
IPIDController
UDFB PID_OutputRegulator Regula la salida de IPIDCONTROLLER dentro de un intervalo seguro para garantizar que no
se dañe el hardware utilizado en el proceso.
Código de muestra:
IF RMIN ≤ RIN ≤ RMAX, then ROUT = RIN,
IF RIN < RMIN, then ROUT = RMIN,
IF RIN > RMAX, then ROUT = RMAX
UDFB PID_Feedback Actúa como multiplexor.
Código de muestra:
IF "FB_RST" is false, FB_OUT=FB_IN;
If "FB_RST" is true, then FB_OUT=FB_PREVAL.
UDFB PID_PWM Proporciona una función PWM, que convierte un valor real en una salida Act./Desact.
relacionada con el tiempo.
UDFB SIM_WATERLVL Simula el proceso en el ejemplo de aplicación.

Consulte también

Ejemplo: Cómo crear un programa IPIDController para controlar la


temperatura en la página 563

Usar la instrucción proporcional-integral-derivativa en la página 550

PID Una instrucción de salida que controla propiedades físicas como la


temperatura, la presión, el nivel de líquidos o el caudal, usando bucles de
(proporcional-integr proceso.
al-derivativo)
Detalles de la operación:

 Si está habilitada, PID controla el proceso utilizando los parámetros de


entrada, que incluyen SP y Gains, del controlador PID.
 Transición de modo ejecutar a programa, la instrucción PID está
deshabilitada, se conservan los valores del parámetro.
 Transición de modo ejecutar a programa, la instrucción PID se
mantiene deshabilitada hasta que un usuario restablece Habilitar como
CIERTO.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 567


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Esta instrucción se aplica a los controladores Micro820, Micro830, Micro850


y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar instrucción.
CIERTO: inicia la ejecución con los parámetros de entrada actuales.
FALSO: PID no se ejecuta. Establezca CV en 0 y calcule AbsoluteError.
PV Entrada REAL Valor del proceso. Este valor normalmente se lee desde un módulo de
entrada analógica.
La unidad SI debe ser la misma que el punto de ajuste.
SP Entrada REAL El valor de punto de ajuste para el proceso.
AutoManual Entrada BOOL Selección de modo automático o manual.
CIERTO: CV está controlado por PID.
FALSO: PID se está ejecutando y CV está controlado por la entrada
CVManual.
CVManual Entrada REAL Entrada de valor de control definida para la operación de modo manual.
El intervalo válido para CVManual es:
CVMin < CVManual < CVMax
CVMin Entrada REAL Límite mínimo del valor de control.
Si CV < CVMin, entonces CV = CVMin.
Si CVMin > CVMax, se produce un error.
CVMax Entrada REAL Límite máximo del valor de control.
Si CV > CVMax, entonces CV = CVMax.
Si CVMax < CVMin, se produce un error.
Gains Entrada PID_GAINS Gains de PID para controlador.
Utilice el tipo de datos PID_GAINS para configurar el parámetro Gains.
Control Entrada BOOL Dirección de control del proceso:
CIERTO: accionamiento directo, por ejemplo, refrigeración.
FALSO: accionamiento inverso, por ejemplo, calefacción.
Activo Salida BOOL Estado del controlador PID.
CIERTO: PID está activo.
FALSO: PID se ha detenido.

568 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

CV Salida REAL El valor de salida de control.


Si se ha producido un error, CV es 0.
AbsoluteError Salida REAL Error absoluto es la diferencia entre el valor de procesamiento (PV) y el
valor de punto de ajuste (SP).
Error Salida BOOL Indica la existencia de una condición de error.
CIERTO: La operación ha detectado un error.
FALSO: la operación se ha realizado correctamente o la instrucción no se
ha ejecutado.
ErrorID Salida USINT Un número único que identifica el error. Los errores se establecen en los
códigos de estado PID.

Tipo de datos de PID_GAINS

En la tabla siguiente se describe el tipo de datos PID_GAINS para la


instrucción PID.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Kc Entrada REAL Ganancia del controlador para PID.
Proporcional e Integral dependen de esta ganancia. (>= 0,0001).
Aumentar Kc mejora el tiempo de respuesta, pero también aumenta el
rebasamiento y la oscilación de PID.
Si Kc no es válido, se produce un error.
Ti Entrada REAL Constante integral de tiempo en segundos (> = 0,0001).
Aumentar Ti disminuye el rebasamiento y la oscilación de PID.
Si Ti no es válido, se produce un error.
Td Entrada REAL Constante derivativa de tiempo en segundos (> = 0,0).
Cuando Td es igual a 0, no hay ninguna acción derivativa y PID pasa a ser un
controlador de PI.
Aumento de Td reduce el rebasamiento y elimina la oscilación del controlador PID.
Si Td no es válido, se produce un error.
FC Entrada REAL Constante de filtro (> = 0,0). El intervalo recomendado para FC es 0 a 20.
Aumentar FC suaviza la respuesta del controlador PID.
Si FC no es válido, se produce un error.

Códigos de error PID

Utilice esta tabla para determinar los códigos de error PID y las
descripciones.

Código de Descripción del error


error
0 PID funciona con normalidad.

1 Kc no es válido.

2 Ti no es válido.

3 Td no es válido.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 569


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Código de Descripción del error


error
0 PID funciona con normalidad.

1 Kc no es válido.

2 Ti no es válido.

4 FC no es válido.

5 CVMin > CVMax o CVMax < CVMin

6 CVManual < CVMin


CVManual no es válido.
7 CVManual > CVMax
CVManual no es válido.

Ejemplo de diagrama de bloque de funciones PID

570 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Ejemplo de diagrama de lógica de escalera PID

Ejemplo de texto estructurado PID

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 571


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Resultados de PID

Consulte también

Diagramas de temporización de la instrucción PID en la página 573

Máquina de estado de la instrucción PID en la página 572

Instrucciones proporcional integral derivativa (PID) en la página 541

Máquina de estado de El diagrama de estado de la máquina PID describe los estados de


procesamiento de la instrucción PID.
la instrucción PID

572 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Consulte también

Instrucción PID en la página 567

Diagramas de temporización de la instrucción PID en la página 573

Diagramas de Los siguientes ejemplos de diagrama de temporización describen escenarios


de ejecución de la instrucción PID (proporcional-integral derivativo).
temporización de la
instrucción PID Ejecución de PID correcta

Utilice esta tabla para determinar los valores de parámetros para cada ciclo
de exploración.

Ciclo de Descripción
exploración
1, 8 La condición de línea pasa a ser CIERTO cuando:
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada son válidos.
 El bit Activo es CIERTO.
 El bit Error es FALSO.
2,3,4 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada son válidos.
 Actualiza los parámetros de salida PID.
5, 9 La condición de línea pasa a ser FALSO cuando:
 El bit Habilitar es FALSO.
 Borra los parámetros de salida de PID excepto AbsoluteError.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 573


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Ciclo de Descripción
exploración
6, 7, 10, 11 No hay cambio en la condición de línea.
 El bit Habilitar es FALSO.
 Borra los parámetros de salida de PID excepto AbsoluteError.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.

Ejecución de PID con Error

Utilice esta tabla para determinar los valores de parámetros para cada ciclo
de exploración.

Ciclo de Descripción
exploración
1, 8 La condición de línea pasa a ser CIERTO cuando:
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada no son válidos.
 El bit Activo es FALSO.
 El bit Error es CIERTO. Se establece la salida ErrorID.
 La salida CV se establece en 0.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.
2,3,4 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada no son válidos.
 Actualiza los parámetros de salida PID.
5, 9 La condición de línea pasa a ser FALSO cuando:
 El bit Habilitar es FALSO.
 Borra los parámetros de salida de PID excepto AbsoluteError.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.

574 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Ciclo de Descripción
exploración
6, 7, 10, 11 No hay cambio en la condición de línea.
 El bit Habilitar es FALSO.
 Borra los parámetros de salida de PID excepto AbsoluteError.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.

Ejecución de PID con Error y ejecución correcta

Utilice esta tabla para determinar los valores de parámetros para cada ciclo
de exploración.

Ciclo de Descripción
exploración
1, 8 La condición de línea pasa a ser CIERTO cuando:
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada no son válidos.
 El bit Activo es FALSO.
 El bit Error es CIERTO. Se establece la salida ErrorID.
 La salida CV se establece en 0.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.
2 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada no son válidos.
 Actualiza los parámetros de salida PID.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 575


Capítulo 21 Instrucción proporcional integral derivativa (PID)

Ciclo de Descripción
exploración
3, 4 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada son válidos.
 El bit Activo es CIERTO.
 El bit Error es FALSO.
 Actualiza los parámetros de salida PID.
5, 9 La condición de línea pasa a ser FALSO cuando:
 El bit Habilitar es FALSO.
 Borra los parámetros de salida de PID excepto AbsoluteError.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.
6, 7, 10, 11 No hay cambio en la condición de línea.
 El bit Habilitar es FALSO.
 Borra los parámetros de salida de PID excepto AbsoluteError.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.

Ejecución de PID correcta y Error

Utilice esta tabla para determinar los valores de parámetros para cada ciclo
de exploración.

Ciclo de Descripción
exploración
1, 8 La condición de línea pasa a ser CIERTO cuando:
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada son válidos.
 El bit Activo es CIERTO.
 El bit Error es FALSO.
 Actualice los parámetros de salida de PID.

576 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucción proporcional integral derivativa (PID) Capítulo 21

Ciclo de Descripción
exploración
2 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada son válidos.
 Actualice los parámetros de salida de PID.
3, 4 No hay cambio en la condición de línea.
 El bit de entrada de Habilitar es CIERTO.
 Los parámetros de entrada no son válidos.
 El bit Error es CIERTO. Se establece la salida ErrorID.
 La salida CV se establece en 0.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.
5, 9 La condición de línea pasa a ser FALSO cuando:
 El bit Habilitar es FALSO.
 Borra los parámetros de salida de PID excepto AbsoluteError.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.
6, 7, 10, 11 No hay cambio en la condición de línea.
 El bit Habilitar es FALSO.
 Borra los parámetros de salida de PID excepto AbsoluteError.
 AbsoluteError se calcula en función de los valores de entrada PV y SP.

Consulte también

PID en la página 567

Máquina de estado de la instrucción PID en la página 572

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 577


Capítulo 21 Instrucción proporcional integral derivativa (PID)

578 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 22

Instrucciones del reloj de tiempo


real (RTC)

Use las instrucciones del reloj de tiempo real para configurar el calendario y
el reloj.

Instrucción Descripción

RTC_READ en la página Lee la información del módulo de reloj de tiempo real (RTC).
398
RTC_SET en la página 401 Establece los datos del reloj en tiempo real según la información del módulo
RTC.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

RTC_READ (leer Lee la información del módulo de reloj de tiempo real (RTC).

reloj en tiempo real) Detalles de la operación:

 Controlador Micro810 o Micro820 con RTC integrado:


 RTCBatLow siempre se define a cero (0).
 RTCEnabled siempre se define a uno (1).
 Si el RTC integrado ha perdido su carga/memoria debido a un corte de
energía:
 RTCData se define a 2000/1/1/0/0/0.
 RTCEnabled se define a uno (1).

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 579


Capítulo 22 Instrucciones del reloj de tiempo real (RTC)

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta la lectura de información de RTC.
Falso: no realiza la operación de lectura y los datos de la salida
RTC no son válidos.
RTCData Salida RTC Información de los datos RTC: aa/mm/dd, hh/mm/ss, semana.
La salida de RTCData se define utilizando el tipo de datos RTC.
RTCPresent Salida BOOL Cierto: el hardware RTC está enchufado.
Falso: el hardware RTC no está enchufado.
RTCEnabled Salida BOOL Cierto: el hardware RTC está habilitado (con temporización).
Falso: el hardware RTC no está habilitado (sin temporización).
RTCBatLow Salida BOOL Cierto: batería baja de RTC.
Falso: batería de RTC con carga.
ENO Salida BOOL Habilita la salida.
Solo se aplica a programas de diagrama de lógica de escalera.

Tipo de datos RTC

Utilice esta tabla para determinar los valores de los parámetros para el tipo de
datos RTC.

Parámetro Tipo de Descripción


datos
Año UINT El ajuste de año de RTC. Valor de 16 bits, y el rango válido es entre
2000 (1 de enero, 00:00:00) y
2098 (31 de diciembre, 23:59:59)
Mes UINT El ajuste de mes de RTC.
Día UINT El ajuste de día de RTC.
Hora UINT El ajuste de hora de RTC.
Minuto UINT El ajuste de minuto de RTC.
Segundo UINT El ajuste de segundo de RTC.
Día de la semana UINT El ajuste de día de la semana de RTC. Con RTC_SET, este parámetro se
ignora.

580 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del reloj de tiempo real (RTC) Capítulo 22

Ejemplo de diagrama de bloque de funciones de RTC_READ

Ejemplo de diagrama de lógica de escalera de RTC_READ

Ejemplo de texto estructurado de RTC_READ

Consulte también

Instrucciones de entrada/salida en la página 351

RTC_SET Establecer datos del RTC (reloj en tiempo real) según la información del
módulo RTC.
(establecer reloj en
tiempo real) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 581


Capítulo 22 Instrucciones del reloj de tiempo real (RTC)

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Enable Entrada BOOL Habilitar bloque de instrucción.
Cierto: ejecuta RTC_SET con la información de RTC de
entrada. Normalmente solo se ejecuta para 1 exploración del
programa al actualizar el RTC.
FALSO: no ejecuta RTC_SET. Se establece en FALSO para
utilizar RTC con normalidad.
RTCEnable Entrada BOOL Cierto: para habilitar RTC con los datos RTC especificados.
Falso: para deshabilitar RTC.
Los controladores Micro810 y Micro820 omiten esta entrada.
RTCData Entrada RTC Información de los datos RTC: semana en aa/mm/dd,
hh/mm/ss, tal como se define en el tipo de datos RTC.
RTCData se ignora si RTCEnable = 0.
RTCPresent Salida BOOL Cierto: el hardware RTC está enchufado.
Falso: el hardware RTC no está enchufado.
RTCEnabled Salida BOOL Cierto: el hardware RTC está habilitado (con temporización).
Falso: el hardware RTC no está habilitado (sin temporización).
RTCBatLow Salida BOOL Cierto: batería baja de RTC.
Falso: batería de RTC con carga.
Sts Salida USINT El estado de la operación de lectura.
Valores de estado (Sts) de RTC_Set:
 0x00: bloque de funciones no habilitado (sin funcionamiento).
 0x01: operación de establecimiento de RTC finalizada con
éxito.
 0x02: operación de establecimiento de RTC finalizada con
errores.

Tipo de datos RTC

Utilice esta tabla para determinar los valores de los parámetros para el tipo de
datos RTC.

582 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del reloj de tiempo real (RTC) Capítulo 22

Parámetro Tipo de Descripción


datos
Año UINT El ajuste de año de RTC. Valor de 16 bits, y el rango válido es entre
2000 (1 de enero, 00:00:00) y
2098 (31 de diciembre, 23:59:59)
Mes UINT El ajuste de mes de RTC.
Día UINT El ajuste de día de RTC.
Hora UINT El ajuste de hora de RTC.
Minuto UINT El ajuste de minuto de RTC.
Segundo UINT El ajuste de segundo de RTC.
Día de la semana UINT El ajuste de día de la semana de RTC. Con RTC_SET, este parámetro se
ignora.

Ejemplo de diagrama de bloque de funciones RTC_SET

Ejemplo de diagrama de lógica de escalera RTC_SET

Ejemplo de texto estructurado RTC_SET

Consulte también

Instrucciones de entrada/salida en la página 351

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 583


Capítulo 22 Instrucciones del reloj de tiempo real (RTC)

584 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 23

Instrucciones del socket

Usa el protocolo de sockets para comunicaciones Ethernet con dispositivos


que no admiten Modbus TCP y EtherNet/IP. Los sockets admiten cliente,
server, protocolo de Control de Transmisión (TCP) y Protocolo de
Datagramas de Usuario (UDP). Las aplicaciones habituales incluyen la
comunicación con impresoras, lectores de códigos de barras y equipos
personales.

Comportamiento de las instrucciones de socket en el modo cambio del modo


de ejecución:

 Si se realiza una operación de eliminación en una instrucción


SOCKET_OPEN, SOCKET_ACCEPT, SOCKET_READ o
SOCKET_WRITE estando en modo de cambio del modo de
ejecución, se elimina la instancia de socket.
 En el modo cambio del modo de ejecución, cualquier cambio a una
entrada de SOCKET_READ mientras se opera en estado OCUPADO
se convierte en un error y el paquete recibido se descarta. Los
parámetros de entrada de SOCKET_READ son los siguientes:
Longitud, offset, tamaño de matriz de datos, variable de matriz de
datos.
 SOCKET_READ es la única instrucción de SOCKET que admite
agregar o modificar operaciones estando en modo de cambio del modo
de ejecución.
 Si se modifican los parámetros de dirección IP de Ethernet mediante el
cambio del modo de ejecución, todas las instancias de socket creadas
se eliminarán, de forma parecida a SOCKET_DELETEALL.

Procesamiento de instrucciones y actualizaciones de salida para instrucciones


de socket:

 Asíncrona: Las instrucciones correspondientes donde todas las salidas


se actualizan de forma asíncrona con la exploración del programa de
usuario, por ejemplo, una exploración de lógica de escalera. La salida
asíncrona no se puede utilizar para la detección de un flanco
disparador. Los parámetros de salida asíncrona no están bloqueados y
se pueden actualizar después de la finalización de las instrucciones de
socket correspondientes.
 Síncrona: Las instrucciones correspondientes donde todas las
actualizaciones de la salida están sincronizadas con las exploraciones
de programas de usuario. Los parámetros de salida síncrona se

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 585


Capítulo 23 Instrucciones del socket

bloquean y no pueden modificarse tras la finalización de la instrucción


de socket correspondiente.
 Híbrido: Las instrucciones correspondientes donde algunas salidas se
actualizan en sincronización con la exploración del programa de
usuario. Las salidas restantes se actualizan de forma asíncrona con la
exploración del programa de usuario.
 Ejecución de la instrucción inmediata: La instrucción completa la
función deseada antes de ir a la siguiente instrucción.
 Ejecución de la instrucción no inmediata: La instrucción requiere
más de una exploración del programa para completar la función
deseada. Las instrucciones realizan una instantánea de los parámetros
de entrada cuando se detecta la transición de Falso > Cierto.

Utilice esta tabla para ayudar a determinar el uso de instrucciones de socket.

Instrucción Descripción Client Servid UDP UDP sin Procesamiento Actualizaci


e TCP or TCP con conexió de ón de la
conexi n abierta instrucciones salida de
ón instruccion
abierta es
SOCKET_ACCEPT Acepta una solicitud de NO SÍ NO NO No inmediata Híbrida
en la página 587 conexión TCP de un destino
remoto y devuelve una
instancia de socket que se usa
para enviar y recibir datos en la
conexión recién creada.
SOCKET_CREATE Crea una instancia del socket y SÍ SÍ SÍ SÍ Inmediata Síncrono
en la página 590 devuelve un número de
instancia que utiliza las
operaciones de sockets
subsiguientes.
SOCKET_DELETE Elimina una instancia de socket SÍ SÍ SÍ SÍ No inmediata Síncrono
en la página 596 creada. Las conexiones TCP se
cierran antes de la eliminación.
SOCKET_DELETEAL Elimina todas las instancias de SÍ SÍ SÍ SÍ No inmediata Síncrono
L en la página 598 socket creadas.
SOCKET_INFO en la Devuelve información de los SÍ SÍ SÍ SÍ Inmediata Síncrono
página 601 sockets, por ejemplo, códigos
de error y estado de ejecución.
SOCKET_OPEN en Las conexiones TCP se abren SÍ NO SÍ NO No inmediata Síncrono
la página 606 con la dirección de destino
especificada.
Las conexiones UDP asocian
una dirección IP de destino y un
número de puerto al socket
especificado.
SOCKET_READ en Lee datos en un socket. Intenta SÍ SÍ SÍ SÍ No inmediata Híbrida
la página 611 recibir el número de bytes
especificado y devuelve el
número de bytes recibidos.

586 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

SOCKET_WRITE en Envía datos en un socket. SÍ SÍ SÍ SÍ No inmediata Híbrida


la página 615 Intenta enviar el número de
bytes solicitado y devuelve el
número de bytes enviados.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

Diagramas de temporización de las instrucciones de socket en la página


627

Diagramas de transacción de las instrucciones de socket en la página


634

Diagramas de estado de máquina para TCP en la página 636

Diagramas de estado de máquina para UPD en la página 639

SOCKET_ACCEPT Solo en el caso de las conexiones de protocolo de control de transmisión


(TCP). Acepta una solicitud de conexión TCP de un destino remoto y
devuelve una Instancia de socket que se usa para enviar y recibir datos en la
conexión recién creada.

Detalles de la operación:

 Antes de ejecutar Socket_Accept, ejecute SOCKET_CREATE y


especifique un número de puerto local que permita aceptar la conexión.
 Las salidas se actualizan de forma síncrona desde la exploración del
programa.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro850 y


Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 587


Capítulo 23 Instrucciones del socket

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso: no hay ningún flanco ascendente, no se inicia ningún bloque de
instrucción.
Instancia Entrada UDINT Identifica la instancia de socket. Copia el controlador de socket
devuelto con la instrucción SOCKET_CREATE.

Tiempo de Entrada UDINT Tiempo de espera para instancias de bloque de instrucción


espera SOCKET_ACCEPT. El bloque de funciones devuelve un error si el
valor de tiempo de espera es inferior al valor mínimo.
Rango de tiempo de espera: 1.000-86.400.000 milisegundos
Establezca el tiempo de espera en 0 para usar el valor predeterminado
10.000 (10 segundos).
Listo Salida BOOL Indica si la operación está completa.
CIERTO: la operación se realizó satisfactoriamente.
FALSO: la operación está en curso o se produjo una condición de
error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Busy Salida BOOL CIERTO: la operación no está completa.
FALSO: la operación está completa.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Estado Salida SOCK_STATU El estado se define utilizando el tipo de datos SOCK_STATUS que
S contiene información de ErrorID, SubErrorID y StatusBits.
La salida se actualiza de forma síncrona desde la exploración del
programa.
AcceptInst Salida UDINT Contiene la instancia Aceptar para esta instancia de socket. Utilice el
número único de instancia Aceptar con los siguientes SOCKET_READ
y SOCKET_WRITE para esta conexión.
La salida se actualiza de forma síncrona desde la exploración del
programa.
DirecAceptar Salida SOCKADDR_ Estructura de datos que contiene la dirección Aceptar para este socket.
CFG Para obtener más información, consulte el tipo de datos
SOCKADDR_CFG.
Para especificar una dirección IP de 192.168.2.100 y un puerto =
12000:
 DirecAceptar.DirecIP [0]=192
 DirecAceptar.DirecIP [1]=168
 DirecAceptar.DirecIP [2]=2
 DirecAceptar.DirecIP [3]=100
 DirecAceptar.Puerto = 12000
La salida se actualiza de forma síncrona desde la exploración del
programa.

588 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Ejemplo de diagrama de bloque de funciones de SOCKET_ACCEPT

Ejemplo de diagrama de lógica de escalera de SOCKET_ACCEPT

Ejemplo de texto estructurado de SOCKET_ACCEPT

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 589


Capítulo 23 Instrucciones del socket

Resultados

Servidor TCP

Consulte también

Instrucciones del socket en la página 585

Tipo de datos SOCK_STATUS en la página 620

Bits de estado de instrucciones de socket en la página 626

Códigos de error de socket en la página 620

Tipo de datos SOCKADDR_CFG en la página 620

SOCKET_CREATE Crea una instancia del socket y devuelve un número de instancia que se
utiliza como entrada en todas las operaciones de socket subsiguientes.

Detalles de la operación:

 Las instrucciones de socket admiten la comunicación Dúplex completo


con dispositivos remotos.
 Las conexiones del protocolo de datagramas de usuario (UDP) admiten
un máximo de ocho paquetes de datagramas UDP en cola. La cola
contiene los paquetes más recientes.
 Los controladores Micro820 y Micro850 en revisión 9 o superior
admiten hasta ocho ocurrencias de socket. Las ocurrencias de socket
admiten sockets UDP y TCP:

590 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

 En el caso de las conexiones de protocolo de control de


transmisión (TCP), utilice las ocho ocurrencias.
 Para escuchar conexiones TCP entrantes, utilice las ocho
ocurrencias y, a continuación, acepte ocho conexiones de otros
dispositivos.
 Efectúe tanto operaciones de cliente como de servidor TCP.
 Efectúe tanto operaciones TCP como UDP.
 Para aceptar conexiones TCP entrantes en el mismo puerto, cree una
nueva ocurrencia de socket.
 Pérdida de conexión TCP:
 El programa de aplicación del usuario debe detectar la pérdida de
conexiones TCP y gestionar el evento. Según la aplicación del
usuario, considere la posibilidad de hacer fallar el controlador.
 Error del controlador.
 Intente restablecer la conexión.
 Para restablecer la comunicación con el otro dispositivo:
 Borre la ocurrencia de socket de la última conexión.
 Si la conexión se establece con el lado cliente TCP, cree una
nueva ocurrencia de socket mediante el uso de
SOCKET_CREATE y ejecute SOCKET_OPEN en el dispositivo
objetivo.
 Si la conexión se establece con el lado servidor TCP, cree una
nueva ocurrencia de socket mediante el uso de
SOCKET_CREATE y ejecute SOCKET_ACCEPT para esperar otra
conexión desde el dispositivo remoto.
 Mensajes de la aplicación para conexiones TCP:
 Una conexión TCP es una secuencia de bytes entre dos
aplicaciones. El protocolo de aplicación determina los
formatos del mensaje.
 Los mensajes pueden ser de tamaño fijo o variable.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 591


Capítulo 23 Instrucciones del socket

Esta instrucción se aplica a los controladores Micro820, Micro850 y


Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso - no se ha detectado un flanco ascendente.
Tipo Entrada USINT Especifique el tipo de socket:
 Protocolo de control de transmisión (TCP)
 Protocolo de datagramas de usuario (UDP)

592 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Parámetro Tipo de Tipo de datos Descripción


parámetro
DirecSocket Entrada SOCKADDR_CF Especifique la configuración de dirección del socket.
G El módulo de EtherNet/IP para seleccionar el número de puerto local,
establezca SockAddr en 0.
Especifique el número de puerto local donde una aplicación esté
escuchando y recibiendo. O bien:
 Todos los elementos de matriz deben ser cero
 En el caso de las operaciones de cliente TCP, especifique 0 a
menos que desee usar un número de puerto local concreto.
 Para establecer comunicación con el servidor TCP, especifique un
número de puerto que permita aceptar solicitudes de conexión
entrantes.
 En el caso del protocolo UDP, especifique un número de puerto
local que permita recibir datagramas en un puerto concreto.
Rango de puerto local: De 1 a 65535.
Se produce un error si el controlador Micro820 o Micro850 ya está
utilizando el número de puerto local especificado.
El controlador utiliza los números de puerto siguientes:
Puertos TCP:
 EtherNet/IP: 44818
 ModbusTCP: 502
 Servidor DHCP: 67
 Cliente DHCP: 68
Puertos UDP:
 EtherNet/IP: 2222
 Servidor DHCP: 67
 Cliente DHCP: 68
Consulte Tipos de datos SOCKADDR_CFG.
Tiempo de Entrada UDINT Especifique el tiempo de espera para inactividad de socket.
espera Si una ocurrencia de socket no recibe solicitudes en el tiempo de
espera por inactividad especificado, la ocurrencia de socket se borra.
Si se envía una solicitud después de haber borrado una ocurrencia
de socket, se produce un error de ocurrencia de socket no
compatible.
El bloque de instrucción muestra un error cuando el valor de tiempo
de espera es inferior al valor mínimo.
Establezca el tiempo de espera de modo que sea más prolongado
que el intervalo más largo que transcurra entre operaciones de
socket. Si el tiempo de espera por inactividad es demasiado corto, es
posible que las ocurrencias de socket experimenten un tiempo de
espera. Rango de tiempo de espera: 1000 - 86.400.000 milisegundos
Establezca el Tiempo de espera en 0 si desea utilizar el valor
predeterminado 300.000 (5 minutos).
Listo Salida BOOL Indica si la operación está completa.
CIERTO: la operación se realizó satisfactoriamente.
FALSO: la operación está en curso o se produjo una condición de
error.
Busy Salida BOOL CIERTO: la operación está incompleta.
FALSO: la operación está completa.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 593


Capítulo 23 Instrucciones del socket

Parámetro Tipo de Tipo de datos Descripción


parámetro
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
Estado Salida SOCK_STATUS El estado se define utilizando el tipo de datos SOCK_STATUS que
contiene información de ErrorID, SubErrorID y StatusBits.
Consulte el tipo de datos de SOCK_STATUS, los bits de estado de
instrucción de socket y los códigos de error de socket.
Instancia Salida UDINT Contiene controlador de socket.
Utilice el parámetro de ocurrencia para las instrucciones de socket
posteriores.

Ejemplo de diagrama de bloque de funciones SOCKET_CREATE

Ejemplo de diagrama de lógica de escalera SOCKET_CREATE

Ejemplo de texto estructurado SOCKET_CREATE

594 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Resultados

Ejemplo de cliente TCP

Ejemplo de servidor TCP

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 595


Capítulo 23 Instrucciones del socket

Ejemplo de UDP

Consulte también

Códigos de error de socket en la página 620

Instrucciones del socket en la página 585

Tipo de datos SOCK_STATUS en la página 620

Bits de estado de instrucciones de socket en la página 626

Tipo de datos SOCKADDR_CFG en la página 620

SOCKET_DELETE Elimina una instancia de socket creada. En el caso de las conexiones de


protocolo de control de transmisión (TCP), SOCKET_DELETE también
cierra (Cierre pasivo) la conexión antes de borrar la ocurrencia. Las salidas se
actualizan de forma síncrona desde la exploración del programa.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro850 y


Micro870.

596 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de Descripción


parámetro datos
Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso - no se ha detectado un flanco ascendente.
Instancia Entrada UDINT Copie el Controlador de socket devuelto a partir de una instrucción
SOCKET_CREATE o SOCKET_ACCEPT para borrar el socket
respectivo.
 En el caso de los tipos de socket UDP y cliente TCP, copie el
Controlador de socket devuelto a partir de una instrucción
SOCKET_CREATE .
 En el caso del tipo de socket Servidor TCP, copie el Controlador de
socket devuelto a partir de una instrucción SOCKET_ACCEPT.
Listo Salida BOOL Indica si la operación está completa.
CIERTO: la operación se realizó satisfactoriamente.
FALSO: la operación está en curso o se produjo una condición de error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Busy Salida BOOL CIERTO: la operación no está completa.
FALSO: la operación está completa.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Estado Salida SOCK_STA El estado se define utilizando el tipo de datos SOCK_STATUS que
TUS contiene información de ErrorID, SubErrorID y StatusBits.
La salida se actualiza de forma síncrona desde la exploración del
programa.

Ejemplo de diagrama de bloque de funciones SOCKET_DELETE

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 597


Capítulo 23 Instrucciones del socket

Ejemplo de diagrama de lógica de escalera SOCKET_DELETE

Ejemplo de texto estructurado SOCKET_DELETE

Resultados

Consulte también

Instrucciones del socket en la página 585

Bits de estado de instrucciones de socket en la página 626

Tipo de datos SOCK_STATUS en la página 620

Códigos de error de socket en la página 620

SOCKET_DELETEA Elimina todas las instancias de socket creadas.

LL Detalles de la operación:

598 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

 Si el cable Ethernet no está conectado al controlador o si cambia la


dirección IP del controlador, puede ejecutar SOCKET_DELETEALL
para eliminar todas las ocurrencias de sockets creadas anteriormente.
 Las salidas se actualizan de forma síncrona desde la exploración del
programa.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro850 y


Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso - no se ha detectado un flanco ascendente.
Listo Salida BOOL Indica si la operación está completa.
CIERTO: la operación se realizó satisfactoriamente.
FALSO: la operación está en curso o se produjo una condición de
error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Busy Salida BOOL CIERTO: la operación no está completa.
FALSO: la operación está completa.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Error Salida BOOL Este campo se establece en Cierto cuando la ejecución del bloque de
funciones detecta una condición de error. Para obtener más
información, consulte Códigos de error de socket.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Estado Salida SOCK_STATU El estado se define utilizando el tipo de datos SOCK_STATUS que
S contiene información de ErrorID, SubErrorID y StatusBits.
La salida se actualiza de forma síncrona desde la exploración del
programa.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 599


Capítulo 23 Instrucciones del socket

Ejemplo de diagrama de bloque de funciones SOCKET_DELETEALL

Ejemplo de diagrama de lógica de escalera SOCKET_DELETEALL

Ejemplo de texto estructurado SOCKET_DELETEALL

Resultados

Consulte también

Instrucciones del socket en la página 585

Tipo de datos SOCK_STATUS en la página 620

600 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Bits de estado de instrucciones de socket en la página 626

Códigos de error de socket en la página 620

SOCKET_INFO Devuelve información de una ocurrencia de socket tal como códigos de error
y estados de ejecución. Las salidas se actualizan de forma síncrona desde la
exploración del programa.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro850 y


Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso - no se ha detectado un flanco ascendente.
Instancia Entrada UDINT Copie el Controlador de socket devuelto a partir de una instrucción
SOCKET_CREATE o SOCKET_ACCEPT para borrar el socket
respectivo.
 En el caso de los tipos de socket UDP y cliente TCP, copie el
Controlador de socket devuelto a partir de una instrucción
SOCKET_CREATE .
 En el caso del tipo de socket Servidor TCP, copie el Controlador
de socket devuelto a partir de una instrucción SOCKET_ACCEPT.
Si el valor Ocurrencia es 0, devuelve un resumen de todas las
ocurrencias de socket.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 601


Capítulo 23 Instrucciones del socket

Parámetro Tipo de Tipo de datos Descripción


parámetro
BorContDiag Entrada BOOL Cierto - borre la información de contador de diagnóstico del protocolo
de control de transmisión (TCP) o del protocolo de datagramas de
usuario (UDP).
Falso - no se borra la información del contador TCP o UDP.
Por ejemplo, el valor OtraInfo de TCP y UDP, Índice de matriz 1 a 6.
Si el valor Ocurrencia es 0, borre el valor OtraInfo, Índice de matriz 7
a 14.
Listo Salida BOOL Indica si la operación está completa.
CIERTO: la operación se realizó satisfactoriamente.
FALSO: la operación está en curso o se produjo una condición de
error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Busy Salida BOOL CIERTO: la operación no está completa.
FALSO: la operación está completa.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Estado Salida SOCK_STATUS El estado se define utilizando el tipo de datos SOCK_STATUS que
contiene información de ErrorID, SubErrorID y StatusBits.
La salida se actualiza de forma síncrona desde la exploración del
programa.
TipoDeSock Salida USINT Tipo de ocurrencia de socket:
et  0: no utilizado
 1: TCP
 2: UDP
Si el valor Ocurrencia de Socket_Info es 0, TipoDeSocket se
muestra como 0.
TipoDeSecu Salida USINT Tipo de secuencia de socket:
encia  0: ninguno
 1: servidor TCP
 2: cliente TCP
Si el valor Ocurrencia de Socket_Info es 0, TipoDeSecuencia se
muestra como 0.
CantTransE Salida USINT Número de mensajes de Trans que hay actualmente en la cola.
nCola Si el valor Ocurrencia de Socket_Info es 0, CantTransEnCola se
muestra como 0.
CantRecepE Salida USINT Número de mensajes de Recep que hay actualmente en la cola.
nCola Si el valor Ocurrencia de Socket_Info es 0, CantRecepEnCola se
muestra como 0.
EstadoDeSo Salida USINT Información de estado de la instrucción de socket. Para obtener más
cket información, consulte Máquina de estado de socket.
Si el valor Ocurrencia de Socket_Info es 0, EstadoDeSocket se
muestra como 0.
LocalAddr Salida SOCKETADDR_C Dirección local para el socket. Para obtener más información,
FG consulte el tipo de datos SOCKADDR_CFG.

602 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Parámetro Tipo de Tipo de datos Descripción


parámetro
Si el valor de Ocurrencia de Socket_Info es 0, DirecLocal se
muestra como 0.
DirecRemot Salida SOCKETADDR_C Dirección remota para el socket. Para obtener más información,
a FG consulte el tipo de datos SOCKADDR_CFG.
El valor DirecRemota se muestra como 0 en los casos siguientes:
 El valor Ocurrencia de Socket_Info es 0
 Conexiones del protocolo de datagramas de usuario (UDP) sin
SOCKET_OPEN
 UDP con SOCKET_OPEN y FiltroDeTrans deshabilitado.
OtraInfo UDINT[1..15] Ocurrencia de socket configurada como TCP; la descripción del
Índice de matriz es la siguiente:
 1 - Paquete enviado: número total de paquetes TCP enviados a un
socket.
 2 - Bytes enviados: número total de bytes TCP enviados a un
socket.
 3 - Paquete recibido: número total de paquetes TCP recibidos en
un socket.
 4 - Bytes recibidos: número total de bytes TCP recibidos en un
socket.
 5 - Paquetes retransmitidos: número total de retransmisiones de
paquetes TCP.
 6 - Errores de suma de comprobación: número total de paquetes
TCP con errores de comprobación que hay en un socket.
 7 - Estado TCP: estado actual de un socket.
 (de 8 a 11): OtraInfo no es compatible con TCP; se muestra como
0.
 12, 13, 14, 15: se muestra como 0.

Ocurrencia de socket configurada como UDP; la descripción de


Índice de matriz es la siguiente:
 1 - Paquete enviado: número total de paquetes UDP enviados a un
socket.
 2 - Bytes enviados: número total de bytes UDP enviados a un
socket.
 3 - Paquete recibido: número total de paquetes UDP recibidos en
un socket.
 4 - Bytes recibidos: número total de bytes UDP recibidos en un
socket.
 5 - Paquetes eliminados: número total de paquetes UDP recibidos
en un socket y eliminados por superar el límite de tamaño de cola
máximo de 8.
 6 - Errores de suma de comprobación: número total de paquetes
UDP con errores de comprobación que hay en un socket.
 De 7 a 15: se muestran como 0.
Ocurrencia de socket configurada como 0; la descripción de Índice
de matriz es la siguiente:
 1 - Recuento de ocurrencias de socket disponibles. Máximo
número de sockets admitido.
 2 - Recuento de ocurrencias de socket disponibles. Número de
sockets creados satisfactoriamente.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 603


Capítulo 23 Instrucciones del socket

Parámetro Tipo de Tipo de datos Descripción


parámetro
 3 - Número de ocurrencias de socket creadas como TCP.
 4 - Número de ocurrencias de socket creadas como cliente TCP.
 5 - Número de ocurrencias de socket creadas como servidor TCP.
 6 - Número de ocurrencias de socket creadas como UDP.
 7 - Recuento correcto de SOCKET_READ cuando el valor
Ocurrencia de socket se configura como TCP.
 8 - Recuento correcto de SOCKET_WRITE cuando el valor
Ocurrencia de socket se configura como TCP.
 9 - Recuento erróneo de SOCKET_READ cuando el valor
Ocurrencia de socket se configura como TCP.
 10 - Recuento erróneo de SOCKET_WRITE cuando el valor
Ocurrencia de socket se configura como TCP.
 11 - Recuento correcto de SOCKET_READ cuando el valor
Ocurrencia de socket se configura como UDP.
 12 - Recuento correcto de SOCKET_WRITE cuando el valor
Ocurrencia de socket se configura como UDP.
 13 - Recuento erróneo de SOCKET_READ cuando el valor
Ocurrencia de socket se configura como UDP.
 14 - Recuento erróneo de SOCKET_WRITE cuando el valor
Ocurrencia de socket se configura como UDP.
 15 - Se muestra como 0.

Ejemplo de diagrama de bloque de funciones SOCKET_INFO

604 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Ejemplo de diagrama de lógica de escalera SOCKET_INFO

Ejemplo de texto estructurado SOCKET_INFO

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 605


Capítulo 23 Instrucciones del socket

Resultados

Consulte también

Instrucciones del socket en la página 585

Bits de estado de instrucciones de socket en la página 626

Códigos de error de socket en la página 620

Tipo de datos SOCKADDR_CFG en la página 620

Tipo de datos SOCK_STATUS en la página 620

SOCKET_OPEN Abre la conexión con la dirección de destino especificada para conexiones de


protocolo de control de transmisión (TCP). En el caso de las conexiones de
protocolo de datagramas de usuario (UDP), asocia una dirección IP de
destino y un número de puerto al socket especificado.

Detalles de las operaciones:

 En el caso de las conexiones de protocolo de datagramas de usuario


(UDP) que usan SOCKET_OPEN, no requieren la dirección IP y el
número de puerto cada vez que se envían datos.
 En el caso de las conexiones UDP que no usan SOCKET_OPEN,
debe especificarse la dirección de destino cada vez que se usa
SOCKET_WRITE para enviar datos.
 Si se usa SOCKET_READ, además de recibir datos, también se
obtiene la dirección del remitente. La dirección del remitente puede
utilizarse para enviar una respuesta con SOCKET_WRITE.
 Es posible que se devuelva una operación SOCKET_OPEN antes del
período de tiempo de espera, sin que se cree una conexión de protocolo
de control de transmisión (TCP). Podría ocurrir que SOCKET_OPEN

606 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

devolviese un error antes del período de tiempo de espera, si el


dispositivo de destino se estuviera ejecutando, pero no escuchase las
conexiones en el número de puerto especificado.
 Las salidas se actualizan de forma síncrona desde la exploración del
programa.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro850 y


Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso - no se ha detectado un flanco ascendente.
Instancia Entrada UDINT Copie el Controlador de socket devuelto a partir de un bloque de
funciones SOCKET_CREATE.
Tiempo de Entrada UDINT Tiempo de espera para el bloque de funciones SOCKET_OPEN.
espera El bloque de funciones devuelve un error cuando el valor de tiempo de
espera es inferior al valor mínimo.

Rango de tiempo de espera: 1000 - 1800000 milisegundos


Establezca el Tiempo de espera en 0 si desea utilizar el valor
predeterminado 10.000 (10 segundos).

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 607


Capítulo 23 Instrucciones del socket

Parámetro Tipo de Tipo de datos Descripción


parámetro
DirecDest Entrada SOCKADDR_C Dirección de la conexión de destino.
FG Requiere conexión entre la dirección IP y el número de puerto del host
remoto.
Las direcciones IP siguientes no son compatibles para DirecDest:
 Dirección IP automática
 Dirección de bucle invertido
 0.0.0.0
 Dirección de difusión (solo compatible con TCP), direcciones de
excepción:
 Dirección de multidifusión de clase D (224.x.x.x)
 Dirección de vínculo local (169.254.x.x)
Ejemplo de dirección IP de 192.168.2.100 y puerto 12000:
 DirecciónIPDest[0]=192
 DirecciónIPDest[1]=168
 DirecciónIPDest[2]=2
 DirecciónIPDest[3]=100
 PuertoDirecciónDest = 12000
FiltroDeRece Entrada BOOL En el caso del socket UDP, cuando se usan SOCKET_OPEN y
pEnUDP Habilitar FiltroDeRecepEnUDP, para leer los datos no se necesita cada
vez un filtro de paquete para una dirección IP y un número de puerto
concretos.
 Se crea un socket UDP con Abrir. DirecDest como IP 192.168.1.157
/ puerto 161. FiltroDeRecepEnUDP habilitado: Lleve a cabo una
Socket_Read.
 Cuando el controlador recibe datos de DirecDest (192.168.1.157 /
161), Socket_Read completa la operación satisfactoriamente. Si el
controlador recibe datos desde cualquier otra IP o puerto,
socket_Read omite ese paquete y espera el paquete DirecDest.

FiltroDeRecepEnUDP deshabilitado:
 lleve a cabo una SOCKET_READ. El controlador recibe los datos
sobre la configuración del puerto UDP y SOCKET_READ completa
la operación satisfactoriamente.
 La aplicación comprueba si el paquete de entrada procede del
dispositivo previsto o no.
 La aplicación gestiona el filtrado según el parámetro de salida
DirecUDP de SOCKET_READ.
Listo Salida BOOL Indica si la operación está completa.
CIERTO: la operación se realizó satisfactoriamente.
FALSO: la operación está en curso o se produjo una condición de
error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Busy Salida BOOL CIERTO: la operación no está completa.
FALSO: la operación está completa.
La salida se actualiza de forma síncrona desde la exploración del
programa.

608 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Parámetro Tipo de Tipo de datos Descripción


parámetro
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Estado Salida SOCK_STATU El estado se define utilizando el tipo de datos SOCK_STATUS que
S contiene información de ErrorID, SubErrorID y StatusBits.
La salida se actualiza de forma síncrona desde la exploración del
programa.

Ejemplo de diagrama de bloque de funciones SOCKET_OPEN

Ejemplo de diagrama de lógica de escalera SOCKET_OPEN

Ejemplo de texto estructurado SOCKET_OPEN

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 609


Capítulo 23 Instrucciones del socket

Resultados

Ejemplo de TCP

Ejemplo de UDP

Consulte también

Instrucciones del socket en la página 585

Tipo de datos SOCKADDR_CFG en la página 620

Tipo de datos SOCK_STATUS en la página 620

610 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Bits de estado de instrucciones de socket en la página 626

Códigos de error de socket en la página 620

SOCKET_READ Lee datos en un socket y devuelve el número de bytes especificado. Para el


protocolo de control de transmisión (TCP), se devuelve la instrucción cuando
se recibe cualquier dato, hasta el número de bytes solicitado. Para el
protocolo de datagramas de usuario (UDP), se completa cuando un
datagrama está disponible.

Detalles de la operación:

El comportamiento siguiente de SOCKET_READ podría afectar a las


comunicaciones existentes, incluida la comunicación por vía distinta del
socket.

 Si la operación SOCKET_READ no se ejecuta sincronizada con el


dispositivo remoto, el controlador retiene el paquete de recepción del
dispositivo remoto hasta que se produce uno de los sucesos siguientes:
 Se ejecuta SOCKET_READ.
 Expira el tiempo de espera de socket.
 Se recibe RST desde un dispositivo remoto.
 Se ejecutan SOCKET_DELETE o SOCKET_DELETEALL.
 El usuario efectúa un Cambio de modo de ejecución que borra
todas las ocurrencias de socket creadas.
 El controlador cambia del modo de ejecución al modo de
programa, lo que borra todas las ocurrencias de socket creadas.
 El controlador cambia del modo de ejecución al modo de
programa, lo que borra la información de contador de diagnóstico
de socket y la de contador de diagnóstico de socket individual.
 Si el valor de parámetro Longitud u Offset se cambia con la operación
SOCKET_READ en curso (OCUPADO = Cierto), se produce un error
y el paquete de recepción se descarta.
 La instrucción SOCKET_READ puede devolver menos bytes que los
que se solicitaron. LongitudDeRecep contiene el número de bytes de
datos recibidos. Escriba programas para comprobar el valor
LongitudDeRecep y, a continuación, emita solicitudes de lectura
adicionales para recibir un mensaje de aplicación entero.
 En el modo cambio del modo de ejecución, cualquier cambio a una
entrada de SOCKET_READ mientras se opera en estado OCUPADO
se convierte en un error y el paquete recibido se descarta.
 Las salidas se actualizan de forma síncrona desde la exploración del
programa.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 611


Capítulo 23 Instrucciones del socket

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro820, Micro850 y


Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar instrucción.
Cierto: se detecta un flanco ascendente, se inicia la instrucción con la condición
previa de que la última operación esté completa.
Falso: no comienza la instrucción.
Instancia Entrada UDINT Copie el Controlador de socket devuelto a partir de una instrucción
SOCKET_CREATE o SOCKET_ACCEPT.
 En el caso de los tipos de socket UDP y cliente TCP, copie el Controlador de
socket devuelto a partir de una instrucción SOCKET_CREATE .
 En el caso del tipo de socket Servidor TCP, copie el Controlador de socket
devuelto a partir de una instrucción SOCKET_ACCEPT.
Tiempo de Entrada UDINT Tiempo de espera para SOCKET_READ. El bloque de instrucción muestra un
espera error si el valor de tiempo de espera es inferior al valor mínimo.
Rango de tiempo de espera: 1.000-86.400.000 milisegundos
Establezca el tiempo de espera en 0 para usar el valor predeterminado 10.000
(10 segundos).
Longitud Entrada UINT Define el número de bytes que se leerán.
Compruebe la LongitudDeRecep para conocer el número real de bytes leídos.
SOCKET_READ puede devolver menos bytes que los solicitados.
Admite hasta 256 bytes.
Offset Entrada UNIT Offset en matriz de Datos. Se empiezan a leer datos desde esta ubicación.
Datos Salida USINT[1..1] Matriz utilizada para almacenar los datos leídos desde SOCKET_READ.
 El tamaño de la matriz de datos debe ser >= (Offset + Longitud).
 La matriz de datos puede ser mayor que la Longitud leída de socket.
La salida se actualiza de forma síncrona desde la exploración del programa.
Listo Salida BOOL Indica si la operación está completa.
CIERTO: la operación se realizó satisfactoriamente.
FALSO: la operación está en curso o se produjo una condición de error.
La salida se actualiza de forma síncrona desde la exploración del programa.

612 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Parámetro Tipo de Tipo de datos Descripción


parámetro
Busy Salida BOOL CIERTO: la operación no está completa.
FALSO: la operación está completa.
La salida se actualiza de forma síncrona desde la exploración del programa.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
La salida se actualiza de forma síncrona desde la exploración del programa.
Estado Salida SOCK_STATUS El estado se define utilizando el tipo de datos SOCK_STATUS que contiene
información de ErrorID, SubErrorID y StatusBits.
La salida se actualiza de forma síncrona desde la exploración del programa.
LongitudDe Salida UNIT Contiene el número de bytes de datos recibidos.
Recep
DirecUDP Salida SOCKADDR_CF La dirección del dispositivo que envía datos por el protocolo de datagramas de
G usuario (UDP).

El ejemplo define una DirecUDP de 192.168.2.100 y puerto 12000:


UDPAddr.IPAddress[0]=192
UDPAddr.IPAddress[1]=168
UDPAddr.IPAddress[2]=2
UDPAddr.IPAddress[3]=100
UDPAddr.Port = 12000

En el caso del protocolo de control de transmisión (TCP), esta estructura no se


usa y contiene solo ceros. La conexión TCP transmite la información de
dirección remota.

Ejemplo de diagrama de bloque de funciones SOCKET_READ

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 613


Capítulo 23 Instrucciones del socket

Ejemplo de diagrama de lógica de escalera SOCKET_READ

Ejemplo de texto estructurado SOCKET_READ

Resultados

Ejemplo de TCP:

614 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Ejemplo de UDP:

Consulte también

Códigos de error de socket en la página 620

Instrucciones del socket en la página 585

Bits de estado de instrucciones de socket en la página 626

Tipo de datos SOCK_STATUS en la página 620

Tipo de datos SOCKADDR_CFG en la página 620

SOCKET_WRITE Envía datos en un socket.

Detalles de la operación:

 SOCKET_WRITE intenta enviar el número de bytes de datos


solicitado que se haya especificado en el parámetro Longitud. Cuando
finaliza la operación de envío, SOCKET_WRITE devuelve el número
de bytes de datos escrito en el parámetro LongitudDeTrans.
 La salida se actualiza de forma asíncrona desde la exploración del
programa.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 615


Capítulo 23 Instrucciones del socket

Esta instrucción se aplica a los controladores Micro820, Micro850 y


Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
Execute Entrada BOOL Habilitar bloque de instrucción.
CIERTO: se ha detectado un flanco ascendente, inicia el bloque de
instrucción con la condición previa de que la última operación esté
completa.
Falso - no se ha detectado un flanco ascendente.
Instancia Entrada UDINT Copie el controlador de sockets devuelto de una instrucción
SOCKET_CREATE o SOCKET_ACCEPT.
 En el caso de los tipos de socket UDP y cliente TCP, copie el
Controlador de socket devuelto a partir de una instrucción
SOCKET_CREATE.
 En el caso del tipo de socket servidor TCP, copie el Controlador de
socket devuelto a partir de una instrucción SOCKET_ACCEPT.
Tiempo de Entrada UDINT Tiempo de espera para ocurrencias de SOCKET_WRITE. La
espera instrucción devuelve un error si el valor de tiempo de espera es
inferior al valor mínimo.
Rango de tiempo de espera: 1000 a 1.800.000 milisegundos
Establezca el tiempo de espera en 0 para usar el valor
predeterminado 10.000 (10 segundos).
DirecUDP Entrada SOCKADDR_CF Dirección de destino UDP en la que se escriben los datos cuando no
G se ha ejecutado una instrucción SOCKET_OPEN desde que se creó
el socket. En el caso del TCP, o cuando se ha ejecutado la
instrucción SOCKET_OPEN para UDP, esta estructura no se usa y
debe contener solo ceros. La conexión TCP y la instrucción
SOCKET_OPEN para UDP transmiten toda la información de
dirección remota.
Ejemplo para dirección IP de 192.168.2.100 y puerto 12000:
UDPAddr.IPAddress[0]=192
UDPAddr.IPAddress[1]=168
UDPAddr.IPAddress[2]=2
UDPAddr.IPAddress[3]=100
UDPAddr.Port = 12000
Utilice el tipo de datos SOCKADDR_CFG para definir DirecUDP.

616 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Parámetro Tipo de Tipo de datos Descripción


parámetro
Datos Entrada USINT[1..1] Una matriz utilizada para almacenar los datos escribe en la
ocurrencia de socket respectiva mediante el uso de la instrucción
SOCKET_WRITE.
 El tamaño de la matriz de datos debe ser >= (Offset + Longitud).
 La matriz de datos puede ser mayor que la longitud de
SOCKET_WRITE.
Longitud Entrada UINT Número de bytes de datos que se escribirán:
máximo de 256 bytes.
Offset Entrada UNIT Offset en matriz de Datos. La escritura de datos a partir de la
SOCKET_WRITE comienza desde esta ubicación.
Listo Salida BOOL Indica si la operación está completa.
CIERTO: la operación se realizó satisfactoriamente.
FALSO: la operación está en curso o se produjo una condición de
error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Busy Salida BOOL CIERTO: la operación no está completa.
FALSO: la operación está completa.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Error Salida BOOL Indica que se ha producido un error.
CIERTO: se ha detectado un error.
FALSO: no hay ningún error.
La salida se actualiza de forma síncrona desde la exploración del
programa.
Estado Salida SOCK_STATUS El estado se define utilizando el tipo de datos SOCK_STATUS que
contiene información de ErrorID, SubErrorID y StatusBits.
La salida se actualiza de forma síncrona desde la exploración del
programa.
LongitudDeT Salida UNIT Número de bytes de los datos escritos.
rans

Ejemplo de diagrama de bloque de funciones SOCKET_WRITE

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 617


Capítulo 23 Instrucciones del socket

Ejemplo de diagrama de lógica de escalera SOCKET_WRITE

Ejemplo de texto estructurado SOCKET_WRITE

Resultados

Ejemplo de TCP:

618 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

UDP sin ejemplo de apertura:

UDP con ejemplo de apertura:

Consulte también

Instrucciones del socket en la página 585

Bits de estado de instrucciones de socket en la página 626

Tipo de datos SOCKADDR_CFG en la página 620

Tipo de datos SOCK_STATUS en la página 620

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 619


Capítulo 23 Instrucciones del socket

Códigos de error de socket en la página 620

Tipo de datos En la tabla siguiente se describe el tipo de datos SOCKADDR_CFG.

SOCKADDR_CFG
Parámetro Tipo de Descripción
datos
Puerto UINT Especifique un número de puerto local en el que una aplicación esté
escuchando y recibiendo.
Dirección IP[4] USINT Especifique una dirección IP.

Ejemplo de una dirección IP de 192.168.2.100:


 IPAddress[0]=192
 IPAddress[1]=168
 IPAddress[2]=2
 IPAddress[3]=100

Consulte también

Códigos de error de socket en la página 620

Tipo de datos SOCK_STATUS en la página 620

Tipo de datos En la tabla siguiente se describe el tipo de datos SOCK_STATUS.

SOCK_STATUS
Parámetro Tipo de Descripción
datos
ErrorID USINT Valor del código de error.

SubErrorID UINT Valor del subcódigo de error.

StatusBits UINT Bits de estado de ejecución para instrucciones de socket.

Consulte también

Códigos de error de socket en la página 620

Tipo de datos SOCKADDR_CFG en la página 620

Bits de estado de instrucciones de socket en la página 626

Códigos de error de La tabla siguiente describe los códigos de error de estado de instrucciones de
socket:
socket
Código Código de Descripción del error Acción correctiva
de SubErrorID
ErrorID

620 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Código Código de Descripción del error Acción correctiva


de SubErrorID
ErrorID
0 La instrucción de socket ha finalizado la operación
correctamente.
1 La instrucción de socket está pendiente.
2 La instancia de socket no está disponible. Confirme si no se ha eliminado la instancia
de socket o si se ha superado el valor de
tiempo de espera.
3 La operación SOCKET_DELETEALL está en curso. Espere a que la operación
SOCKET_DELETEALL pendiente finalice.
4 1 Parámetro incorrecto, canal no válido. Ninguna acción. Reservado para uso futuro.

4 2 Parámetro incorrecto, dirección IP de socket no Cambiar a una dirección IP válida.


válida.
 SOCKET_CREATE contiene una SockAddr con
un valor cualquiera distinto de cero.
 SOCKET_OPEN o SOCKET_WRITE se ejecutan
con una dirección IP de destino no válida.
Direcciones IP de destino no válidas son las
siguientes:
 Dirección IP automática
 0.0.0.0
 Dirección de bucle invertido (127.x.x.x)
 Dirección de multidifusión de clase D
(224.x.x.x)
 Dirección de vínculo local (169.254.x.x)
 Dirección de difusión (sólo es aplicable
para la instancia de socket TCP)
4 3 Parámetro incorrecto, dirección del puerto de socket Cambiar la dirección del puerto.
no válida.
Se produce un error si los siguientes puertos se
especifican en SOCKET_CREATE,
SOCKET_OPEN o SOCKET_WRITE:
 Puertos TCP
 44818 - EtherNet/IP
 502 -ModbusTCP
 67 - Servidor DHCP
 68 - Cliente DHCP
 0 - Puerto no válido
 Puertos UDP
 2222 – EtherNet/IP
 67 – Servidor DHCP
 68 - Cliente DHCP
 0 – Puerto no válido
4 4 Parámetro incorrecto, tipo de socket no válido. Cambiar el tipo de socket.
Tipos de socket válidos son los siguientes:
 TCP - 1
 UDP - 2

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 621


Capítulo 23 Instrucciones del socket

Código Código de Descripción del error Acción correctiva


de SubErrorID
ErrorID
4 5 Parámetro incorrecto, valor de tiempo de espera de Cambiar el valor de tiempo de espera por un
socket no válido. valor válido.
Valores válidos de tiempo de espera son los
siguientes:
 SOCKET_CREATE, SOCKET_ACCEPT y
SOCKET_READ:
 0 (predeterminado) o cualquier valor entre
1000 y 86400000 ms.
 SOCKET_OPEN y SOCKET_WRITE:
 0 (predeterminado) o cualquier valor entre
1000 y 86400000 ms.
4 6 Parámetro incorrecto, instancia de socket no válida. Utilice el número de instancia devuelto en las
 Tipo de socket de servidor TCP: instrucciones SOCKET_CREATE y
SOCKET_ACCEPT después de que la
 Utilice la instancia de socket devuelta en ejecución se haya realizado correctamente.
SOCKET_ACCEPT para
SOCKET_WRITE, SOCKET_READ,
SOCKET_DELETE y SOCKET_INFO.
 Tipos de socket UDP y de socket de cliente TCP:
 Utilice la instancia de socket devuelta en
SOCKET_CREATE para
SOCKET_OPEN, SOCKET_WRITE,
SOCKET_READ, SOCKET_DELETE y
SOCKET_INFO.
4 7 Parámetro incorrecto, longitud de matriz no válida. Aumente el tamaño de la matriz que se utiliza
para contener los datos de lectura y escritura
del socket.
4 8 Parámetro incorrecto, dimensión de la matriz no Utilice una matriz unidimensional para
válida. almacenar los datos de lectura y escritura del
socket.

5 Solicitud de socket para cancelar la operación. Reinicie la operación de socket en función


Se produce un error cuando: del tipo de socket. Consulte la máquina de
estado correspondiente para reiniciar la
 El vínculo de Ethernet está deshabilitado o el
operación de socket.
cable Ethernet se ha desconectado
 Se realiza la operación SOCKET_DELETE
cuando las operaciones SOCKET_OPEN,
SOCKET_ACCEPT, SOCKET_READ o
SOCKET_WRITE están en curso.
 Se realiza la operación de cambio de modo de
ejecución cuando las operaciones
SOCKET_OPEN, SOCKET_ACCEPT,
SOCKET_READ o SOCKET_WRITE están en
curso.
 Se ha detectado una colisión de dirección IP
cuando las operaciones SOCKET_OPEN,
SOCKET_ACCEPT, SOCKET_READ o
SOCKET_WRITE están en curso.

622 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Código Código de Descripción del error Acción correctiva


de SubErrorID
ErrorID
6 1 Secuencia de socket incorrecta, operación para Utilice la ejecución de SOCKET_OPEN única
abrir socket en curso o conectado. para la instancia de socket correspondiente.
Se produce un error cuando: No realice la operación SOCKET_ACCEPT
para la misma instancia de socket.
 SOCKET_OPEN se encuentra en curso (estado
OCUPADO) y el usuario ejecuta otra instancia de
SOCKET_OPEN con la misma instancia de
socket.
 SOCKET_OPEN se encuentra en curso (estado
OCUPADO) y el usuario ejecuta
SOCKET_ACCEPT con la misma instancia de
socket.
6 2 Secuencia de socket incorrecta, operación Aceptar Utilice la ejecución de SOCKET_ACCEPT
socket en curso o conectado. única para la instancia de socket
Se produce un error cuando: correspondiente. No realice la operación
SOCKET_OPEN para la misma instancia de
 SOCKET_ACCEPT se encuentra en curso
socket.
(estado OCUPADO) y el usuario ejecuta otra
instancia de SOCKET_ACCEPT con la misma
instancia de socket.
 SOCKET_ACCEPT se encuentra en curso
(estado OCUPADO) y el usuario ejecuta
SOCKET_OPEN con la misma instancia de
socket.
6 3 Secuencia de socket incorrecta, socket configurado
como cliente TCP.
6 4 Secuencia de socket incorrecta, socket configurado
como servidor TCP.
6 5 Secuencia de socket incorrecta, el socket está Asegúrese de que el socket no está
conectado. conectado ya con un dispositivo remoto antes
de volver a ejecutar SOCKET_OPEN o
SOCKET_ACCEPT.
6 6 Secuencia de socket incorrecta, socket configurado Asegúrese de que no se utilizan instancias
como UDP. de socket UDP con SOCKET_ACCEPT.
6 7 Secuencia de socket incorrecta, el socket no está Confirme que el socket está conectado con el
conectado. destino.
7 Tiempo de espera de instancia de socket. Configurar valores de tiempo de espera de
SOCKET_ACCEPT, SOCKET_OPEN,
SOCKET_READ y SOCKET_WRITE en
consecuencia.
8 No se inició el módulo del socket. Asegúrese de que el vínculo de Ethernet está
habilitado o que el cable Ethernet del
controlador está conectado a la red, o
resuelva el conflicto de dirección IP del
controlador.
9 1 Error grave de instrucción de socket, falta la
instancia del socket.
9 2 Error grave de instrucción de socket, instancia de
socket no válida.
9 3 Error grave de instrucción de socket, instancia de
socket de bloqueo no válida.
9 4 Error grave de instrucción de socket, tipo de socket
no válido.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 623


Capítulo 23 Instrucciones del socket

Código Código de Descripción del error Acción correctiva


de SubErrorID
ErrorID
9 5 Error grave de instrucción de socket, falta el
controlador de cancelar.
10 1 Error de procesamiento en segundo plano de
socket, la dirección está en uso.
10 2 Error de procesamiento en segundo plano de Asegúrese de que la longitud de
socket, UDP ha recibido un paquete grande y el SOCKET_READ es igual o mayor que el
paquete es mayor que la longitud de lectura del tamaño del paquete recibido. Se recomienda
socket. el tamaño máximo de lectura. El tamaño
máximo de SOCKET_READ es 256.

10 3 Error de procesamiento en segundo plano de Asegúrese de que la longitud de


socket, TCP ha recibido un paquete grande. El SOCKET_READ es igual o mayor que el
paquete recibido es mayor que la longitud de lectura tamaño del paquete recibido. Puesto que
del socket. cliente puede hacer envíos de hasta el
tamaño de la ventana de recepción de 256,
se recomienda utilizar la longitud de 256.
10 4 Error de procesamiento en segundo plano de Reinicie el cliente o el servidor TCP del
socket, RST recibido o desconecte del dispositivo controlador, tal como se muestra en el
remoto. diagrama de estado. Compruebe que el
dispositivo de destino que envió RST y
asegúrese de que el destino se reinicia con el
estado correcto.
10 5 Error de procesamiento en segundo plano de
socket, se ha recibido un paquete UDP de un
dispositivo diferente, elimine el paquete. Reservado
para uso futuro.
10 6 Error de procesamiento en segundo plano de Espere a que las colas de SOCKET_READ y
socket, la cola está llena. SOCKET_WRITE tengan disponibilidad para
Se produce un error cuando: la instancia de socket correspondiente.
 SOCKET_READ o SOCKET_WRITE ejecutan
cuatro instrucciones para la misma instancia de
socket en el mismo examen.
 Ejecute SOCKET_READ cuando cuatro
instrucciones de SOCKET_READ están en
estado OCUPADO para la misma instancia de
socket.
10 7 Error de procesamiento en segundo plano de Si el estado SOCKET_READ es OCUPADO,
socket, cambio de parámetro de SOCKET_READ no modifique los parámetros de entrada.
(longitud, offset, tamaño de la matriz de datos y
variable de matriz de datos).
11 1 Error grave de procesamiento en segundo plano de
socket, falta el puntero a datos.
11 2 Error grave de procesamiento en segundo plano de
socket, falta el puntero de la sesión.
11 3 Error grave de procesamiento en segundo plano de
socket, puntero a socket TCP o UDP no válido.
11 4 Error grave de procesamiento en segundo plano de
socket, tipo de instancia de socket no válido.
11 5 Error grave de procesamiento en segundo plano de
socket, falta instancia de socket.
11 6 Error grave de procesamiento en segundo plano de
socket, instancia de socket no válida.

624 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Código Código de Descripción del error Acción correctiva


de SubErrorID
ErrorID
11 7 Error grave de procesamiento en segundo plano de
socket, estado de socket no válido.
11 8 Error grave de procesamiento en segundo plano de
socket, tipo de socket no válido.
11 9 Error grave de procesamiento en segundo plano de
socket, error al suprimir TCP.
11 10 Error grave de procesamiento en segundo plano de
socket, error al suprimir UDP.
128 1 No hay paquetes disponibles para el mensaje de
desconexión.
128 2 No hay suficiente espacio para anteponer el
encabezado TCP.
128 3 El puntero al anexo del paquete no es válido.
128 7 Puntero a socket no válido.
128 10 Tipo de servicio, fragmento u opción de período de
vida no válidos.
128 17 Autor de llamada no válido para este servicio.
128 18 El paquete no es válido.
128 20 Este componente no se ha habilitado.
128 21 Este componente ya se ha habilitado.
128 22 La escucha no se ha habilitado para el puerto
especificado.
128 26 Se ha cancelado la suspensión solicitada.
128 33 Dirección IP de servidor no válida.
128 34 Este socket depende de otro puerto.
128 35 Puerto depende de un socket diferente.
128 36 Socket no dependiente.
128 38 El socket se independizó mientras estaba
suspendido a la espera de la recepción de un
paquete.
128 39 No se ha creado el socket.
128 51 No hay estructuras de solicitud de escucha
adicionales disponibles.
128 52 Ya hay una solicitud activa de escucha para este
puerto.
128 53 El socket no está en un estado cerrado.
128 54 El socket de servidor proporcionado no está en un
estado de escucha.
128 55 No se ha especificado ningún tiempo de espera, el
intento de conexión se encuentra en curso.
128 56 Error en la conexión.
128 57 La solicitud es mayor que el tamaño de la ventana
del receptor anunciado en bytes.
128 64 Se suspende otro subproceso. Solo se permite un
subproceso.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 625


Capítulo 23 Instrucciones del socket

Código Código de Descripción del error Acción correctiva


de SubErrorID
ErrorID
128 65 La desconexión no se pudo completar dentro del
periodo de tiempo de espera.
128 66 Socket dependiente.
128 69 Ningún puerto disponible.
128 70 Puerto no válido.
128 71 Ya hay un puntero a socket válido para este puerto
o el puerto especificado no tiene una solicitud activa
de escucha.
128 72 Igual que NX_SUCCESS, salvo que se ha
procesado una solicitud de conexión en cola
durante esta llamada.
128 73 Error de cola de transmisión TCP superada.

Consulte también

Instrucciones del socket en la página 585

Tipo de datos SOCK_STATUS en la página 620

Bits de estado de instrucciones de socket en la página 626

Bits de estado de En la tabla siguiente se describen los bits de estado de ejecución para
instrucciones de socket:
instrucciones de
socket
Número de Nombre Descripción
bits
0 EN: bit de El bit EN se establece si la instrucción se habilita debido a una
habilitación transición de Falso a Cierto, pero aún no ha finalizado o
producido un error.
1 EW: habilitar bit El bit EW se establece cuando el controlador detecta que una
de cola de solicitud de instrucción de socket ha entrado en cola.
espera El controlador restablece el bit EW cuando el bit ST se
establece.
2 ST: bit de inicio El bit ST se establece cuando la instrucción en cola se está
ejecutando.
El bit ST se restablece si se establecen los bits DN o ER.
3 ER: Bit de Error Indica que se ha producido un error durante la ejecución de la
instrucción. El bit ER se restablece la próxima vez que la
condición de ejecución cambia de Falso a Cierto.
4 DN: bit listo El bit DN se establece si la instrucción de socket se finaliza
correctamente. El bit DN se restablece la próxima vez que la
condición de ejecución cambia de Falso a Cierto.

Consulte también

Códigos de error de socket en la página 620

626 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Tipo de datos SOCKADDR_CFG en la página 620

Diagramas de Ejecución correcta de instrucciones de socket cuando el proceso es


inmediato
temporización de
las instrucciones de
socket

Condición A: Condición de línea es Cierto durante la ejecución de


instrucciones

Condición de Descripción
línea
1 La condición de línea pasa a ser Cierto cuando:
 La ejecución de instrucciones de socket está habilitada.
 Se establece el bit EN y el resto de bits se borran.
 Las instrucciones de socket finalizan la ejecución correctamente.
 Se establecen las salidas del bit DN y el bit LISTO.
2,3,4 No hay cambio en la condición de línea.
5 La condición de línea pasa a ser Falso si se borra el bit EN.
6,7 No hay cambio en la condición de línea.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 627


Capítulo 23 Instrucciones del socket

Condición B: Condición de línea es Falso durante la ejecución de


instrucciones

Condición de Descripción
línea
8 La condición de línea pasa a ser Cierto cuando:
 La ejecución de instrucciones de socket está habilitada.
 Las instrucciones de socket finalizan la ejecución correctamente.
 Se establece el bit EN y el resto de bits se borran.
 Se establecen las salidas del bit DN y el bit LISTO.

9 La condición de línea pasa a ser FALSO cuando:


 Se borra el bit EN.
10,11 No hay cambio en la condición de línea.

Ejecución correcta de instrucciones de socket cuando el proceso no es


inmediato

628 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Condición A: Condición de línea es Cierto durante la ejecución de


instrucciones

Condición de Descripción
línea
1 La condición de línea pasa a ser Cierto cuando:
 La ejecución de instrucciones de socket está habilitada.
 Se establece el bit EN y el resto de bits se borran.
 Las instrucciones de socket realizan procesamiento en segundo plano.
 Se establecen las salidas del bit EW y el bit OCUPADO.
 Parámetro de entrada de instrucciones de socket bloqueado para el
procesamiento en segundo plano.
2 Las instrucciones de socket inician la ejecución cuando:
 Se borra el bit EW.
 Se establece el bit ST.
3 Las instrucciones de socket finalizan la ejecución correctamente cuando:
 Se borran las salidas del bit ST y el bit OCUPADO.
 Se establecen las salidas del bit DN y el bit LISTO.
4 No hay cambio en la condición de línea.
5 La condición de línea pasa a ser FALSO cuando:
 Se borra el bit EN.
6,7 No hay cambio en la condición de línea.

Condición B: Condición de línea pasa a ser Falso durante la ejecución de


instrucciones

Condición de Descripción
línea
8 La condición de línea pasa a ser Cierto cuando:
 La ejecución de instrucciones de socket está habilitada.
 Se establece el bit EN y el resto de bits se borran.
 Las instrucciones de socket envían procesamiento en segundo plano.
 Se establecen las salidas del bit EW y el bit OCUPADO.
 Parámetro de entrada de instrucciones de socket bloqueado para el
procesamiento en segundo plano.
9 Las instrucciones de socket inician la ejecución cuando:
 Se borra el bit EW.
 Se establece el bit ST.
 La condición de línea pasa a ser Falso.
10 Las instrucciones de socket finalizan la ejecución correctamente cuando:
 Se borran las salidas del bit ST y el bit OCUPADO.
 Se establecen las salidas del bit DN y el bit LISTO.
 La condición de línea es Falso.
 Se borra el bit EN.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 629


Capítulo 23 Instrucciones del socket

Las instrucciones de socket producen error cuando EN es Cierto y EW y


ST son Falso

Condición A: Condición de línea es Cierto durante la ejecución de


instrucciones

Condición de Descripción
línea
1 La condición de línea pasa a ser Cierto cuando:
 La ejecución de instrucciones de socket está habilitada.
 Se establece el bit EN y el resto de bits se borran.
 Las instrucciones de socket finalizan la ejecución con errores.
 Se establecen las salidas del bit ER y el bit de error.
2,3 No hay cambio en la condición de línea.
4 La condición de línea pasa a ser FALSO cuando:
 Se borra el bit EN.
5,6 No hay cambio en la condición de línea.

630 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Condición B: Condición de línea pasa a ser Falso durante la ejecución de


instrucciones

Condición de Descripción
línea
7 La condición de línea pasa a ser Cierto cuando:
 La ejecución de instrucciones de socket está habilitada.
 Se establece el bit EN y el resto de bits se borran.
 Las instrucciones de socket finalizan la ejecución con errores.
 Se establecen las salidas del bit ER y el bit de error.
8 La condición de línea pasa a ser FALSO cuando:
 Se borra el bit EN.
9 No hay cambio en la condición de línea.

Las instrucciones de socket producirán un error si EW es Cierto y el


proceso de instrucciones no es inmediato

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 631


Capítulo 23 Instrucciones del socket

Condición A: Condición de línea es Cierto durante la ejecución de


instrucciones

Condición de Descripción
línea
1 La condición de línea pasa a ser Cierto cuando:
 La ejecución de instrucciones de socket está habilitada.
 Se establece el bit EN y el resto de bits se borran.
 Las instrucciones de socket envían procesamiento en segundo plano.
 Se establecen las salidas del bit EW y el bit OCUPADO.
 Parámetro de entrada de instrucciones de socket bloqueado para el
procesamiento en segundo plano.
2 Las instrucciones de socket finalizan la ejecución con errores cuando:
 Se borran las salidas del bit EW y el bit OCUPADO.
 Se establecen las salidas del bit ER y el bit de error.
3,4 No hay cambio en la condición de línea.
5 La condición de línea pasa a ser FALSO cuando:
 Se borra el bit EN.
6,7 No hay cambio en la condición de línea.

Condición B: Condición de línea pasa a ser Falso durante la ejecución de


instrucciones

Condición de Descripción
línea
8 La condición de línea pasa a ser Cierto cuando:
 La ejecución de instrucciones de socket está habilitada.
 Se establece el bit EN y el resto de bits se borran.
 Las instrucciones de socket envían procesamiento en segundo plano.
 Se establecen las salidas del bit EW y el bit OCUPADO.
 Parámetro de entrada de instrucciones de socket bloqueado para el
procesamiento en segundo plano.
9 Las instrucciones de socket finalizan la ejecución con errores cuando:
 Se borran las salidas del bit EW y el bit OCUPADO.
 Se establecen las salidas del bit ER y el bit de error.
 La condición de línea pasa a ser Falso.
 Se borra el bit EN.
10,11 No hay cambio en la condición de línea.

632 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Las instrucciones de socket producirán un error si ST es Cierto y el


proceso de instrucciones no es inmediato

Condición A: Condición de línea es Cierto durante la ejecución de


instrucciones

Condición de Descripción
línea
1 La condición de línea pasa a ser Cierto cuando:
 La ejecución de instrucciones de socket está habilitada.
 Se establece el bit EN y el resto de bits se borran.
 Las instrucciones de socket envían procesamiento en segundo plano.
 Se establecen las salidas del bit EW y el bit OCUPADO.
 Parámetro de entrada de instrucciones de socket bloqueado para el
procesamiento en segundo plano.
2 Las instrucciones de socket inician la ejecución cuando:
 Se borra el bit EW.
 Se establece el bit ST.
3 Las instrucciones de socket finalizan la ejecución con errores cuando:
 Se borran las salidas del bit ST y el bit OCUPADO.
 Se establecen las salidas del bit ER y el bit de error.
4 No hay cambio en la condición de línea.
5 La condición de línea pasa a ser FALSO cuando:
 Se borra el bit EN.
6,7 No hay cambio en la condición de línea.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 633


Capítulo 23 Instrucciones del socket

Condición B: Condición de línea pasa a ser Falso durante la ejecución de


instrucciones

Condición de Descripción
línea
8 La condición de línea pasa a ser Cierto cuando:
 La ejecución de instrucciones de socket está habilitada.
 Se establece el bit EN y el resto de bits se borran.
 Las instrucciones de socket envían procesamiento en segundo plano.
 Se establecen las salidas del bit EW y el bit OCUPADO.
 Parámetro de entrada de instrucciones de socket bloqueado para el
procesamiento en segundo plano.
9 Las instrucciones de socket inician la ejecución cuando:
 Se borra el bit EW y se establece el bit ST.
10 Las instrucciones de socket finalizan la ejecución con errores cuando:
 Se borran las salidas del bit ST y el bit OCUPADO.
 Se establecen las salidas del bit ER y el bit de error.
 La condición de línea pasa a ser Falso.
 Se borra el bit EN.
11 No hay cambio en la condición de línea.

Consulte también

Instrucciones del socket en la página 585

Bits de estado de instrucciones de socket en la página 626

Diagramas de En el siguiente diagrama se muestra una secuencia típica de transacciones de


la interfaz de socket con el controlador actuando como un cliente TCP.
transacción de las
instrucciones de
socket
Transacciones para
el cliente TCP

Transacciones para En el siguiente diagrama se muestra una secuencia típica de transacciones de


la interfaz de socket con el controlador como un servidor TCP.
el servidor TCP

634 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Transacciones para En el siguiente diagrama se muestra una secuencia típica de transacciones de


la interfaz de socket para comunicaciones UDP al utilizar el servicio de
UDP con conexión conexión abierta para especificar la dirección de destino.
abierta

Transacciones para En el siguiente diagrama se muestra una secuencia típica de transacciones de


la interfaz de socket para comunicaciones UDP sin utilizar el servicio de
UDP sin conexiones conexión abierta para especificar la dirección de destino. En este caso, el
abiertas controlador especifica el destino de cada datagrama y recibe la dirección del
remitente junto con cada datagrama recibido.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 635


Capítulo 23 Instrucciones del socket

Consulte también

Instrucciones del socket en la página 585

Diagramas de temporización de las instrucciones de socket en la página


627

Diagramas de Cliente TCP medianteinstrucciones de socket

estado de máquina
para TCP

636 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Servidor TCP mediante instrucciones de socket

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 637


Capítulo 23 Instrucciones del socket

Diagrama de estado de TCP

Consulte también

Instrucciones del socket en la página 585

Diagramas de temporización de las instrucciones de socket en la página


627

Diagramas de estado de máquina para UPD en la página 639

638 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones del socket Capítulo 23

Diagramas de Datagrama UDP con instrucción SOCKET_OPEN

estado de la
máquina para UDP

Datagrama UDP sin instrucción SOCKET_OPEN

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 639


Capítulo 23 Instrucciones del socket

Consulte también

Instrucciones del socket en la página 585

Diagramas de temporización de las instrucciones de socket en la página


627

Diagramas de estado de máquina para TCP en la página 636

640 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 24

Instrucciones de manipulación de
cadenas

Use las instrucciones de manipulación de cadenas para modificar una


secuencia de símbolos que se eligen a partir de un conjunto o alfabeto para
cambiar el estado de la salida. Para leer correctamente cadenas de entrada
que contienen caracteres especiales, introduzca los caracteres de la cadena
una vez que esté en línea el programa que contiene la instancia del bloque de
funciones.

Instrucción Descripción

ASCII en la página 641 Devuelve el código ASCII de los caracteres en una cadena. Carácter
-> código ASCII.
CHAR en la página 643 Devuelve una cadena de un carácter para un código ASCII. Código
ASCII -> carácter.
DELETE en la página 645 Elimina caracteres de una cadena.
FIND en la página 646 Busca y proporciona la posición de subcadenas en cadenas.
INSERT en la página 648 Inserta subcadenas en posiciones definidas por el usuario en
cadenas.
LEFT en la página 650 Extrae caracteres de la parte izquierda de una cadena de caracteres.
MID en la página 652 Extrae caracteres del centro de una cadena.
MLEN en la página 653 Calcula la longitud de una cadena.
REPLACE en la página 657 Reemplaza partes de una cadena con nuevos conjuntos de
caracteres.
RIGHT en la página 655 Extrae caracteres de la parte derecha de una cadena de caracteres.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

ASCII Devuelve el código ASCII de los caracteres en cadenas.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 641


Capítulo 24 Instrucciones de manipulación de cadenas

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: muestra el código ASCII de los caracteres.
Falso: no se visualiza nada.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada CADENA Cualquier cadena que no esté vacía.
Pos Entrada DINT Posición del carácter seleccionado en el conjunto [1.. len] (len es la
longitud de la entrada de la cadena IN).

ASCII Salida DINT Código ASCII del carácter seleccionado (en el conjunto [0 .. 255])
obtiene 0 si la posición está fuera de la cadena.

ENO Salida BOOL Habilita la salida.


Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones ASCII

Ejemplo de diagrama de lógica de escalera ASCII

Ejemplo de texto estructurado ASCII

(* Equivalencia de ST: *)

642 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de cadenas Capítulo 24

FirstChr := ASCII (message, 1);

(* FirstChr es el código ASCII del primer carácter de la cadena *)

Resultados

Consulte también

Instrucciones de manipulación de cadenas en la página 641

CHAR (código ASCII Devuelve una cadena de un carácter para un código ASCII. Código ASCII ->
carácter.
a carácter de
cadena) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: proporciona un solo carácter de cadena.
Falso: no se lleva a cabo ninguna operación.
Se aplica a programas de diagrama de lógica de
escalera.
Código Entrada DINT Código ASCII en el conjunto [0 .. 255].
CHAR Salida CADENA Cadena de un carácter.
El carácter tiene el código ASCII proporcionado en
el código de entrada.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de
escalera.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 643


Capítulo 24 Instrucciones de manipulación de cadenas

Ejemplo de diagrama de bloque de funciones CHAR

Ejemplo de diagrama de lógica de escalera CHAR

Ejemplo de texto estructurado CHAR

(* Equivalencia de ST: *)

Display := CHAR ( value + 48 );

(* el valor está en el conjunto [0..9] *)

(* 48 es el código ASCII de '0' *)

(* el resultado es una cadena de un carácter de '0' a '9' *)

Resultados

Consulte también

Instrucciones de manipulación de cadenas en la página 641

644 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de cadenas Capítulo 24

DELETE (eliminar Elimina caracteres de una cadena.

subcadena) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: elimina la parte especificada de una cadena.
Falso: no se lleva a cabo ninguna operación.
Se aplica a programas de diagrama de lógica de
escalera.
IN Entrada CADENA Cualquier cadena que no esté vacía.
NbC Entrada DINT Número de caracteres que se van a eliminar
Pos Entrada DINT Posición del primer carácter eliminado
(el primer carácter de la cadena tiene la posición 1).
DELETE Salida CADENA La salida es:
 una cadena modificada.
 una cadena vacía (si Pos < 1).
 una cadena inicial (si Pos > longitud de cadena IN).
 una cadena inicial (si NbC <= 0).
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de
escalera.

Ejemplo de diagrama de bloque de funciones DELETE

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 645


Capítulo 24 Instrucciones de manipulación de cadenas

Ejemplo de diagrama de lógica de escalera DELETE

Ejemplo de texto estructurado DELETE

(* Equivalencia de ST: *)

complete_string := INSERT (’ABCD ’, ’EFGH’, 5); (* complete_string es


'ABCDEFGH ' *)

sub_string: = DELETE (complete_string, 4, 3); (* sub_string es 'ABGH '*)

Resultados

Consulte también

Instrucciones de manipulación de cadenas en la página 641

FIND (buscar Busca y proporciona la posición de subcadenas en cadenas.

subcadena) Esta instrucción se aplica a los controladores Micro810,Micro820,


Micro830, Micro850 y Micro870.

646 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de cadenas Capítulo 24

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: busca la posición en cadenas.
Falso: no busca la operación.
Se aplica a programas de diagrama de lógica de escalera.
In Entrada CADENA Cualquier cadena que no esté vacía.
Pat Entrada CADENA Cualquier cadena no vacía (patrón).
FIND Salida DINT La salida es:
 0 si no se encuentra la subcadena Pat.
 la posición del primer carácter de la primera instancia de
la subcadena Pat (la primera posición es 1)
Esta instrucción distingue entre mayúsculas y minúsculas.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones FIND

Ejemplo de diagrama de lógica de escalera FIND

Ejemplo de texto estructurado FIND

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 647


Capítulo 24 Instrucciones de manipulación de cadenas

(* Equivalencia de ST: *)

complete_string := 'ABCD' + 'EFGH'; (* complete_string es 'ABCDEFGH '


*)

found := FIND (complete_string, 'CDEF'); (* found es 3 *)

Resultados

Consulte también

Instrucciones de manipulación de cadenas en la página 641

INSERT (insertar Inserta subcadenas en posiciones definidas por el usuario en cadenas.

cadena) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: inserta subcadenas en una cadena.
Falso: no se lleva a cabo ninguna operación.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada CADENA Cadena inicial.
Str Entrada CADENA Cadena que se insertará.
Pos Entrada DINT Posición de la inserción
la inserción se realiza antes de la posición
(la primera posición válida es 1).

648 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de cadenas Capítulo 24

Parámetro Tipo de Tipo de datos Descripción


parámetro
INSERT Salida CADENA Cadena modificada. Puede ser:
 una cadena vacía si Pos <= 0
 una concatenación de ambas cadenas si Pos es mayor que
la longitud de la cadena IN
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones INSERT

Ejemplo de diagrama de lógica de escalera INSERT

Ejemplo de texto estructurado INSERT

(* Equivalencia de ST: *)

MyName := INSERT ('Mr JONES', 'Frank ', 4);

(* MyName es 'Sr. Juan TORRES' *)

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 649


Capítulo 24 Instrucciones de manipulación de cadenas

Resultados

Consulte también

Instrucciones de manipulación de cadenas en la página 641

LEFT (extrae la Extraer caracteres de la parte izquierda de una cadena de caracteres.

parte izquierda de Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


una cadena) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: calcula el número de caracteres de la parte izquierda
de una cadena.
Falso: no se lleva a cabo ninguna operación.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada CADENA Cualquier cadena que no esté vacía.
NbC Entrada DINT Número de caracteres que se van a extraer. Este número no
puede ser mayor que la longitud de la cadena IN.
LEFT Salida CADENA Parte izquierda de la cadena (su longitud = NbC). Puede ser:
 una cadena vacía si NbC <= 0
 una cadena IN completa si NbC >= longitud de cadena IN
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

650 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de cadenas Capítulo 24

Ejemplo de diagrama de bloque de funciones LEFT

Ejemplo de diagrama de lógica de escalera LEFT

Ejemplo de texto estructurado LEFT

(* Equivalencia de ST: *)

complete_string := RIGHT ('12345678', 4), LEFT ('12345678', 4), 5;

(* complete_string es '56781234'

el valor emitido por la llamada RIGHT es '5678'

el valor obtenido de la llamada LEFT es '1234'*)

Resultados

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 651


Capítulo 24 Instrucciones de manipulación de cadenas

Consulte también

Instrucciones de manipulación de cadenas en la página 641

MID (extrae la parte Extrae caracteres del centro de una cadena. Calcula las partes necesarias de
las cadenas usando la posición y el número de caracteres proporcionados.
media de una
cadena) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica
de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: genera parte de una cadena.
Falso: no se genera ninguna operación.
Se aplica a programas de diagrama de lógica de escalera.

IN Entrada CADENA Cualquier cadena que no esté vacía.


NbC Entrada DINT El número de caracteres que se extraerán no puede ser
superior a la longitud de la cadena IN.
Pos Entrada DINT Posición de la subcadena. El primer carácter de la subcadena
será el señalado por Pos (la primera posición válida es 1).
MID Salida CADENA Parte central de la cadena (su longitud = NbC)
Si el número de caracteres que se debe extraer supera la
longitud de la cadena IN, NbC se recalcula automáticamente
para obtener el resto de la cadena únicamente. Si NbC o Pos
son cero o números negativos, se devuelve una cadena vacía.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de función MID

652 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de cadenas Capítulo 24

Ejemplo de diagrama de lógica de escalera MID

Ejemplo de texto estructurado MID

(* Equivalencia de ST: *)

sub_string := MID ('abcdefgh', 2, 4);

(* sub_string es 'de' *)

Resultados

Consulte también

Instrucciones de manipulación de cadenas en la página 641

MLEN (longitud de Calcula la longitud de una cadena.

cadena) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 653


Capítulo 24 Instrucciones de manipulación de cadenas

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: calcula la longitud de cadena.
Falso: no se lleva a cabo ninguna operación.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada CADENA Cualquier cadena
MLEN Salida DINT Número de caracteres en la cadena IN.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de función MLEN

Ejemplo de diagrama de lógica de escalera MLEN

Ejemplo de texto estructurado MLEN

(* Equivalencia de ST: *)

nbchar := MLEN (complete_string);

If (nbchar < 3) Then Return; End_if;

prefix := LEFT (complete_string, 3);

654 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de cadenas Capítulo 24

(* este programa extrae los 3 caracteres a la izquierda de la cadena y pone el


resultado en la variable de cadena de prefijo. No se realiza ninguna acción si
la longitud de la cadena es inferior a 3 caracteres *)

Resultados

Consulte también

Instrucciones de manipulación de cadenas en la página 641

RIGHT (extrae la Extraer caracteres del lado derecho de una cadena.

parte derecha de Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


una cadena) de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: obtiene el número de caracteres especificado
empezando por el extremo derecho de la cadena.
Falso: no se lleva a cabo ninguna operación.
Se aplica a programas de diagrama de lógica de escalera.

IN Entrada CADENA Cualquier cadena que no esté vacía.


NbC Entrada DINT Número de caracteres que se van a extraer. Este número no
puede ser mayor que la longitud de la cadena IN.
RIGHT Salida CADENA Parte derecha de la cadena (longitud = NbC). Puede ser:
 una cadena vacía si NbC <= 0
 una cadena completa si NbC >= longitud de la cadena

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 655


Capítulo 24 Instrucciones de manipulación de cadenas

Parámetro Tipo de Tipo de datos Descripción


parámetro
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

Ejemplo de diagrama de bloque de funciones RIGHT

Ejemplo de diagrama de lógica de escalera RIGHT

Ejemplo de texto estructurado RIGHT

(* Equivalencia de ST: *)

complete_string := RIGHT ('12345678', 4), LEFT ('12345678', 4),5;

(* complete_string es '56781234'

el valor emitido por la llamada RIGHT es '5678'

el valor emitido por la llamada LEFT es '1234'

*)

656 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de cadenas Capítulo 24

Resultados

Consulte también

Instrucciones de manipulación de cadenas en la página 641

REPLACE (replace Reemplaza partes de una cadena con nuevos conjuntos de caracteres.

sub-string) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar función.
Cierto: se reemplazan partes de cadenas con nuevos
caracteres.
Falso: no se lleva a cabo ninguna operación.
Se aplica a programas de diagrama de lógica de escalera.
IN Entrada CADENA Cualquier cadena
Str Entrada CADENA Cadena que se va a insertar (para reemplazar caracteres
NbC)
NbC Entrada DINT Número de caracteres que se van a eliminar
Pos Entrada DINT Posición del primer carácter modificado
(la primera posición válida es 1).

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 657


Capítulo 24 Instrucciones de manipulación de cadenas

Parámetro Tipo de Tipo de datos Descripción


parámetro
REPLACE Salida CADENA Cadena modificada. Los caracteres NbC se eliminan en la
posición Pos y, a continuación, la subcadena Str se inserta
en esa posición. Puede ser:
 una cadena vacía si Pos <= 0
 una concatenación de cadenas (IN+Str) si Pos es mayor
que la longitud de la cadena IN
 una cadena inicial IN si NbC <= 0
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.

REPLACE Function Block Diagram example

REPLACE Ladder Diagram example

REPLACE Structured Text example

Reemplaza una parte de una cadena con un nuevo conjunto de caracteres.

(* Equivalencia de ST: *)

MyName := REPLACE ('Sr. X TORRES, 'Juan', 1, 4);

(* MyName es 'Sr. Juan TORRES' *)

658 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de manipulación de cadenas Capítulo 24

Resultados

Consulte también

Instrucciones de manipulación de cadenas en la página 641

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 659


Capítulo 24 Instrucciones de manipulación de cadenas

660 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Capítulo 25

Instrucciones de temporizador

Use las instrucciones de temporizador para controlar operaciones basadas en


el tiempo.

Instrucción Descripción

TOF en la página 662 Retraso de desconexión. Aumenta un temporizador interno hasta un valor
concreto.
TON en la página 663 Temporizador de retraso. Aumenta un temporizador interno hasta un valor
concreto.
TONOFF en la página 665 Retrasa la activación de una salida en una línea verdadera, y retrasa la
desactivación de la salida en la línea falsa.
TP en la página 668 Temporización del pulso. En un flanco ascendente, aumenta un
temporizador interno hasta un valor concreto.
RTO en la página 670 Temporización retenida. Aumenta un temporizador interno si la entrada está
activa, pero no restablece el temporizador interno si la entrada cambia a
inactiva.
DOY en la página 672 Activa una salida si el valor del reloj de tiempo real se encuentra dentro del
intervalo del ajuste Momento del año.
TDF en la página 674 Calcula la diferencia horaria entre TimeA y TimeB.
TOW en la página 676 Activa una salida si el valor del reloj de tiempo real se encuentra dentro del
intervalo del ajuste Momento de la semana.

Consulte también

Conjunto de instrucciones en orden alfabético en la página 23

Configuración de La precisión temporal hace referencia al tiempo entre el momento en que el


procesador habilita una instrucción de temporizador y el momento en que
instrucciones de completa el intervalo temporizado.
temporizador
El procesador utiliza la siguiente información de la instrucción de
temporizador:

 Temporizador: la dirección del control del temporizador en el área de


almacenamiento de datos de este último.
 Base temporal: determina cómo funciona el temporizador.
 Preajuste: especifica el valor que debe alcanzar el temporizador para
que el procesador active el bit Done.
 Valor acumulado: el número de incrementos de tiempo que ha
contado la instrucción. Cuando se habilita esta opción, el
temporizador actualiza este valor de forma continua.
Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 661
Capítulo 25 Instrucciones de temporizador

Consulte también

Instrucciones de temporizador en la página 661

TOF (temporizador, Aumenta un temporizador interno hasta un valor concreto.

retraso de Detalles de la operación:


desactivación)
 Si se utiliza el parámetro EN con este bloque de instrucción, el
temporizador comienza a incrementarse si EN se establece en Cierto, y
continúa incrementándose aunque EN se establezca en Falso.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Control de entrada.
Cierto: se ha detectado un flanco descendente, empieza a
aumentar el temporizador interno.
Falso: se ha detectado un flanco ascendente, detiene y
restablece el temporizador interno.
PT Entrada TIME Tiempo programado máximo.
Consulte Tipo de datos de tiempo.
Q Salida BOOL Cierto: no transcurre el tiempo total.
Falso: ha transcurrido el tiempo total.
ET Salida TIME Tiempo actual transcurrido. Los valores posibles van desde 0
ms a 1193 h, 2 m, 47 s, 294 ms.

Diagrama de temporización TOF

662 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de temporizador Capítulo 25

Ejemplo de diagrama de bloque de funciones TOF

Ejemplo de diagrama de lógica de escalera TOF

Ejemplo de texto estructurado TOF

Resultados

Consulte también

Configuración de instrucciones de temporizador en la página 661

Instrucciones de temporizador en la página 661

TON (temporizador, Aumenta un temporizador interno hasta un valor concreto.

retraso de Detalles de la operación:


activación)
 No utilice un salto para omitir un bloque de instrucción TON en un

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 663


Capítulo 25 Instrucciones de temporizador

diagrama de lógica de escalera (LD). Si se utiliza un salto, el


temporizador TON continuará después de transcurrir el tiempo.
 Por ejemplo: La llamada 1 contiene un salto; la llamada 2 contiene un
bloque de instrucción TON con un tiempo transcurrido de 10 segundos;
habilite el salto de la llamada 1 a la 3; deshabilite el salto después de
30 segundos; el tiempo transcurrido será de 30 segundos; no 10
segundos, tal y como se define en el tiempo transcurrido.
 Si se utiliza el parámetro EN con TON, el temporizador comienza a
incrementarse si EN se establece en Cierto, y continúa
incrementándose aunque EN se establezca en Falso.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Control de entrada.
Cierto: si se detecta un flanco ascendente, empieza a aumentar
el temporizador interno.
Falso: si se detecta un flanco descendente, detiene y restablece
el temporizador interno.
PT Entrada TIME Tiempo programado máximo definido mediante el tipo de datos
de tiempo.
Q Salida BOOL Cierto: ha transcurrido el tiempo programado.
Falso: no ha transcurrido el tiempo programado.
ET Salida TIME Tiempo actual transcurrido. Los valores posibles van desde 0 ms
a 1193 h, 2 m, 47 s, 294 ms.

Diagrama de temporización TON

664 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de temporizador Capítulo 25

Ejemplo de diagrama de bloque de funciones TON

Ejemplo de diagrama de lógica de escalera TON

Ejemplo de texto estructurado TON

Resultados

Consulte también

Configuración de instrucciones de temporizador en la página 661

Instrucciones de temporizador en la página 661

TONOFF (tiempo de Retarda la activación de una salida en una línea cierta, y, a continuación,
retarda la desactivación de la salida en la línea falsa.
retraso, activado,
desactivado) Detalles de la operación:

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 665


Capítulo 25 Instrucciones de temporizador

 Si se utiliza el parámetro EN con TONOFF, el temporizador comienza


a incrementarse si EN se establece en Cierto, y continúa
incrementándose aunque EN se establezca en Falso.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Control de entrada.
Cierto: flanco ascendente detectado (EN pasa de 0 a 1):
 Inicia la activación de retardo del temporizador (PT).
 Si no ha transcurrido el tiempo de desactivación del retardo
programado (PTOF), reinicia el temporizador de retardo (PT).
Falso: flanco descendente detectado (EN pasa de 1 a 0):
 Si no ha transcurrido el tiempo de activación del retardo
programado (PTOF), detiene el temporizador PT y restablece
ET.
 Si se supera el tiempo de activación de retardo programado
(PT), inicia el temporizador de retardo de desactivación (PTOF).
PT Entrada TIME La configuración de tiempo de activación de retardo se define
mediante el tipo de datos de tiempo.
PTOF Entrada TIME La configuración de tiempo de desactivación de retardo se define
mediante el tipo de datos de tiempo.
Q Salida BOOL Cierto: el tiempo de retardo de conexión programado ha
transcurrido y el tiempo de retardo de desconexión programado no
ha transcurrido.
ET Salida TIME Tiempo actual transcurrido. Los valores posibles van desde 0 ms a
1193 h, 2 m, 47 s, 294 ms.
Si el tiempo de retardo de conexión programado ha transcurrido y
el temporizador de retardo de desconexión no empieza, el tiempo
transcurrido (ET) permanece en el valor de retardo de conexión
(PT). Si se supera el tiempo de retraso programado y no se inicia
el temporizador de retardo, el tiempo transcurrido (ET) permanece
dentro del valor de retardo de desconexión (PTOF) hasta que se
vuelva a activar el flanco ascendente.

666 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de temporizador Capítulo 25

Ejemplo de diagrama de bloque de funciones TONOFF

Ejemplo de diagrama de lógica de escalera TONOFF

Ejemplo de texto estructurado TONOFF

Resultados

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 667


Capítulo 25 Instrucciones de temporizador

Consulte también

Configuración de instrucciones de temporizador en la página 661

Instrucciones de temporizador en la página 661

TP (temporización En un flanco ascendente, aumenta un temporizador interno hasta un valor


concreto. Si el temporizador finaliza, se restablece la hora interna.
del pulso)
Detalles de la operación:

 Si se utiliza el parámetro EN con TP, el temporizador comienza a


incrementarse si EN se establece en Cierto, y continúa
incrementándose aunque EN se establezca en Falso.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Cierto: si se detecta un flanco ascendente, empieza a aumentar el
temporizador interno (si no está aumentando ya).
Falso: si el temporizador ha finalizado, restablece el temporizador
interno.
Cualquier cambio de IN durante el recuento no tiene efecto alguno.
PT Entrada TIME Tiempo programado máximo definido mediante el tipo de datos de
tiempo.

668 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de temporizador Capítulo 25

Parámetro Tipo de Tipo de datos Descripción


parámetro
Q Salida BOOL Cierto: el temporizador está contando.
Falso: el temporizador no está contando.
ET Salida TIME Tiempo actual transcurrido.
Los valores posibles van desde 0 ms a 1193 h, 2 m, 47 s, 294 ms.

Diagrama de temporización TP

Ejemplo de diagrama de bloque de funciones TP

Ejemplo de diagrama de lógica de escalera TP

Ejemplo de texto estructurado TP

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 669


Capítulo 25 Instrucciones de temporizador

Resultados

Consulte también

Configuración de instrucciones de temporizador en la página 661

Instrucciones de temporizador en la página 661

RTO (temporizador Aumenta un temporizador interno si la entrada está activa, pero no restablece
el temporizador interno si la entrada cambia a inactiva.
retentivo, activación
con retraso) Detalles de la operación:

 Controlador Micro810 o Micro820, el temporizador interno de RTO no


persiste en una desconexión y conexión de forma predeterminada. Para
hacer que el temporizador interno persista, establezca el parámetro de
configuración Retenido en Cierto.
 Controlador Micro830 o Micro850, el temporizador interno de RTO
persiste en una desconexión y conexión.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

670 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de temporizador Capítulo 25

Parámetro Tipo de Tipo de datos Descripción


parámetro
IN Entrada BOOL Control de entrada.
Cierto: flanco ascendente, comienza a aumentar el temporizador
interno.
Falso: flanco descendente, se detiene y no restablece el
temporizador interno.
RST Entrada BOOL Cierto: flanco ascendente, restablece el temporizador interno.
Falso: no restablece el temporizador interno.
PT Entrada TIME Tiempo de retraso programado máximo. PTO se define
utilizando el tipo de datos de tiempo.
Q Salida BOOL Cierto: ha transcurrido el tiempo de retardo programado.
Falso: no ha transcurrido el tiempo de retraso programado.
ET Salida TIME Tiempo actual transcurrido.
Los valores van desde 0 ms a 1193 h, 2 m, 47 s, 294 ms.
ET se define utilizando el tipo de datos de tiempo.

Ejemplo de diagrama de temporización de RTO

Ejemplo de diagrama de bloque de funciones RTO

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 671


Capítulo 25 Instrucciones de temporizador

Ejemplo de diagrama de lógica de escalera RTO

Ejemplo de texto estructurado RTO

Consulte también

Configuración de instrucciones de temporizador en la página 661

Instrucciones de temporizador en la página 661

DOY (comprobar Activa una salida si el valor del reloj de tiempo real (RTC) se encuentra
dentro del intervalo del ajuste Momento del año.
año del reloj de
tiempo real) Detalles de la operación:

 Si no hay un RTC, la salida siempre está desactivada.


 Configure cualquiera de los parámetros de entrada Time con intervalos
válidos, como se especifica en el tipo de datos DOYDATA. Un valor
no válido hace fallar al controlador si TimeX.Enable está establecido
en Cierto y hay un RTC habilitado.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

672 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de temporizador Capítulo 25

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Cierto: realiza la operación.
Falso: no realiza la operación.
TimeA Entrada DOYDATA Configuración de momento del año del canal A.
Utilice el tipo de datos DOYDATA para configurar TimeA.
TimeB Entrada DOYDATA Configuración de momento del año del canal B.
Utilice el tipo de datos DOYDATA para configurar TimeB.
TimeC Entrada DOYDATA Configuración de momento del año del canal C.
Utilice el tipo de datos DOYDATA para configurar TimeC.
TimeD Entrada DOYDATA Configuración de momento del año del canal D.
Utilice el tipo de datos DOYDATA para configurar TimeD.
DOY Salida BOOL Si es Cierto, el valor del reloj de tiempo real se encuentra
dentro del intervalo de la configuración de momento del año
de cualquiera de los cuatro canales.

Tipo de datos DOYDATA

En la tabla siguiente se describe el tipo de datos DOYDATA.

Parámetro Tipo de datos Descripción

Enable BOOL Cierto:Habilitado; Falso:Deshabilitado


YearlyCenturial BOOL Tipo de temporizador (0:temporizador anual; 1:temporizador secular).
YearOn UINT Valor de año activado (debe estar entre [2000...2098]).
MonthOn USINT Valor de mes activado (debe estar entre [1...12]).
DayOn USINT Valor de día activado (debe estar entre [1...31], depende del valor
"MonthOn").
YearOff UINT Valor de año desactivado (debe estar entre [2000...2098]).
MonthOff USINT Valor de mes desactivado (debe estar entre [1...12]).
DayOff USINT Valor de día desactivado (debe estar entre [1...31], depende del valor
"MonthOff").

Ejemplo de diagrama de bloque de funciones DOY

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 673


Capítulo 25 Instrucciones de temporizador

Ejemplo de diagrama de lógica de escalera DOY

Ejemplo de texto estructurado DOY

(* Equivalencia de ST: *)

TESTOUTPUT := DOY(TIMEA1, TIMEB1, TIMEC1, TIMED1) ;

Consulte también

Configuración de instrucciones de temporizador en la página 661

Instrucciones de temporizador en la página 661

TDF (diferencia Calcula la diferencia horaria entre TiempoA y TiempoB.

horaria) Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

674 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de temporizador Capítulo 25

Parámetro Tipo de Tipo de Descripción


parámetro datos
EN Entrada BOOL Habilitar instrucción.
TRUE - perform current computation.
FALSE - there is no computation.
Se aplica a programas de diagrama de lógica de escalera.
TimeA Entrada TIME La hora de inicio para cálculo de diferencia de tiempo.
TimeB Entrada TIME La hora de finalización para cálculo de diferencia de tiempo.
ENO Salida BOOL Habilita la salida.
Se aplica a programas de diagrama de lógica de escalera.
TDF Salida TIME La diferencia horaria entre las dos entradas de hora.
TDF es un nombre o ID de PIN

Ejemplo de diagrama de bloque de funciones TDF

Ejemplo de diagrama de lógica de escalera TDF

Ejemplo de texto estructurado TDF

(* Equivalencia de ST: *)

TESTTIMEDIFF := TDF(TESTTIME1, TESTTIME2) ;

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 675


Capítulo 25 Instrucciones de temporizador

Resultados

Consulte también

Configuración de instrucciones de temporizador en la página 661

Instrucciones de temporizador en la página 661

TOW (comprobar Activa una salida si el valor del reloj de tiempo real (RTC) se encuentra
dentro del intervalo del ajuste Momento de la semana.
semana del reloj de
tiempo real) Detalles de la operación:

 Si no hay un RTC, la salida siempre está desactivada.


 Configure cualquiera de los parámetros de entrada Time con intervalos
válidos, como se especifica en el tipo de datos TOWDATA. Un valor
no válido hace fallar al controlador si TimeX.Enable está establecido
en Cierto y hay un RTC habilitado.

Idiomas compatibles: Diagrama de bloques de funciones, diagrama de lógica


de escalera y texto estructurado.

Esta instrucción se aplica a los controladores Micro810,Micro820, Micro830,


Micro850 y Micro870.

Utilice esta tabla para determinar los valores de parámetros de esta


instrucción.

676 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de temporizador Capítulo 25

Parámetro Tipo de Tipo de datos Descripción


parámetro
EN Entrada BOOL Habilitar instrucción.
Si EN = Cierto, se realiza la operación.
Si EN = Falso, no se realiza la operación.
TimeA Entrada TOWDATA Configuración de hora del día del canal A.
Utilice el tipo de datos TOWDATA para definir TiempoA.
TimeB Entrada TOWDATA Configuración de hora del día del canal B.
Utilice el tipo de datos TOWDATA para definir TiempoB.
TimeC Entrada TOWDATA Configuración de hora del día del canal C.
Utilice el tipo de datos TOWDATA para definir TiempoC.
TimeD Entrada TOWDATA Configuración de hora del día del canal D.
Utilice el tipo de datos TOWDATA para definir TiempoD.
TOW Salida BOOL Si es Cierto, el valor del reloj de tiempo real se encuentra dentro del
intervalo de la configuración de hora del día de cualquiera de los
cuatro canales.

Tipo de datos TOWDATA

La tabla siguiente describe el tipo de datos TOWDATA:

Parámetro Tipo de datos Descripción

Enable BOOL CIERTO: Habilitar; Falso: Deshabilitar.


DailyWeekly BOOL Tipo de temporizador (0:temporizador diario;
1:temporizador semanal).
DayOn USINT Valor de día de la semana activado (debe estar entre
[0...6]).
HourOn USINT Valor de hora activado (debe estar entre [0...23]).
MinOn USINT Valor de minuto activado (debe estar entre [0...59]).
DayOff USINT Valor de día de la semana desactivado (debe estar
entre [0...6]).
HourOff USINT Valor de hora desactivado (debe estar entre [0...23]).
MinOff USINT Valor de minuto desactivado (debe estar entre
[0...59]).

Ejemplo de diagrama de bloque de funciones TOW

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 677


Capítulo 25 Instrucciones de temporizador

Ejemplo de diagrama de lógica de escalera TOW

Ejemplo de texto estructurado TOW

(* Equivalencia de ST: *)

TESTOUTPUT := TOW(TIMEA, TIMEB, TIMEC, TIMED) ;

678 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Instrucciones de temporizador Capítulo 25

Resultados

Consulte también

Configuración de instrucciones de temporizador en la página 661

Instrucciones de temporizador en la página 661

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 679


Capítulo 25 Instrucciones de temporizador

680 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Índice
Bloque de función AWA 127
A Bloque de función AWT 129
activar Bloque de función CTD 253
bloques de función 21 Bloque de función CTU 255
alarmas Bloque de función CTUD 257
Bloque de función LIM_ALRM 69 Bloque de función DERIVATE 499
aritméticas Bloque de función F_TRIG 157
Función ABS 74 Bloque de función HSC 296
Función ACOS 75 Bloque de función HSC_SET_STS 313
Función ACOS_LREAL 76 Bloque de función HYSTER 516
Función ASIN 79 Bloque de función IIM 364
Función ASIN_LREAL 81 Bloque de función INTEGRAL 518
Función ATAN 82 Bloque de función IOM 365
Función ATAN_LREAL 84 Bloque de función IPIDCONTROLLER 541
Función COS 85 Bloque de función KEY_READ 367
Función COS_LREAL 86 Bloque de función LIM_ALRM 69
Función EXPT 90 Bloque de función MC_AbortTrigger 432
Función LOG 91 Bloque de función MC_Halt 435
Función MOD 92 Bloque de función MC_Home 438
Función POW 98 Bloque de función MC_MoveAbsolute 442
Función RAND 100 Bloque de función MC_MoveRelative 446
Función SIN 101 Bloque de función MC_MoveVelocity 450
Función SQRT 104 Bloque de función MC_Power 454
Función TAN 108 Bloque de función MC_ReadAxisError 464
Función TAN_LREAL 109 Bloque de función MC_ReadBoolParameter 469
Función TRUNC 110 Bloque de función MC_ReadParameter 471
operador addition 78 Bloque de función MC_ReadStatus 474
operador division 88 Bloque de función MC_Reset 479
operador MOV 94 Bloque de función MC_SetPosition 482
operador multiplication 95 Bloque de función MC_Stop 485
operador neg 97 Bloque de función MC_TouchProbe 488
operador subtraction 106 Bloque de función MC_WriteBoolParameter 492
SIN_LREAL 103 Bloque de función MC_WriteParameter 495
Bloque de función MMINFO 372
Bloque de función MSG_MODBUS 190
B Bloque de función PLUGIN_READ 390
bifurcaciones Bloque de función PLUGIN_RESET 392
inserción 42 Bloque de función PLUGIN_WRITE 394
para LD 42 Bloque de función R_TRIG 159
bifurcaciones paralelas para diagramas LD 42 Bloque de función RS 160
Bloque de función ABL 113 Bloque de función RTC_READ 398
Bloque de función ACB 120 Bloque de función RTC_SET 401
Bloque de función ACL 115 Bloque de función SCALER 529
Bloque de función AHL 118 Bloque de función SR 165
Bloque de función ARD 122 Bloque de función STACKINT 531
Bloque de función ARL 125 Bloque de función SUS 539
Bloque de función AVERAGE 283 Bloque de función SYS_INFO 403

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 681


Índice

Bloque de función TOF 662 MC_ReadStatus 474


Bloque de función TON 663 MC_Reset 479
Bloque de función TONOFF 665 MC_SetPosition 482
Bloque de función TP 668 MC_Stop 485
Bloque de función TRIMPOT_READ 405 MC_TouchProbe 488
Bloque de funciones COP 285 MC_WriteBoolParameter 492
Bloque de funciones MSG_CIPGENERIC 175 MC_WriteParameter 495
Bloque de funciones MSG_CIPSYMBOLIC 185 MMINFO 372
Bloque de funciones MSG_MODBUS2 196 MODULE_INFO 375
Bloque de funciones RTO 670 MSG_CIPGENERIC 175
bloques de función MSG_CIPSYMBOLIC 185
ABL 113 MSG_MODBUS 190
ACB 120 MSG_MODBUS2 196
ACL 115 nombres y parámetros de 21
activar 21 PID 567
AHL 118 PLUGIN_READ 390
ARD 122 PLUGIN_RESET 392
ARL 125 PLUGIN_WRITE 394
AVERAGE 283 R_TRIG 159
AWA 127 RS 160
AWT 129 RTC_READ 398
COP 285 RTC_SET 401
CTD 253 RTO 670
CTU 255 SCALER 529
CTUD 257 SOCKET_ACCEPT 587
DERIVATE 499 SOCKET_CREATE 590
F_TRIG 157 SOCKET_DELETE 596
FFL 501 SOCKET_DELETEALL 599
FFU 511 SOCKET_INFO 601
HSC 296 SOCKET_OPEN 606
HSC_SET_STS 313 SOCKET_READ 611
HYSTER 516 SOCKET_WRITE 615
IIM 364 SR 165
INTEGRAL 518 STACKINT 531
IOM 365 SUS 539
IPIDCONTROLLER 541 SYS_INFO 403
KEY_READ 367 TOF 662
LIM_ALRM 69 TON 663
MC_AbortTrigger 432 TONOFF 665
MC_Halt 435 TP 668
MC_Home 438 TRIMPOT_READ 405
MC_MoveAbsolute 442 bloques de función avanzados
MC_MoveRelative 446 SCALER 529
MC_MoveVelocity 450 Bloques de función de control de movimiento 419
MC_Power 454 bobinas
MC_ReadAxisError 464 cambiar tipos de 45
MC_ReadBoolParameter 469 cambiar tipos en FBD 45
MC_ReadParameter 471 de ajuste 52
682 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018
Índice

de restablecimiento 52 contador
de tipo inverso 49 Bloque de función CTD 253
definir en FBD 52 Bloque de función CTU 255
flanco ascendente de pulso (positivo) 51 Bloque de función CTUD 257
flanco descendente de pulso (positivo) 50 control de proceso
inserción 45 Bloque de función DERIVATE 499
insertar en FBD 45 Bloque de función HYSTER 516
paralelo, insertar 45 Bloque de función INTEGRAL 518
paralelo, insertar en FBD 45 Bloque de función IPIDCONTROLLER 541
restablecer en FBD 52 Bloque de función STACKINT 531
tipo directo 49 Función LIMIT 535
tipo directo en FBD 49 LFL (carga LIFO) 522
tipo inverso en FBD 49 LFU (descarga LIFO) 525
uso y tipos disponibles de 45 control de programa
uso y tipos disponibles de FBD 45 Bloque de función SUS 539
booleanas Función TND 534
Función MUX4B 172 convenciones de nombre
Función MUX8B 169 bloques de función 21
Función TTABLE 166 conversión de datos
operador ANY_TO_BOOL 259
operador ANY_TO_BYTE 260
C operador ANY_TO_DATE 261
comunicaciones operador ANY_TO_DINT 263
Bloque de función ABL 113 operador ANY_TO_DWORD 264
Bloque de función ACL 115 operador ANY_TO_INT 265
Bloque de función AHL 118 operador ANY_TO_LINT 267
Bloque de función ARD 122 operador ANY_TO_LREAL 268
Bloque de función ARL 125 operador ANY_TO_LWORD 269
Bloque de función AWA 127 operador ANY_TO_REAL 270
Bloque de función AWT 129 operador ANY_TO_SINT 271
Bloque de función MSG_MODBUS 190 operador ANY_TO_STRING 272
Bloque de funciones MSG_CIPGENERIC 175 operador ANY_TO_TIME 274
Bloque de funciones MSG_CIPSYMBOLIC 185 operador ANY_TO_UDINT 275
Bloque de funciones MSG_MODBUS2 196 operador ANY_TO_UINT 276
Bloques de función ACB 120 operador ANY_TO_ULINT 277
contactos operador ANY_TO_USINT 278
cambiar tipo de 53 operador ANY_TO_WORD 280
directo 57
directo en FBD 57
flanco ascendente de pulso (positivo) 58 D
flanco ascendente de pulso (positivo) en FDB 58 de restablecimiento
flanco descendente de pulso (positivo) 59 bobinas 52
inserción 53 Descripción de bloque de instrucciones 175, 185,
inverso 57 196, 283, 285
inverso en FBD 57 Descripción de bloque de instrucciones de
paralelo, insertar 53 ABL 113
uso y tipos disponibles de 53 ACB 120
uso y tipos disponibles en FDB de 53 ACL 115
Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 683
Índice

AHL 118 RTC_READ 398


ARD 122 RTC_SET 401
ARL 125 RTO 670
AVERAGE 283 SCALER 529
AWA 127 SRT 165
AWT 129 STACKINT 531
COP 285 SUS 539
CTD 253 SYS_INFO 403
CTU 255 TOF 662
CTUD 257 TON 663
DERIVATE 499 TONOFF 665
F_TRIG 157 TP 668
HSC 296 TRIMPOT_READ 405
HSC_SET_STS 313 Diagrama de escalera (LD)
HYSTER 516 instrucciones 33
IIM 364 lenguaje 33
INTEGRAL 518 directo
IOM 365 bobinas 49
IPIDCONTROLLER 541 bobinas en FBD 49
KEY_READ 367 contactos 57
LIM_ALRM 69 contactos en FBD 57
MC_AbortTrigger 432
MC_Halt 435
MC_Home 438
E
MC_MoveAbsolute 442 entrada/salida
MC_MoveRelative 446 Bloque de función HSC 296
MC_MoveVelocity 450 Bloque de función HSC_SET_STS 313
MC_Power 454 Bloque de función IIM 364
MC_ReadAxisError 464 Bloque de función IOM 365
MC_ReadBoolParameter 469 Bloque de función KEY_READ 367
MC_ReadParameter 471 Bloque de función MMINFO 372
MC_ReadStatus 474 Bloque de función PLUGIN_READ 390
MC_Reset 479 Bloque de función PLUGIN_RESET 392
MC_SetPosition 482 Bloque de función PLUGIN_WRITE 394
MC_Stop 485 Bloque de función RTC_READ 398
MC_TouchProbe 488 Bloque de función RTC_SET 401
MC_WriteBoolParameter 492 Bloque de función SYS_INFO 403
MC_WriteParameter 495 Bloque de función TRIMPOT_READ 405
MM_INFO 372 Función LCD 352
MSG_CIPGENERIC 175 Función RHC 359
MSG_CIPSYMBOLIC 185 Función RPC 361
MSG_MODBUS 190 etiquetas
MSG_MODBUS2 196 Peldaños, insertar 37
PLUGIN_READ 390
PLUGIN_RESET 392
PLUGIN_WRITE 394
F
R_TRIG 159 FBD (Diagrama de bloque de funciones)
RST 160 bobinas de ajuste 52
684 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018
Índice

bobinas de restablecimiento 52 Función NOT_MASK 143


bobinas directas 49 Función OR_MASK 145
bobinas inversas 49 Función POW 98
bobinas, uso y tipos disponibles de 45 Función RAND 100
contactos de flanco ascendente de pulso Función REPLACE 657
(positivo) 58 Función RHC 359
contactos directos 57 Función RIGHT 655
contactos inversos 57 Función ROL 146
contactos, uso y tipos disponibles de 53 Función ROR 148
peldaños, insertar 37 Función RPC 361
retornos, insertar 60 Función SHL 150
saltos a etiquetas, insertar 61 Función SHR 152
FFL 501 Función SIN 101
FFU 511 Función SQRT 104
flanco ascendente de pulso (positivo) Función STIS 409
bobinas 51 Función TAN 108
contactos 58 Función TAN_LREAL 109
contactos en FBD 58 Función TDF 674
flanco descendente de pulso (negativo) Función TND 534
bobinas 50 Función TOW 676
contactos 59 Función TRUNC 110
Función ABS 74 Función TTABLE 166
Función ACOS 75 Función UIC 411
Función ACOS_LREAL 76 Función UID 413
Función AND_MASK 135 Función UIE 414
Función ASCII 641 Función UIF 416
Función ASIN 79 Función XOR_MASK 153
Función ASIN_LREAL 81 funciones
Función ATAN 82 ABS 74
Función ATAN_LREAL 84 ACOS 75
Función CHAR 643 ACOS_LREAL 76
Función COS 85 AND_MASK 135
Función COS_LREAL 86 ASCII 641
Función DOY 672 ASIN 79
Función EXPT 90 ASIN_LREAL 81
Función FIND 646 ATAN 82
Función INSERT 648 ATAN_LREAL 84
Función LCD 352 CHAR 643
Función LEFT 650 COS 85
Función LIMIT 535 COS_LREAL 86
Función LOG 91 DELETE 645
Función MAX 291 DOY 672
Función MID 652 EXPT 90
Función MIN 290 FIND 646
Función MLEN 653 INSERT 648
Función MOD 92 LCD 352
Función MUX4B 172 LEFT 650
Función MUX8B 169 LIMIT 535
Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 685
Índice

LOG 91 instrucciones 33
MAX 291 instrucciones return
MID 652 inserción 60
MIN 290 para diagramas LD 60
MLEN 653 Instruction block description for
MOD 92 PLUGIN_INFO 388
MUX4B 172 interrumpir
MUX8B 169 Función STIS 409
NOT_MASK 143 Función UIC 411
OR_MASK 145 Función UID 413
POW 98 Función UIE 414
RAND 100 Función UIF 416
REPLACE 657 inverso
RHC 359 bobinas 49
RIGHT 655 bobinas en FBD 49
ROL 146 contactos 57
ROR 148 contactos en FBD 57
RPC 361
SHL 150
SHR 152
L
SIN 101 LD (Diagrama de escalera)
SIN_LREAL 103 bifurcaciones 42
SQRT 104 bobinas de ajuste 52
STIS 409 bobinas de flanco ascendente de pulso (positivo)
TAN 108 51
TAN_LREAL 109 bobinas de flanco descendente de pulso
TDF 674 (negativo) 50
TND 534 bobinas de restablecimiento 52
TOW 676 bobinas directas 49
TRUNC 110 bobinas inversas 49
TTABLE 166 bobinas, uso y tipos disponibles de 45
UIC 411 contactos de flanco ascendente de pulso
UID 413 (positivo) 58
UIE 414 contactos de flanco descendente de pulso
UIF 416 (negativo) 59
XOR_MASK 153 contactos directos 57
function blocks contactos inversos 57
PLUGIN_INFO 388 contactos, uso y tipos disponibles de 53
instrucciones return 60
peldaños, insertar 37
I saltos 61
input/output lenguaje
PLUGIN_INFO function block 388 Diagrama de escalera (LD) 33
inserción lenguaje LD
peldaños (elementos FBD) 37 métodos abreviados de teclado 66
peldaños de etiqueta 37
retornos (elementos FBD) 60
saltos a etiquetas (elementos FBD) 61
686 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018
Índice

M Función NOT_MASK 143


Función OR_MASK 145
manipulación de cadenas Función ROL 146
Función ASCII 641 Función ROR 148
Función CHAR 643 Función SHL 150
Función DELETE 645 Función SHR 152
Función FIND 646 Función XOR_MASK 153
Función INSERT 648 operaciones booleanas
Función LEFT 650 Bloque de función F_TRIG 157
Función MID 652 Bloque de función R_TRIG 159
Función MLEN 653 Bloque de función RS 160
Función REPLACE 657 Bloque de función SR 165
Función RIGHT 655 operador AND 163
manipulación de datos operador NOT 164
Bloque de función AVERAGE 283 operador OR 162
Bloque de funciones COP 285 operador XOR 163
Función MAX 291 operaciones de comparación
Función MIN 290 operador equal 241
MC_Read 461 operador greater than 244
MC_ReadActualPosition 457 operador greater than or equal 246
métodos abreviados de teclado operador less than 248
lenguaje LD 66 operador less than or equal 249
MODULE_INFO 375 operador not equal 250
movimiento operador - 106
Bloque de función MC_AbortTrigger 432 operador * 95
Bloque de función MC_Halt 435 operador / 88
Bloque de función MC_Home 438 operador + 78
Bloque de función MC_MoveAbsolute 442 operador < 248
Bloque de función MC_MoveRelative 446 operador <= 249
Bloque de función MC_MoveVelocity 450 operador <> 250
Bloque de función MC_Power 454 operador = 241
Bloque de función MC_ReadAxisError 464 operador > 244
Bloque de función MC_ReadBoolParameter 469 operador >= 246
Bloque de función MC_ReadParameter 471 operador 1Gain 94
Bloque de función MC_ReadStatus 474 operador addition 78
Bloque de función MC_Reset 479 operador AND 163
Bloque de función MC_SetPosition 482 operador ANY_TO_BOOL 259
Bloque de función MC_Stop 485 operador ANY_TO_BYTE 260
Bloque de función MC_TouchProbe 488 operador ANY_TO_DATE 261
Bloque de función MC_WriteBoolParameter 492 operador ANY_TO_DINT 263
Bloque de función MC_WriteParameter 495 operador ANY_TO_DWORD 264
operador ANY_TO_INT 265
O operador ANY_TO_LINT 267
operador ANY_TO_LREAL 268
operaciones aritméticas operador ANY_TO_LWORD 269
operador 1Gain 94 operador ANY_TO_REAL 270
operaciones binarias operador ANY_TO_SINT 271
Función AND_MASK 135 operador ANY_TO_STRING 272
Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 687
Índice

operador ANY_TO_TIME 274 MOV 94


operador ANY_TO_UDINT 275 multiplication 95
operador ANY_TO_UINT 276 Neg 97
operador ANY_TO_ULINT 277 NOT 164
operador ANY_TO_USINT 278 not equal 250
operador ANY_TO_WORD 280 OR 162
operador division 88 subtraction 106
operador equal 241 XOR 163
operador greater than 244
operador greater than or equal 246
operador less than 248
P
operador less than or equal 249 parámetros
operador MOV 94 de bloques de función 21
operador multiplication 95 peldaños
operador neg 97 Diagrama de bloque de funciones, insertar 37
operador NOT 164 etiquetas, insertar 37
operador not equal 250 inserción 37
operador OR 162 PID 567
operador subtraction 106 plantilla
operador XOR 163 elementos de contacto disponibles para
operadores diagramas LD 53
1Gain 94 peldaños, insertar en contenedores LD 37
addition 78 tipos de bobinas disponibles en FBD 45
AND 163 tipos de bobinas disponibles para diagramas LD
ANY_TO_BOOL 259 45
ANY_TO_BYTE 260 PLUGIN_INFO function block 388
ANY_TO_DATE 261
ANY_TO_DINT 263
ANY_TO_DWORD 264
R
ANY_TO_INT 265 restablecer bobina en FBD 52
ANY_TO_LINT 267
ANY_TO_LREAL 268
ANY_TO_LWORD 269
S
ANY_TO_REAL 270 saltos
ANY_TO_SINT 271 Diagrama de bloque de funciones, insertar 61
ANY_TO_STRING 272 Diagramas de escalera, insertar 61
ANY_TO_TIME 274 para diagramas LD 61
ANY_TO_UDINT 275 Peldaños ,insertar 37
ANY_TO_UINT 276 símbolos de retorno
ANY_TO_ULINT 277 insertar, elementos FBD 60
ANY_TO_USINT 278 SIN_LREAL 103
ANY_TO_WORD 280 SOCKET_ACCEPT 587
division 88 SOCKET_CREATE 590
equal 241 SOCKET_DELETE 596
greater than 244 SOCKET_DELETEALL 599
greater than or equal 246 SOCKET_INFO 601
less than 248 SOCKET_OPEN 606
less than or equal 249 SOCKET_READ 611
688 Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018
Índice

SOCKET_WRITE 615

T
tiempo
Bloque de función TOF 662
Bloque de función TON 663
Bloque de función TONOFF 665
Bloque de función TP 668
Bloque de funciones RTO 670
Función DOY 672
Función TDF 674
Función TOW 676

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018 689


Soporte de Rockwell Automation
Rockwell Automation proporciona información técnica en la web para ayudarle a usar sus productos. En
http://www.rockwellautomation.com/support podrá encontrar notas técnicas y de aplicación, código de muestra y vínculos a paquetes de
servicios de software. También puede visitar nuestro centro de soporte en https://rockwellautomation.custhelp.com para obtener
actualizaciones de software, chats y foros de soporte, información técnica, preguntas frecuentes y para registrarse para obtener
actualizaciones de notificaciones de productos.

Además, ofrecemos múltiples programas de soporte para la instalación, configuración y solución de problemas. Para obtener más
información, póngase en contacto con su distribuidor o agente de Rockwell Automation más cercano, o visite
http://www.rockwellautomation.com/services/online-phone.

Ayuda para la instalación


Si experimenta algún problema en las primeras 24 horas tras la instalación, revise la información contenida en este manual. Puede contactar
con el servicio de soporte de clientes para obtener ayuda inicial para empezar a usar su producto.

Estados Unidos y Canadá 1.440.646.3434


Fuera de los Estados Unidos y Utilice el localizador global disponible en http://www.rockwellautomation.com/locations
Canadá o póngase en contacto con su agente de Rockwell Automation más cercano.

Devolución de producto nuevo no satisfactorio


Rockwell Automation prueba todos sus productos para garantizar que funcionan correctamente al salir de fábrica. Sin embargo, si su
producto no funciona y debe devolverlo, siga estos procedimientos.

Estados Unidos Póngase en contacto con su distribuidor. Para completar el proceso de devolución,
deberá proporcionar a su distribuidor un número de caso de soporte de cliente (llame al
número de teléfono anterior para obtener uno).
Fuera de los Estados Unidos Póngase en contacto con su agente de Rockwell Automation más cercano para
obtener información sobre el procedimiento de devolución.

Comentarios sobre la documentación


Sus comentarios sobre la documentación nos ayudarán a satisfacer mejor sus necesidades. Si tiene cualquier sugerencia sobre cómo
mejorar este documento, cumplimente el formulario de comentarios, publicación RA-DU002
http://literature.rockwellautomation.com/idc/groups/literature/documents/du/ra-du002_-en-e.pdf.

Publicación de Rockwell Automation 2080-RM001G-ES-E - Febrero 2018


Reemplaza la publicación - 2080-RM001F-ES-E - Marzo 2017 Copyright © 2018 Rockwell Automation Technologies, Inc. Todos los derechos reservados. Impreso en EE.UU.

También podría gustarte