Parámetros genéricos

Introducción

En este tema se describen la gestión y las operaciones de las funciones de comunicación de los controladores utilizando el bloque de funciones READ_VAR como ejemplo. (El estándar PLCopen define reglas para los bloques de funciones).

NOTA: Estos parámetros son comunes a todos los bloques de funciones PLCCommunication (excepto ADDM).

Representación gráfica

En este gráfico se resaltan los parámetros comunes a todos los bloques de funciones de la biblioteca PLCCommunication:

G-SE-0005850.1.gif-high.gif

 

 

Parámetros comunes

Estos parámetros los comparten varios bloques de funciones de la biblioteca PLCCommunication:

Entrada

Tipo

Comentario

Execute

BOOL

La función se ejecuta en el flanco ascendente de esta entrada.

NOTA: si xExecute se establece en TRUE en el primer ciclo de tarea EN EJECUCIÓN después de un reseteo en frío o en caliente, el flanco ascendente no se detecta.

Abort

BOOL

Cancela la operación en curso en el flanco ascendente

Addr

ADDRESS

La dirección del dispositivo externo de destino (puede ser la salida del bloque de funciones ADDM)

Timeout

WORD

El timeout del intercambio es un múltiplo de 100 ms (0 para infinito)

NOTA: El Timeout time está fijado en @1 s para el HMI SCU y no puede establecerse para los bloques de funciones de comunicación de Modbus.

NOTA: una operación de bloque de funciones puede requerir varios intercambios. El timeout se aplica a cada intercambio realizado entre el controlador y el modem, de manera que la duración global del bloque de funciones puede ser mayor que el timeout.

Salida

Tipo

Comentario

Done

BOOL

Done se establece en TRUE cuando la función se completa correctamente.

Busy

BOOL

Busy se establece en TRUE mientras la función está en curso.

Aborted

BOOL

Aborted se establece en TRUE cuando la función se cancela con la entrada Abort. Cuando la función se cancela, CommError contiene el código Canceled - 16#02 (el intercambio se detiene cuando lo solicita un usuario).

Error

BOOL

Error se establece en TRUE cuando la función se detiene debido a que se ha detectado un error. Cuando se ha detectado un error, CommError y OperError contienen información sobre el error detectado.

CommError

BYTE

CommError contiene códigos de errores de comunicación.

OperError

DWORD

OperError contiene códigos de errores de funcionamiento.

NOTA:

En cuanto la salida Busy se restablece en 0, una (y sólo una) de estas 3 salidas se establece en 1:

oDone

oError

oAborted

Los bloques de funciones requieren un flanco ascendente para iniciarse. El bloque de funciones debe ver en primer lugar la entrada Execute como falsa para detectar un flanco ascendente posterior.

Warning_Color.gifADVERTENCIA

FUNCIONAMIENTO IMPREVISTO DEL EQUIPO

Realice siempre la primera llamada a un bloque de funciones con su entrada Execute establecida en FALSE de manera que detecte un flanco ascendente posterior.

El incumplimiento de estas instrucciones puede causar la muerte, lesiones serias o daño al equipo.

Ejecución de funciones

La función se inicia en el flanco ascendente de la entrada Execute. A continuación se establece la salida Busy en TRUE. En esta figura se muestra el comportamiento del bloque de funciones cuando se completa automáticamente la operación (con o sin errores detectados):

G-SE-0001697.1.gif

 

Nota 1:   El bit de Done o Error se establece en TRUE sólo durante un ciclo de tarea sólo si Execute ya se ha restablecido en FALSE cuando ha finalizado la operación.

Función cancelada

En esta figura se muestra la función que cancela la aplicación. El flanco ascendente de la entrada Abort cancela la función en curso. En esos casos, la salida cancelada se establece en 1 y CommError contiene el código Canceled - 16#02 (intercambio detenido por una petición de usuario):

G-SE-0001698.1.gif

 

Nota 1:   el bit de Abort se establece en TRUE sólo durante un ciclo de tarea sólo si Execute ya se ha restablecido en FALSE cuando se ha producido la petición de cancelación.