Logo Studenta

SELECCION MULTILAZO - Luis Mendoza

¡Este material tiene más páginas!

Vista previa del material en texto

SELECCION MULTILAZO
Hay momentos en que dos o más variables de proceso son controladas por la misma variable de control. A menudo, la variable de control real enviada al actuador de campo necesita ser limitado en estos casos  para utilizar el menor o mayor de los resultados de dos o más lazos PID (uno para cada variable de proceso diferente). Por ejemplo, para controlar temperatura y presión en una reacción química exotérmica, usted  podría tener un lazo PID para la temperatura, otro lazo PID para la presión, y utilizar el menor de los resultados de estos dos lazos para controlar un flujo de catalizador en el reactor para modular la tasa de reacción. En otras las palabras, si la presión es demasiado alta, el lazo del PID de la presión pide menos catalizador, y si en cambio la temperatura es demasiado alta, la temperatura lazo requiere menos catalizador. En cualquier caso, siempre desea utilizar el menor de los dos lazos para controlar el flujo del catalizador. El reto es Alinee el lazo que no está en control con el lazo que es, y para permitir control para activar el interruptor entre los lazos.
Un algoritmo PID de forma posicional es muy difícil de implementar correctamente para este tipo de esquema de control. Ya que constantemente necesita alinear el lazos, debe tomar la salida del lazo que está en control, proporcionar como una señal de salida manual para el otro lazo, poner ese lazo en el manual para volver a calcular y alinear con el lazo que está en control, y luego Vuelva a colocar el lazo fuera de control en auto. Usted debe hacer esto por cada  ejecución de los lazos.
Un algoritmo PID de forma de velocidad proporciona una ventaja clara para estos tipos de esquemas de control. Dado que la salida anterior del lazo es disponible en el término CVN-1, es una simple cuestión de cableado de la salida en realidad se envían al elemento de control final en el término CVN-1 de cada lazo. Por lo tanto, los dos lazos siempre estarán alineados entre sí y el control puede bumplessly moverse entre la temperatura o la presión control limitado. A continuación se muestra un ejemplo de esta lógica:
Como se muestra, el valor realmente enviado a la válvula de catalizador es simplemente cableado de nuevo en el parámetro CVPrevious en cada instrucción pide. Que también debe establecer el parámetro CVSetPrevious para decirle a la pide instrucción para utilizar el parámetro CVPrevious como el término CVN-1 en el Algoritmo PID. Esta lógica es mucho más simple de crear y mantener que la lógica equivalente requerida para un algoritmo PID de forma posicional.
El control de cascada es útil cuando se desea limitar las fluctuaciones de elemento de control final de causar desajustes a su proceso. Como un ejemplo, considere el caso de un tanque mezclador cuya temperatura es controlado por el flujo del vapor en una chaqueta de la calefacción alrededor del tanque. Si la presión del vapor fuera a bajar como resultado de incremento del consumo aguas arriba , la temperatura del producto en el tanque comenzaría a disminiur. El lazo PID que controla la temperatura percibiría la temperatura y eventualmente abrirá la válvula de vapor lo suficiente como para vuelva a poner la temperatura en el punto de consigna. Sin embargo, sería ventaja para comenzar a abrir la válvula de vapor antes del producto la temperatura se vio seriamente afectada. El control de cascada proporciona este capacidad.
En el control de cascada, el lazo que controla la variable principal se denomina como el lazo primario. Esto también se conoce a veces como el  lazo maestro o lazo exterior. En nuestro ejemplo, la temperatura del tanque es controlada por el lazo primario. El lazo control de las fluctuaciones en la final el elemento de control se denomina lazo secundario. Los términos '  lazo esclavo  ' o ' lazo interno ' también se utilizan. En nuestro ejemplo, puede configurar un lazo secundario para supervisar la temperatura de la chaqueta. Puesto que el volumen de la chaqueta es mucho más pequeña que el volumen del tanque, él responderá mucho más rápidamente a los cambios en la presión del vapor. Esto ilustra una de las limitaciones del control en cascada. La respuesta del proceso las características del lazo secundario deben ser más rápidas que la procese las características de respuesta del lazo primario. Esto es lógico ya que si el lazo secundario era más lento, no sería capaz de controlar disturbios antes de que fueran vistos por la primaria.
Con un lazo secundario de control de la temperatura de la chaqueta, una caída en la presión del vapor ahora será vista rápidamente como gota en la chaqueta la temperatura, y el lazo secundario comenzará a abrir el vapor válvula antes de que la temperatura del tanque se vea seriamente afectada. Esto es ilustrado en el diagrama de abajo.
La instrucción pide tiene capacidades integradas para manejar en cascada  lazos. Primero, tiene un modo distinto (cascada/cociente) para manejar la cascadaControl. El lazo secundario puede estar en modo cascada, en el que caso, la salida de la primaria proporcionará el punto de consigna de la secundario, o puede estar en modo automático, en cuyo caso puede introducir un ajuste de temperatura para la chaqueta directamente.
La instrucción pide también admite la inicialización del lazo primario para el punto de consigna del lazo secundario. Si el lazo secundario sale de la cascada modo, el lazo primario debe dejar de intentar  controlar ya que no ya está afectando el proceso. También debe establecer su salida igual a el punto de consigna del lazo secundario, por lo que cuando el secundario se devuelve a Modo cascada, el primario comenzará a controlar.
Además, la instrucción pide admite la limitación de wind up en el lazo primario. Cuando el lazo secundario alcanza una salida o un punto de consigna límite, desea que el lazo primario deje de integrarse en la dirección de el límite. Por ejemplo, si el secundario alcanzó un límite de salida alto, la primaria ya no debería integrarse en una dirección positiva. En nuestro ejemplo, si el lazo secundario había abierto la válvula de vapor 100%, no tendría sentido que la primaria siga solicitando más vapor (aumente el punto de consigna del secundario) ya que el secundario no puede da más vapor.
Se ilustra una configuración típica de un lazo en cascada en RSLogix 5000 Abajo. Primero en el lazo primario, debe activar la visibilidad del CVInitReq y CVInitValue Pins. Se usarán para configurar el inicialización del lazo primario cuando las hojas secundarias caen en cascada Modo. También debe asegurarse de que la gama de unidades de ingeniería la salida de la primaria coincide con el rango de unidades de ingeniería del punto de consigna secundario, ya que el secundario usará la salida de la primaria como punto de consigna.
En el lazo secundario, es necesario activar la visibilidad del InitPrimary, WindupHOut, y WindupLOut Pins. Estos se usarán para configurar inicialización y limitación de wind up en la primaria. También es necesario establecer AllowCasRat para habilitar el modo cascada/ratio tal como lo hicimos para un lazo del control del cociente.
Por último, debe conectar las salidas InitPrimary y SP del secundario a las entradas CVInitReq y CVInitValue en el primario.
Cuando el modo de cascada de hojas secundarias, se establece el InitPrimary la salida, causando que el lazo primario inicialice su salida CVEU para ser igual al valor de consigna del secundario. También debe conectar el WindupHOut y WindupLOut salidas de la secundaria a la Entradas WindupHIn y WindupLIn en la primaria. Cuando el secundario golpea un límite de salida o de punto de consigna, se establecerá la Salida de wind up que hará que el lazo primario deje de integrarse en esa dirección.
Una nota final-algunos sistemas DCS logran la principal inicialización y limitación de windup mediante el cableado de un solo "back-Calculate" conexión de la secundaria a la primaria. Este cable contiene todos los señales de inicialización y de windup H/L. Sin embargo, la ventaja de la rupturade estos como señales separadas es que permite más flexibilidad para manejar situaciones más avanzadas donde, por ejemplo, un el lazo primario único puede ventilar a varios secundarios.
Los compensadores de retraso de derivación influyen en disciplinas tan variadas como la robótica , el control de satélites , el diagnóstico de automóviles y la estabilización de frecuencia láser . Son un bloque de construcción importante en los sistemas de control analógico, y también se pueden usar en el control digital.
Dada la planta de control, las especificaciones deseadas se pueden lograr usando compensadores. I, D, PI , PD y PID optimizan los controladores que se utilizan para mejorar los parámetros del sistema (como reducir el error de estado estable, reducir el pico resonante, mejorar la respuesta del sistema al reducir el tiempo de subida). Todas estas operaciones se pueden hacer por compensadores también.
La instrucción LDLG proporciona una compensación de avance-retroceso de fase de una señal de entrada. Esta instrucción se utiliza normalmente para control PID de feedforward o de simulaciones de proceso.
Descripción
La instrucción LDLG apoya a uno y los lag en serie. La instrucción también permite ganancia configurable y factores de sesgo. La instrucción LDLG está diseñada para ejecutar en una tarea donde la frecuencia de barrido sigue siendo constante.
La instrucción LDLG utiliza esta ecuación:
Siempre que el valor calculado para la salida no es válida, NAN o ±INF, la instrucción establece = el valor no válido y establece el indicador de estado de desbordamiento de matemáticas.
Cuando el valor calculado para la salida se convierte en válido, la instrucción inicializa los parámetros internos y establece = (ganancia en x) + sesgo.
Indicadores de estado de matemáticas
No Fallas de mayor/menor
Ninguno específico para esta instrucción. Ver atributos comunes para faltas relacionadas con el operando.
Structured Text
DEDT_01.In := SimulatedLoop.CVEU;
DEDT(DEDT_01,DEDT_01_array);
LDLG_01.In := DEDT_01.Out;
LDLG(LDLG_01);
SimulatedLoop.PV := LDLG_01.Out;
PIDE(SimulatedLoop);
DEDT
La instrucción DEDT realiza un retardo de una sola entrada. Selecciona la cantidad de retardo de deadtime.
Idiomas disponibles
Diagrama de escalera 
Esta instrucción no está disponible en la lógica del diagrama de escalera.
Descripción
La instrucción DEDT utiliza un búfer de datos para almacenar datos retrasados, lo que permite cualquier deadtime longitud deseada. La instrucción DEDT está diseñada para ejecutar en una tarea donde la frecuencia de barrido sigue siendo constante.
Para utilizar la instrucción DEDT, crear una matriz de almacenamiento para almacenar el buffer de deadtime para contener las muestras de (ganar en x) + BIAS. La matriz de almacenamiento debe ser lo suficientemente grande para el más grande deadtime deseada, usando esta fórmula:
StorageArray tamaño necesario = Deadtime máxima (segundos) / DeltaT (seg)
Servicios el búfer de Deadtime
En tiempo de ejecución, la instrucción comprueba un Deadtime válido. Deadtime debe estar entre 0.0 y (tamaño StorageArray x DeltaT).
Si el Deadtime es válido, la instrucción establece un bit de estado apropiado y establece = (ganancia en x) + BIAS.
El búfer de deadtime funciona como un buffer de primero-en, hacia fuera. Cada vez que se ejecuta el algoritmo de deadtime, el valor más antiguo en el búfer de deadtime se mueve a hacia fuera. Los valores restantes en el cambio de tampón hacia abajo y el valor ((In x Gain) + sesgo) se mueve al principio del buffer deadtime. Un nuevo valor que se coloca en el búfer de deadtime aparece en la salida Deadtime segundos.
El número de elementos de la matriz necesaria para realizar el retraso programado se calcula dividiendo Deadtime DeltaT. Si no es uniformemente divisible por DeltaT Deadtime, el número de elementos de la matriz y el retraso programado se redondea al incremento más cercano de DeltaT. Por ejemplo, para encontrar el número de elementos de la matriz necesaria para llevar a cabo la demora programada Deadtime = 4.25s y DeltaT = 0.50s:
4.25s / 0.50s = 8.5 rondas hasta 9 elementos de la matriz requeridos
El retraso actual aplicado a la entrada en este ejemplo es:
número de elementos de la matriz x DeltaT = retardo programado o 9 x 0,5 = 4.5s
Cambios de tiempo de ejecución Deadtime o DeltaT cambian el punto en que los valores se mueven fuera del búfer. El número de elementos necesarios para llevar a cabo el retraso programado puede aumentar o disminuir. Antes de reparar el búfer de deadtime, ocurren las siguientes actualizaciones:
Si necesita aumentar el número de elementos necesarios, los nuevos elementos de amortiguación se rellenan con el valor más antiguo en el buffer de deadtime corriente.
Si necesita disminuir el número de elementos necesarios, se descartan los elementos más antiguos del búfer deadtime actual
Para la simulación simple de bucles de proceso, puede utilizar el proceso instrucciones incorporadas a la derecha en el controlador Logix. La mayoría de los bucles pueden se piensa generalmente como "integrar" o "uno mismo-limitando." Un ejemplo de un proceso de integración sería un bucle de nivel. Si usted considere un tanque con un flujo en el tanque emparejado exactamente por el flujo fuera del tanque, tendrá un nivel estable. Si luego haces un paso aumento en el flujo en el tanque, el tanque se llenará constantemente hasta que se lleno o rebosa. Esto es típico de un bucle de proceso de integración; Si usted hacer un cambio de paso a la salida de bucle, el proceso de forma constante aumente o disminuya hasta que alcance un límite físico.
Un bucle de integración como un bucle de nivel es simple de simular-sólo Realice un cálculo de balance de masa o material en el tanque.
Un ejemplo de un bucle de proceso auto-limitador sería una temperatura Bucle. Si usted hace un aumento del paso a la salida del lazo, la temperatura típicamente podría tomar un poco de tiempo para empezar a responder, y entonces aumente exponencialmente a un nuevo valor de estado estacionario.
Un bucle de proceso auto-limitador puede ser simulado a menudo por un Deadtime y lag de primer orden en serie. El Deadtime simula el retraso entre Cuando la salida cambia y el PV comienza a responder, y el lag simula el ascenso exponencial a un nuevo valor de estado estacionario.
El controlador Logix proporciona instrucciones de Deadtime y de retraso de cabeza que se pueden utilizar para este tipo de simulaciones. La salida de la La instrucción pide se cablea a través de la Deadtime y el retraso de luego volver a la entrada PV de la pide. El bucle se puede sintonizar y funciona con el modelo.
Eligiendo diferentes valores de Deadtime y lag, puede simular diferentes tipos de bucles de proceso. Por ejemplo, una temperatura lenta bucle puede tener un Deadtime de unos minutos y una constante de tiempo de retraso de varios minutos, mientras que un bucle de flujo rápido podría tener un Deadtime de un par de segundos y una constante de tiempo de retraso de unos segundos.
También puede utilizar el parámetro GAIN en el Deadtime o el desfase de instrucción para simular una ganancia de proceso. Por ejemplo, si un cambio del 10% en la salida de bucle normalmente provocaría un cambio del 20% en PV, podría Utilice una ganancia de 2 para simular este comportamiento. Del mismo modo, si su bucle tiene una condición ambiental por la que una salida de bucle de 0% provocaría la proceso para establecerse en algún valor distinto de cero, puede introducir este valor como un sesgo. Por ejemplo, un bucle de temperatura podría asentarse en la habitación temperatura si la salida del bucle era 0%. Por último, a veces puede también desea utilizar un bloque de escala (SCL) para escalar la salida de la pide la instrucción en un valor del picovoltio con una diversa gama
AUTOSINTONIA PIDE
La instrucción pide tiene un Sintonizador incorporado que se puede utilizar para Obtenga constantes de afinación sugeridas para su bucle de proceso. Debido a que el Autotuner está incorporado en la instrucciónpide, puede afinar sus bucles dentro de RSLogix 5000 o desde cualquier interfaz de operador. La pide Autotuner es un sintonizador de bucle abierto, lo que significa que el bucle debe estar en Manual. El Autotuner dará paso a la salida por una cantidad que configurar, ver la respuesta de la PV, y luego le dan conjuntos de se sugieren valores de ganancia proporcional, integral y derivado para un rápido respuesta media o lenta. Como se muestra a continuación, además de la constantes de afinación sugeridas, el Autotuner también devuelve el proceso modelo que se usó para estimar las constantes de afinación. Por al comparar este modelo de proceso con el proceso real, puede obtener una idea de la conveniencia de las ganancias sugeridas.
Si se desea más capacidad de autotuning, la instrucción pide también soporta los paquetes RSTune y RSLoopOptimizer. Estos PCBA el sintonizador del lazo cerrado de la ayuda de los autotunings y también, particularmente en el caso de RSLoopOptimizer, proporciona una abundancia de diagnóstico información sobre los bucles de proceso.
RAMPA_PERIODO
La instrucción de RMPS proporciona para un número de segmentos de alterna de rampa y períodos.
La instrucción de RMPS se utiliza típicamente para proporcionar un perfil de temperatura en un proceso por lotes. La salida de esta instrucción es normalmente la entrada a el punto de referencia de un lazo de PID.
Siempre que el valor calculado para la salida no es válida, NAN, o ±INF, la establecen instrucciones = el valor no válido y se establece el estado de desbordamiento aritmético bandera. No se actualizan los parámetros internos. En cada exploración posterior, la salida se calcula utilizando el interno parámetros desde el último análisis cuando la la producción era válido.
Ejemplo en este ejemplo, la instrucción de RMPS unidades el punto de referencia de un PIDE instrucción. Cuando la instrucción PIDE está en modo de cascada/cociente, la salida de los RMPS instrucción se utiliza como el punto de referencia. La PV a la PIDE instrucción se puede alimentar opcionalmente a la entrada de la PV de la instrucción de RMPS si desea utilizar garantizado en rampa o garantizado-Spa.
En este ejemplo, el AutoclaveRSSoakValue, AutoclaveRSSoakTime, y AutoclaveRSRampValue las matrices son matrices reales con 10 elementos para permitir a a un segmento 10 perfil RMPS.
GENERADOR DE FUNCION.
La instrucción FGEN convierte una entrada basada en un están función lineal.
Instrucción de ejemplo FGEN la caracteriza una señal de flujo que luego se totalizaron utilizando una instrucción de TOT. Los arrays FGEN_01X1 y FGEN_01Y1 son REAL conjuntos de 10 elementos cada uno para soportar hasta una curva de 9 segmentos. Se puede utilizar matrices de cualquier tamaño para una curva de cualquier número de segmentos que desea.
La instrucción POSP se abre o cierra un dispositivo, como un motor de accionamiento de  válvula de pulsos contactos de apertura o cierre en un tiempo definido por el usuario con un anchura de pulso proporcional a la diferencia entre la deseada y la real posiciones.
La instrucción POSP recibe generalmente el valor de posición de una Salida de instrucción PID.
Escala de los valores de posición y punto de ajuste Las salidas de PositionPercent y SPPercent se actualizan cada vez que la instrucción se ejecuta. Si cualquiera de estos valores está fuera del intervalo (menos de 0% o más de 100%), se establece el bit correspondiente en el estado, pero los valores no son limitado. La instrucción utiliza estas fórmulas para calcular si los valores son en gama:
En ciertas situaciones, una sola instrucción de la pide se podría utilizar para Realice dos tipos de control dependiendo del rango de salida. Si nos volver al ejemplo de una máquina de extrusión barril zona, el la temperatura es controlada pulsando los calentadores resistivos cuando el pide la salida está sobre el 50% y el líquido refrigerador de pulso a través de las bobinas de enfriamiento cuando la salida pide está por debajo del 50%. Los controladores Logix admiten un Intervalo de tiempo proporcional (SRTP) instrucción para precisamente estos tipos de bucles.
También hay que tener en cuenta cómo se ejecuta la pide y SRTP Instrucciones. Estos tipos de bucles de temperatura suelen ser muy lentos actuando, por lo que la instrucción pide a menudo tiene que ejecutar sólo cada mitad a dos segundos. Es importante, sin embargo, que el SRTP la instrucción se ejecuta mucho más rápidamente que la instrucción pide.
Puesto que el SRTP está realizando realmente la pulsación de la calefacción y  las salidas de enfriamiento, su resolución de la salida es una función del CycleTime del SRTP y con qué frecuencia se ejecuta el SRTP.
Por ejemplo, si ha definido un CycleTime para el SRTP de 10 segundos, y luego ejecutó el SRTP en la misma tarea periódica que la pide en ¡ una vez por segundo, su resolución de salida sería en realidad sólo el 10%! Es sería imposible controlar sus bucles con esta resolución.
Por lo tanto, lo que desea hacer es ejecutar la instrucción SRTP en un tarea periódica más rápida y de mayor prioridad que normalmente se ejecuta cada 10 o 20 Milisegundos. A continuación, puede utilizar una etiqueta de control de ámbito para enviar el los datos de la salida pide a la entrada de la SRTP.
Para un bucle típico entonces, su CycleTime podría ser de 10 segundos, y si su instrucción SRTP se ejecuta en una tarea periódica de 20 milisegundos, entonces su resolución de salida es 0.2% que es un montón de resolución para manejar la mayoría de estos tipos de bucles. Para el calor/los lazos fríos, usted típicamente Configure la instrucción SRTP de tal manera que la salida del 100% pide proporciona la calefacción completa, la salida del 50% pide no proporciona ninguna calefacción o refrescándose, y el 0% La salida pide proporciona refrigeración completa. De hecho, este es el SRTP predeterminad Configuración. Para un bucle de sólo calor, configure el SRTP de forma que la salida 100% pide proporciona la calefacción completa, y la salida del 0% pide proporciona no hay calefacción. Además, para un bucle de calor/frío, por lo general querrá establecer el. Parámetro de CVInitValue de la instrucción de pide a 50. Esto se hacer que el bucle pide se inicie con una salida del 50% cuando el el controlador primero va al modo de ejecución. Una configuración típica de bucle de calor/frío del A continuación se muestra la instrucción SRTP.
La lógica FBD para ejecutar un bucle de calor/frío típico entonces se vería como Este:
Si está conduciendo un elemento de control final analógico para calefacción y/o refrigeración en lugar de un contacto digital, puede utilizar directamente el HeatTimePercent y CoolTimePercent salidas del SRTP Instrucción. Van a variar de 0-100% dependiendo de la cantidad de calefacción o refrigeración solicitada por la instrucción pide.
Como se mencionó anteriormente en este documento, las ganancias adaptables pueden ser fácilmente realizado con la instrucción pide. A menudo, tener diferentes ganancias para los procesos de calefacción y refrigeración puede conducir a un mejor control desde Estos son diferentes procesos físicos. Para lograr ganancias adaptativas, activar la visibilidad de los parámetros PGain, IGain y DGain y el cable en una selección de un conjunto de aumentos de calefacción o ganancias de refrigeración como se muestra a continuación.
El SRTP instrucción toma el 0-100% de salida de unidades y un lazo de PID calefacción y refrigeración de los contactos de salida digital con un pulso periódico. Esto instrucciones controles de aplicaciones tales como control de la temperatura de barril máquinas de extrusión.
Descripción de la longitud del pulso SRTP es proporcional a la salida del PID. El parámetros de instrucciones capacidad de calefacción y refrigeración.
Usar el temporizador de ciclo interno La instrucción mantiene un libre temporizador de ciclo corriente que ciclos de cero a los ciclos programados. El temporizador interno actualiza DeltaT. DeltaT es el tiempo transcurrido desde lainstrucción último ejecutada. Este temporizador determina si las salidas deben activarse.
Ciclos se pueden cambiar en cualquier momento. Si ciclos = 0, el temporizador interno es despejado y HeatOut y CoolOut se borran.
La instrucción de TOT proporciona una acumulación de la escala de tiempo de una entrada analógica valor.
Descripción esta instrucción normalmente asciende a la cantidad de un material añadido con el tiempo, basado en una señal de flujo.
Las ayudas de instrucción TOT:
· Base de tiempo seleccionable como segundos, minutos, horas o días.
·  puede especificar un valor objetivo y hasta dos valores previos. Pre-objetivo los valores se suelen utilizar para cambiar a una velocidad de avance más lento. Banderas digitales anunciar el alcance del objetivo o valores objetivo previo.
· A de bajo flujo de entrada de corte que se puede utilizar para eliminar los negativos totalización debido a las inexactitudes de calibración flujómetro leve cuando la flujo se apaga.
· Operador o programa capacidad de start/stop/reset.Usuario
· El usuario define restet del valor.
· Integración numérica de la regla Trapezoidal  para mejorar la precisión.
· La totalización interna se hace con matemática precisión doble para mejorar exactitud.
· 
Ejemplo en este ejemplo, la instrucción de TOT metros una cantidad objetivo de agua en un el tanque y el flujo una vez que se ha añadido la cantidad correcta de agua se apaga.
Cuando se presiona el botón de AddWater, la instrucción de TOT se restablece y comienza a totalizar la cantidad de agua que fluye en el tanque. Una vez el destino se alcanza el valor, la instrucción de TOT establece la salida de TargetFlag, que causa la válvula de solenoide para cerrar. Para este ejemplo, la instrucción de TOT fue «cerrados» en programa ejecuta el ProgProgReq y ProgStartReq entradas. Esto se hace en este ejemplo porque el operador no necesita controlar directamente la instrucción de TOT.
El bloque de función IMC controla una variable de proceso individual mediante la manipulación de un salida de variable de control única. Este bloque de función realiza un algoritmo donde la señal de error real es comparada contra la de una interno de primer orden quedan además deadtime modelo del proceso. El bloque de función IMC calcula la control de salida variable (CV) en el modo automático basado en el PV - SP desviación, modelo interno y sintonía.
En cada ejecución, el bloque de función IMC compara la PV real medición con la predicción de PV. El resultado se llama estimación de disturbio, que el efecto de las perturbaciones del proceso se combina con el modelado de imprecisión. La estimación de disturbio se utiliza como un prejuicio para la valor de la variable de control. En el caso ideal sin perturbaciones y se convierte en el perfecto modelado, la estimación de perturbación (la señal de retroalimentación) igual a cero.
El bloque de función IMC puede usarse en lugar de un bloque de función PID con el ventaja con respecto a la variable de control del PID al controlar procesos con grandes tiempos.
Para un tipo de proceso integrador (como control y posición de control de nivel), un modelo nonintegrating interno se usa para aproximar el proceso de integración.
El parámetro de Factor se utiliza para convertir el proceso de integración identificado modelo a un modelo interno nonintegrating que se utiliza para el cálculo de CV. Esto es necesario establecer para la ejecución estable de IMC.
SINTONIZACIÓN IMC
Procedimiento de ajuste de bloque IMC Function
Siga estos pasos para configurar el sintonizador.
1. Ponga el CV en modo Manual.
2. establezca el parámetro AtuneStart.
El sintonizador empieza a recoger datos de PV y CV para el cálculo de ruido.
3. después que recoge 60 muestras (60 * DeltaT), el sintonizador agrega StepSize para el CV.
4. establecer el parámetro AtuneUseModel para copiar los parámetros de sintonía a la parámetros del modelo.
El bloque de función entonces restablece el parámetro AtuneUseModel.
Después de un éxito AutoTuneDone, el parámetro Atune se establece en un (1).
Tuning ha completado con éxito.
Errores de ajuste de bloque IMC función
Si se produce un error durante el procedimiento de sintonización, la afinación se aborta y la AtuneStatus bit está establecido. Puede cancelar la sintonización estableciendo el bit AtuneAbort.
Después de una interrupción, el CV asumirá su valor antes del cambio de paso y la Parámetros GainTuned, TCTuned, DTTuned y RespTCTuned no son actualizado. El parámetro AtuneStatus identifica la razón de la interrupción.
Inicialización de modelo de bloque de función IMC
Se produce una inicialización del modelo:
· durante la primera exploración del bloque
· Cuando el parámetro de solicitud ModelInit
· Cuando DeltaT cambia
Puede que necesite ajustar manualmente los parámetros del modelo interno o el constantes de tiempo de respuesta. Puede hacerlo cambiando el apropiado parámetros y ajuste la broca de ModelInit apropiada. Los Estados internos de la bloque de función se inicializará, y la broca se restablecerá automáticamente.
Por ejemplo, si se modifica el bloque de función IMC ganancia de modelo de CV - PV, establecer el parámetro ModelInit para fiel a inicializar el CV - modelo interno de PV parámetros y fines el nuevo modelo en vigor
La instrucción de control de modelo interno (IMC).
Esta instrucción controla una única variable de proceso manipulando un único resultado. 
la instrucción compara la señal de proceso real con un modelo interno. El modelo interno puede
se introducirá manualmente, o se puede utilizar el Sintonizador incorporado. Esta instrucción es la más conveniente
para los procesos con los deadtimes largos que son difíciles de controlar con el PID estándar
Instrucciones. Los parámetros de instalación y configuración, así como la función AutoTune, son
muy similar a la instrucción pide.
Nota: la instrucción pide utiliza un AUTOTUNE para generar un modelo de proceso que es entonces
se utiliza para generar valores de ganancia de P, I y D. Una vez que las ganancias se calculan el modelo no es
utilizado en el bucle de control. La instrucción IMC utiliza el modelo de proceso directamente y
compara continuamente la respuesta del proceso (PV) con la respuesta modelada. Esto resulta en
un control más ajustado al punto de consigna para los procesos con deadtimes largo, en comparación con pide
Rendimiento.
La instrucción de CC controla una variable de proceso individual mediante la manipulación de hasta tres variables de control diferentes. Como opción, cualquiera de las tres salidas puede utilizarse como insumo para crear acción alimentación del controlador. El CC calcula las variables de control (CV1, CV2 y CV3) en el modo automático basado en el PV - SP desviación, modelos internos y tuning.
Descripción
Control coordinado es un algoritmo basado en el modelo flexible que puede utilizarse en diversas configuraciones, por ejemplo:
• Tres variables de control se utilizan para controlar una variable de proceso
• Calor-frío split control de rango
• Control Feedforward
• Control de temperatura de zona
• Control de restricción
En la siguiente ilustración es un ejemplo de la configuración de lazo cerrado de Control coordinado.
El bloque de función se comporta de una manera definida para cualquier combinación de CV activo y destino en las listas y los modos de CV automático-Manual. El bloque de función intenta lograr estos objetivos en el siguiente orden de prioridades:
1. control de PV a SP
2. Target1stCV de control a su valor objetivo
3. Target2ndCV de control a su valor objetivo
Si cualquier CV se pone en modo Manual, el bloque de función CC abandona el objetivo con prioridad 3. Si dos CV está en modo Manual, el bloque de función CC se reduce a un IMC (sola entrada, solo salida) variable de control controla el PV para su ajuste.
Además de esto, sin embargo, la variable de control lee los valores de CV Manual de la CV que son en modo Manual como señales de feedforward. Entonces, la función CC 
bloque predice la influencia de los valores de CV Manual en elPV mediante el uso de los modelos internos apropiados y calcula el CV tercera que permanece en el modo automático.
Para la integración de tipos de proceso (tales como control de nivel de control y posición), modelos internos de nonintegrating se utilizan para aproximar el proceso de integración. El parámetro de Factor se utiliza para convertir los modelos de procesos de integración identificados a nonintegrating modelos internos para cálculo de CV. Esto es necesario establecer para la ejecución del bloque de función estable.
Se produce una inicialización del modelo:
• Durante la primera exploración del bloque
• Cuando el parámetro de solicitud ModelInit
• Cuando DeltaT cambia
Puede que necesite ajustar manualmente los parámetros del modelo interno o las constantes de tiempo de respuesta. Puede hacerlo cambiando los parámetros adecuados y estableciendo el bit apropiado de ModelInit. Se inicializarán los Estados internos de la variable de control, y la broca se restablecerá automáticamente.
Por ejemplo, modificar la ganancia del modelo CV2 - Modelo PV. Establezca el parámetro ModelInit2 a fiel a inicializar el CV2 - parámetros de modelo interno de PV y para la ganancia de modelo nuevo vigor.
1. En el Controller Organizer dentro de la carpeta User-defined bajo Data Types, haga clic con el botón derecho del mouse en User-Defined.
2. Seleccione New Data Type.
3. Escriba un nombre y descripción para el tipo de datos definido por el usuario. Una descripción es opcional.
4. Para cada miembro del tipo de datos definido por el usuario, escriba un nombre, tipo de datos, estilo y descripción.
5. Haga clic en la columna External Access y seleccione un atributo.
Limite las matrices a una única dimensión.
Para visualizar el valor o los valores del miembro en un estilo diferente (base), seleccione el estilo.
6. Haga clic en Apply.
7. Añada los miembros que necesite.
CONTROL BATCH
El proceso de control tipo BATCH  (o dosificación control) se utiliza principalmente para operaciones de relleno repetido que conducen a la producción o el transporte de cantidades finitas de material, sometiendo las cantidades de entrada materiales a un conjunto ordenado de las actividades de procesamiento en un período finito y utilizando una o más piezas de equipo. Sistemas de control por BATCHs también están diseñados a medida, control y dispensan cualquier volumen de líquido de tambores, tanques u otro recipiente grande. Generalmente, son utilizados en cualquier industria donde procesamiento por BATCHs, embalaje químico o dilución es necesaria para ser exacto y eficiente. Por ejemplo, en el industrias de productos farmacéuticos y de consumo, sistemas de control de BATCHs proporcionan automatización completa de procesos por BATCHs, incluyendo la mezcla, mezcla y reaccionando de productos tales como mezclas de especies, productos lácteos productos, bebidas y productos de cuidado personal.
Las típicas aplicaciones por Lote   incluyen envases químicos, tratamiento de aguas residuales, máquina fabricación farmacéutica relleno y galvanoplastia industrial. Figura 8.9 da algunos ejemplos de aplicaciones típicas de control por lotes. Como se muestra en el primer ejemplo, el controlador de lote es ideal para discreta de fabricación así como las operaciones de relleno repetitivas. Aquí, el controlador de lote cuenta botellas que luego agrupa en paquetes de seis unidades. Su capacidad de control puede utilizarse para rastrear las botellas o paquetes de 6. El segundo ejemplo es una aplicación de relleno de tambor, en el que el controlador de lote utiliza su máximo de tres relés para el control de la bomba. El relé prewarn ralentiza la bomba cerca de la preselección para evitar rebasamiento.  El relé de lote detiene la bomba en la preselección. El relé de control detiene la operación de llenado una vez se han llenado un número predeterminado de tambores. El tercero es para lotes múltiples controladores que puede utilizarse en combinación para controlar la mezcla de materiales en la proporción adecuada. Cada línea de alimentación es equipado con su propia bomba, medidor de flujo y laureado. Configuración del controlador y monitoreo de la mezcla operación son facilitadas por comunicaciones serial opcional. Un RS-232 o RS-485 IO interfaz permite una línea única de datos para manejar múltiples controladores.
Estándares de control de lotes
Antes del advenimiento de estándares aceptados en la industria de procesamiento por lotes, cada instalación por lotes operados en su propio mundo. Incluso algo tan básico como la nomenclatura fue diferente en cada planta. ¿Qué podría ser llamado un "run" en una instalación puede ser llamado un "lote" en otro. Lo que era una "fórmula" para uno Gerente podría ser una "receta" a otro. Metodologías de proceso variaron como ampliamente. Allí fueron tantas maneras de estructurar y ejecutar un lote como hay instalaciones en el mundo.
En 1995, ISA (la instrumentación, sistemas y automatización sociedad) aprobó uno de sus primeros normas de procesamiento por lotes, llamado ISA-88 o simplemente S88. Estas normas proporcionan un marco para el diseño y operación de instalaciones de lote, especificando la terminología, modelos de procesos, estructuras de datos y mucho más. Otra norma, ISA-95 o S95, fue desarrollado en el año 2000. Esta norma es una consecuencia de la S88 estándar y comúnmente referida como una norma internacional para el desarrollo de una interfaz automatizada entre la empresa y control de sistemas.
Los estándares S88 y S95 han sido ampliamente aceptados por el lote de fabricación comunitaria en todo el mundo, que ha permitido a las empresas a mejorar la comunicación, promover la modularidad, reducir los costos de mantenimiento y tiempo de inactividad y mejorar el rendimiento general. El ahorro puede ser sustancial Según ISA, las plantas usando estándares de procesamiento por lotes pueden ahorrar hasta 30 del costo de diseño e implementación de un lote de sistema desde cero y guardar las operaciones domésticas de procesamiento para arriba a 15 de los costos de cumplimiento de los criterios para la confiabilidad de la automatización.
ANSIISA-88
ISA-88, o S88, es un estándar que se ocupa de control de proceso por lotes que fue aprobado por la ISA en 1995. Fue adoptado por la IEC en 1997 como IEC 61512-1. Es una filosofía de diseño para describir el equipo y procedimientos y es igualmente aplicable a los procesos manuales. Las partes actuales del estándar S88 incluyen;
1. ANSIISA-88.01-1995 lote Control parte 1: Modelos y terminología.
2. ANSIISA-88.00.02-2001 lote Control parte 2: Estructuras de datos y las directrices para las  lenguas.
3. ANSIISA-88.00.03-2003 lote Control parte 3: Modelos de receta General y sitio y representación.
4. ANSIISA-88.00.04-2006 lote Control parte 4: Records de producción por lotes.
S88 proporciona un conjunto consistente de terminología y normas para el control de lotes y define la física modelo, modelo de proceso procedimientos y recetas. Cada uno de los procesos en el modelo consiste en un ordenado conjunto de etapas que a su vez consta de un conjunto ordenado de las operaciones de proceso constituido por un conjunto ordenado de acciones.
El modelo físico comienza con la empresa, que debe contener un sitio web que puede contener áreas que puede contener células de proceso que deben contener una unidad que puede contener módulos de equipo que pueden contener módulos de control. Algunos de estos niveles pueden ser excluidos, pero no la unidad.
El modelo de control de procedimiento consiste en los procedimientos de la receta que consisten en un conjunto ordenado de unidad procedimientos que consisten en un conjunto ordenado de operaciones que consisten en un conjunto ordenado de fases.
Algunos de estos niveles pueden ser excluidos. Otra cuestión fundamental fue separar recetas de equipo o equipos independientes recetas. Esto permitió la creación de lotes ágil y flexible fabriles, donde modularidad y podría definirse la reutilización de las recetas y los elementos que componen elmodelo de equipo de planta y Además convertido en objetos y bibliotecas. Recetas podrían ser cualquier sitio general, principal, o control.
Incluir el contenido de la receta; Rúbrica, fórmula, requisitos de equipo, procedimiento y otros información.
ANSI ISA-95
ISA-95 o S95 es una norma internacional para el desarrollo de una interfaz automatizada entre empresa y sistemas de control. Este estándar ha sido desarrollado para fabricantes globales y puede ser aplicado en todas las industrias y en todo tipo de procesos, tales como los procesos por lotes, continuos y repetitivos procesos. Los objetivos de ISA-95 son proporcionar una terminología consistente para el proveedor y fabricante por medio de información consistente y modelos de operaciones, que son una base para clarificar funcionalidad de la aplicación y qué información se va a utilizar.
Dentro de las áreas de producción, las actividades se ejecutan y se pasa información de ida y vuelta. El Standard ofrece modelos de referencia para las actividades de producción, las actividades de control de calidad, mantenimiento las actividades y las actividades de inventario.
Hay cinco partes de la ISA-95 estándar, listados abajo:
1. ANSIISA-95.00.01-2000, empresa-Control sistema integración parte 1: Modelos y terminología consiste en terminología estándar y modelos de objetos, que pueden ser utilizados para decidir la información que debe cambiarse.
2. ANSIISA-95.00.02-2001, empresa-Control sistema integración parte 2: Atributos del modelo de objeto se compone de atributos para cada objeto que se define en parte 1. Los objetos y atributos de la parte 2 puede ser utilizado para el intercambio de información entre diferentes sistemas, pero estos objetos y atributos también pueden ser utilizados como base para bases de datos relacionales.
3. ANSIISA-95.00.03-2005, integración de sistema de Control de la empresa, parte 3: Modelos de Gestión de las operaciones de fabricación se centra en las funciones y actividades en el nivel 3 (Capa de MES de producción; MES: Fabricación de sistema de ejecución). Proporciona directrices para describir y comparar los niveles de producción de los diferentes sitios de forma estandarizada.
4. ISA-95.04 objeto modelos atributos parte 4 de ISA-95: modelos y atributos de objeción Gestión de operaciones de fabricación. Esta especificación técnica define objeto modelos que determinar la información que se intercambia entre las actividades MES (que se definen en parte 3 de ISA-95). Los atributos de la parte 4 y modelos son la base para el diseño y la implementación de estándares de interfaz y asegurar la cooperación flexible y el intercambio de información entre las diferentes actividades MES.
5. ISA-95.05 B2M transacciones parte 5 de ISA-95: negocio a la fabricación de las transacciones. Esto Especificación técnica define operación entre sistemas de automatización de oficina y producción, que puede ser utilizado junto con los modelos de objetos de las partes 1 y 2. Conectan las operaciones y organizar los objetos de producción y las actividades que se definen en las partes anteriores de la estándar. Estas operaciones tienen lugar en todos los niveles dentro de un negocio, pero el foco de este Especificación técnica se encuentra en la interfaz entre la empresa y control de sistemas. En el base de modelos, la operación será descrita y el procesamiento de la operación es lógicamente explicó
Sistemas de control de lotes
Sistemas de control de lotes
Mayoría de los sistemas de control de lote proporciona controles de proceso automatizado, incluyendo el desarrollo de la receta, gestión de lotes y ejecución, producción, programación, funcionamiento de los equipos de monitoreo, historia de la producción y las funcionalidades de seguimiento de material. Sin embargo, algunos sistemas de control de lotes son también diseñado para mejorar la programación batch, consistencia de lote y la colección automática de tiempo real, datos del evento lote confiable y precisa. Esto es porque la industria ahora necesita producir más pequeño lotes de productos con mayor variación, de forma rápida y eficiente. Hay una gama de control por lotes sistemas, diseñado y aplicado usando las normas ISA-88 y optimizado utilizando ISA-95 normas, para producir lotes de producto en varias ocasiones y constantemente con costos mínimos.
Las arquitecturas de sistemas de control del lote dependen de sus estructuras físicas. Hay tres clases de estructura física aprobado en la ANSISA-88.01-1995:
1. Una estructura de single-path es un grupo de unidades a través del cual un lote pasa secuencialmente (ver Figura 8.10(a)). Una estructura única ruta podría ser una sola unidad, como un reactor o varias unidades en la secuencia. Normalmente se utilizan materiales de entrada múltiple; múltiples materiales acabados pueden ser generado. Pueden ser varios lotes en marcha al mismo tiempo.
2. Una estructura de múltiples paths se muestra en la figura 8.10(b). Se compone de varias estructuras de single-camino en paralelo con ninguna transferencia de producto entre ellos. Las unidades pueden compartir las fuentes de materia prima y almacenaje del producto. Pueden ser varios lotes en marcha al mismo tiempo. Aunque las unidades dentro de una estructura de múltiples paths puede ser físicamente similar, es posible tener caminos y unidades de una estructura multipath de diseño físico radicalmente diferente. 3. Una estructura de red se muestra en la figura 8.10(c). Los caminos pueden ser fijas o variables. Cuando el caminos son fijos, se utilizan las mismas unidades en la misma secuencia. Cuando el camino es variable, la secuencia puede ser determinado al principio del lote o se podrá determinar como el lote se está produciendo. La ruta también podría ser totalmente flexible. Por ejemplo, no tendría un lote para empezar en unidad 1 o 3 de la unidad; podría empezar con cualquier unidad y tomar varias rutas a través de la célula del proceso. Las unidades se pueden ser portátiles dentro de la célula del proceso. En este caso, verificación de las conexiones de proceso puede ser una parte importante de los procedimientos. Tenga en cuenta que pueden ser varios lotes en producción al mismo tiempo. Las unidades pueden compartir materia prima fuentes y almacenaje del producto.
Un sistema de control de lote típico, independientemente de la estructura física, consta de los siguientes componentes:
1. Campo dispositivos, tales como sensores, actuadores e instrumentación, proporcionan el sistema de control de lotes con información y permiten controlar el proceso de producción.
2. Controladores lote, como especial PLC, CNC, computadoras industriales o paquetes de software, que recibir las señales de los dispositivos de campo y las procesa según predefinidos secuencias para controlar los actuadores, tales como bombas, válvulas y motores.
3. Human machine interface como un sistema que permite la interacción con los operadores en la planta monitorear el estado del sistema de control por lotes, para emitir comandos y modificar los parámetros.
4. Aplicación lote, que visualiza y desarrolla recetas. Con estos componentes, sistemas de control de proceso por lotes todos son capaces de realizar las siguientes funciones:
1. Debe haber una interfaz IO entre los procesos y el control. La interfaz IO pasa todo la información que se mueve entre las dos partes del sistema total.
2. El sistema de control debe proporcionar funciones de control continuo para regular las porciones adecuadas de el proceso.
3. El sistema de control debe proporcionar funciones de control secuencial. Un control correctamente diseñado por lotes systemshould hacerlo fácil describir la secuencia de las operaciones y los controles que deben llevarse a cabo.
4. El sistema de control debe proporcionar pantallas y las interfaces que el operador puede utilizar para supervisar y actividad de proceso directo.
En particular, si el sistema de control de un lote es digital debe tener funciones adicionales:
1. Adigital sistema de control que permite que el procesode manejar una gama de productos y no sólo una sola. El uso de recetas es un método conciso y conveniente para describir los pasos del proceso para cada producto.
2. Un sistema de control avanzado que proporciona un entorno de multiprogramación en que cada específico tarea puede ser programado en una simple moda independiente. El sistema debe permitir también más de una unidad en la planta para controlar al mismo tiempo.
3. Un sistema de control avanzado que proporcionan muestra que están orientados hacia el proceso total en lugar de hacia parámetros individuales.
4. Un sistema de control avanzado que automáticamente detecta y corrige trastornos de proceso y equipo fracasos.
5. Un sistema de control avanzado que proporciona para operaciones de dispositivos que reducen la complejidad de la lógica que el usuario debe ocuparse. Hay muchas operaciones repetidas y mundanas y errorchecking funciones que deben hacerse donde manipular válvulas, bombas, motores, ventiladores y así en que puede manejarse mejor en paquetes de dispositivo que estandarizan este tipo de operaciones
Mecanismo de control por lotes
Mecanismo de control por lotes
El mecanismo de control del lote depende de dos factores; Administración de los procesos por lotes y el manejo recetas y lotes.
(1) Lote de gestión de procesos
Los procesos por lotes lidiar con discretas cantidades de materias primas o productos. Permiten más de uno tipo de producto a procesar simultáneamente, mientras los productos están separados por el equipo diseño de página. Implica que el movimiento de productos discretos de procesamiento de área a área de procesamiento. Tienen recetas (o las instrucciones de procesamiento) asociados con cada carga de materia prima a ser procesada en producto. Tienen lógica más complejo asociado con el procesamiento que se encuentra en continuo los procesos y a menudo incluyen pasos normales que pueden fallar y así también incluyen medidas especiales el evento de una falla, que por lo tanto da gran importancia a manejo de excepciones en los procesos por lotes.
Cada paso puede ser simple o compleja en la naturaleza, que consta de una o más operaciones. Generalmente, una vez se inicia un paso debe completarse para tener éxito. No es infrecuente que requieren de un operador aprobación antes de dejar un paso y a partir de la próxima. Con frecuencia existe una disposición para no-normal salidas a tomar debido a la intervención del operador, fallas del equipo o la detección de peligrosos condiciones. Dependiendo de la receta para el producto siendo procesado, puede evitarse un paso para algunos productos. Las operaciones de procesamiento para cada paso son generalmente bajo control de la receta, pero pueden ser modificado por la acción de anulación de operador. El paso de un proceso típico se muestra en la figura 8.11.
Receta y lote de capacidad son requisitos de la norma en muchas industrias y aplicaciones. Lote de todos sistemas de control compatibles con las normas ISA-88, ISA-95 deben prestar pleno apoyo por lotes y receta manejo, incluida la receta; forma automática de llenado; creación automática de lotes y monitoreo; y la prueba del proceso de reporting. Para realizar la receta y lote de manejo, las instalaciones más abajo pueden ser muy útil.
(1) Datos de receta
Datos de la receta son una colección de control conjunto de puntos que definen los parámetros necesarios para hacer un producto específico o para controlar un proceso específico. Esta manipulación permite a cualquier número de tales recetas para ser creado, editado y llamado a través de los formularios definidos por el usuario (tal como en formato Microsoft Access).
Estas formas pueden mostrar los datos de la receta y opcionalmente permite artículos a modificar. Pueden también permitir datos adicionales que debe figurar que no forman parte de la receta, pero que puede exigirse como parte de la historia del lote
Estados
La parte 1 de la norma S88 define el término Estados para las entidades de equipo (Células, Unidades, Módulos de control y módulos de equipo) y para los elementos de control de procedimientos (Procedimiento de Unidad, Operación y Fases).
En el caso particular de las Fases, los estados representan un instante de operación del equipo asociado, caracterizado por las acciones o condiciones del equipo en dicho instante. Algunas de los Estados definidos son:
Stopped. Indica las condiciones en las que debe permanecer el equipo cuando éste es detenido.
Running. Indica las acciones que el equipo debe tomar cuando está en ejecución.
Holding. Indica las acciones que el equipo ha de tomar para pasar a un estado de espera o reposo.
El conjunto de instantes o Estados puede ser clasificado en dos grupos: Los Estados de Acción (en los que se indican acciones a tomar por el equipo) y los Estados de Espera (en donde se indican las condiciones en las que debe permanecer un equipo entre estados de acción).
Nota. No es necesario emplear todos los estados en la codificación de una fase.
Para permitir la transición entre estados se definen los comandos. Los comandos representan condiciones (generalmente lógicas) que deben ser validadas con el fin de pasar de un estado cualquiera a otro. Algunos de los comandos definidos son: Start, Stop, Hold, Restart, Abort, Reset, Pause, Resume.
Una manera de documentar el modelo de estados propuesto es mediante la matriz de transición de estados ilustrada en la siguiente figura.
Si el estado Running se ejecuta y ningún comando se habilita durante su ejecución, entonces terminará en el estado Complete. Sin embargo, durante la ejecución de Running (antes de alcanzar el estado Complete) puede pasar lo siguiente:
• Se válida el comando Stop, entonces el sistema pasará al estado Stopping.
• Se válida el comando Hold, entonces el sistema pasará al estado Holding.
• Se válida el comando Abort, entonces el sistema pasará al estado Aborting.
• Se válida el comando Pause, entonces el sistema pasará al estado Paused
Otra manera de documentar el modelo de estados de manera gráfica se presenta en la siguiente figura:
Phase Manager en RSLogix 5000
El editor RSLogix 5000 incluye la herramienta PhaseManager la cual ha sido diseñada con base en el modelo de estados anteriormente expuesto. Agitar todo Las Fases creadas con la herramienta PhaseManager se asimilan al término Programa empleado para la organización general de un proyecto en RSLogix 5000 [Intro al entorno RSlogix 5000].
Creación de una fase. Para crear una fase seleccione la Tarea a la que debe pertenecer y presione click derecho. Seguidamente elija la opción New Equipment Phase y siga el procedimiento que se indica en la siguiente figura:
Al crear una fase, automáticamente se crearán las tags relacionadas con los estados y los comandos del modelo. Por ejemplo al crear la fase Add_Water obtendremos en el editor de tags lo siguiente:
Aunque teóricamente no existe un comando para realizar una transición entre los estados Running y Completed o entre Pausing y Paused, en la práctica resulta necesario incluir un bit denominado DONE que se debe activar cuando el estado realizado por la fase ha concluido. (o la instrucción PSC Phase State Complete)
La lógica perteneciente a cada uno de los estados del modelo propuesto por la S88 (running, holding, paused,…) se puede adicionar mediante rutinas siguiendo el procedimiento indicado en la siguiente figura:
Nota. Las instrucciones POVR (Phase Override) permiten generar comandos en la lógica de su rutina. Algunas de estas instrucciones son: PCMD, POVR, PATT.
El modelo de estado no supone un estado inicial para la ejecución de la fase, así que existe la posibilidad de configurar cualquier estado como inicial. En el caso del PhaseManager este procedimiento será como se describe en la siguiente figura:
Para habilitar un estado se debe generar un comando de fase. El comando le indica a la fase de equipo la transición requerida. Estos comandos serán gestionados por el Factory Talk Batch.
El texto estructurado es un lenguaje de programación textual que usa enunciadospara definir lo que se va a ejecutar.
• El texto estructurado trata indistintamente las mayúsculas y las minúsculas.
• Use tabulaciones y retornos de carro (nuevas líneas) para facilitar la lectura del texto estructurado. Éstos no tienen ningún efecto en la ejecución del texto estructurado. El texto estructurado trata indistintamente las mayúsculas y las minúsculas. El texto estructurado puede contener estos componentes:
Asignaciones Use una asignación para cambiar el valor almacenado dentro de un tag. Una asignación tiene esta sintaxis:
tag := expression ;
donde:
El tag retiene el valor asignado hasta que otra asignación cambia el valor. La expresión puede ser simple, como un valor inmediato u otro nombre de tag, o la expresión puede ser compleja e incluir varios operadores y/o funciones.
SUGERENCIA
Los datos del módulo de E/S se actualizan de manera asíncrona a la ejecución de la lógica. Si usted hace referencia a una entrada múltiples veces en la lógica, la entrada podría cambiar de estado entre las distintas referencias. Si necesita que la entrada tenga el mismo estado en cada referencia, almacene en el búfer el valor de entrada y haga referencia a dicho tag en el búfer.
Especifique una asignación no retentiva.
La asignación no retentiva es diferente de la asignación regular descrita anteriormente, porque el tag en una asignación no retentiva se restablece a cero cada vez que el controlador:
• entra al modo marcha.
• deja el paso de un SFC si usted configura el SFC para restablecimiento automático (esto sólo se aplica si usted incorpora la asignación en la acción del paso, o si usa la acción para llamar a una rutina de texto estructurado mediante una instrucción JSR).
Una asignación no retentiva tiene esta sintaxis:
tag [:=] expression ;
donde:
Asigne un carácter ASCII a una cadena.
Use el operador de asignación para asignar un carácter ASCII a un elemento del miembro DATA de un tag de cadena. Para asignar un carácter, especifique el valor del carácter o el nombre del tag, el miembro DATA y el elemento del carácter.
Para añadir o insertar una cadena de caracteres a un tag de cadena, use cualquiera de estas instrucciones de cadena ASCII 
Expresiones Una expresión es el nombre de un tag, una ecuación o una comparación. Para escribir una expresión, use uno de estos elementos.
• Nombre de tag que almacene el valor (variable)
• Número que usted introduce directamente en una expresión (valor inmediato)
• Funciones, tales como: ABS, TRUNC
• Operadores, tales como: +, -, <, >, And, Or A medida que usted escriba las expresiones, siga estas reglas generales.
• Use cualquier combinación de mayúsculas y minúsculas. Por ejemplo, estas tres variaciones de “AND” son aceptables: AND, And, and.
• Para requisitos más complejos, use paréntesis para agrupar expresiones dentro de expresiones. Esto hace que toda la expresión sea más fácil de leer y asegura que la expresión se ejecute en la secuencia deseada.
IMPORTANTE 
Usted puede añadir comentarios de usuario en línea. Por lo tanto, la conmutación de lenguaje local no se aplica a su lenguaje de programación.
En texto estructurado usted usa dos tipos de expresiones:
Expresión BOOL: Una expresión que produce ya sea el valor BOOL de 1 (verdadero) o 0 (falso).
• Una expresión Bool usa tags bool, operadores con relaciones y operadores lógicos para comparar valores o verificar si las condiciones son verdaderas o falsas. Por ejemplo, tag1>65.
• Una expresión Bool simple puede ser un tag BOOL sencillo.
• Normalmente usted usa expresiones BOOL para condicionar la ejecución de otra lógica.
Expresión numérica: Una expresión que calcula un valor entero o de coma flotante (punto flotante).
• Una expresión numérica usa operadores aritméticos, funciones aritméticas y operadores bit a bit. Por ejemplo, tag1+5.
• A menudo usted anida una expresión numérica dentro de una expresión BOOL. Por ejemplo, (tag1+5)>65.
Use la siguiente tabla para seleccionar operadores para sus expresiones:
Use operadores y funciones aritméticas
Usted puede combinar múltiples operadores y funciones en expresiones aritméticas.
Los operadores aritméticos calculan nuevos valores.
Las funciones aritméticas realizan operaciones matemáticas. Especifique una constante, un tag no booleano o una expresión para la función.
Por ejemplo:
Use operadores con relaciones
Los operadores con relaciones comparan dos valores o cadenas para proporcionar un resultado verdadero o falso. El resultado de una operación con relaciones es un valor BOOL.
Use estos operadores con relaciones.
Por ejemplo:
Cómo se evalúan las cadenas
Los valores hexadecimales de los caracteres ASCII determinan si una cadena es menor o mayor que otra cadena.
• Cuando las dos cadenas se clasifican como en un directorio telefónico, el orden de las cadenas determina cuál es mayor
• Las cadenas son iguales si sus caracteres coinciden.
• Los caracteres distinguen entre minúsculas y mayúsculas. La “A” mayúscula ($41) no es igual a la “a” minúscula ($61).
Use operadores lógicos
Los operadores lógicos le permiten verificar si múltiples condiciones son verdaderas o falsas. El resultado de una operación lógica es un valor BOOL.
Use estos operadores lógicos:
Por ejemplo:
Use operadores bit a bit
Los operadores bit a bit manipulan los bits dentro de un valor basado en dos valores.
Por ejemplo:
Determine el orden de ejecución
Las operaciones que usted escribe en una expresión se realizan en un orden predeterminado, no necesariamente de izquierda a derecha.
• Las operaciones de igual orden se realizan de izquierda a derecha.
• Si una expresión contiene múltiples operadores o funciones, agrupe las condiciones en paréntesis “( )”. Esto asegura el orden correcto de ejecución y facilita la lectura de la expresión.
Instrucciones Los enunciados de texto estructurado también pueden ser instrucciones. Una instrucción de texto estructurado se ejecuta cada vez que se escanea. Una instrucción de texto estructurado dentro de una construcción se ejecuta cada vez que las condiciones de la construcción son verdaderas. Si las condiciones de la construcción son falsas, los enunciados dentro de la construcción no se escanean. No existe una condición de renglón o transición de estado que active la ejecución.
Esto es diferente de las instrucción de bloque de funciones que usan EnableIn para activar la ejecución. Las instrucciones de texto estructurado se ejecutan como si EnableIn siempre estuviera establecido.
Esto también es diferente de las instrucciones de lógica de escalera que usan condición de entrada de renglón para activar la ejecución. Algunas instrucciones de lógica de escalera de relés sólo se ejecutan cuando la condición de entrada de renglón cambia de falso a verdadero. Éstas son instrucciones de lógica de escalera de relés transicionales. En texto estructurado, las instrucciones se ejecutan cada vez que son escaneadas, a menos que usted condicione previamente la ejecución de la instrucción de texto estructurado.
Por ejemplo, la instrucción ABL es una instrucción transicional en lógica de escalera de relés. En este ejemplo, la instrucción ABL sólo se ejecuta en un escán cuando tag_xic cambia de borrado a establecido. La instrucción ABL no se ejecuta cuando tag_xic permanece establecido ni cuando se borra tag_xic.
En texto estructurado, si usted escribe este ejemplo como:
IF tag_xic THEN ABL(0,serial_control);
END_IF;
la instrucción ABL se ejecuta en cada escán en que tag_xic se establece, no sólo cuando tag_xic cambia de borrado a establecido.
Si desea que la instrucción ABL se ejecute sólo cuando tag_xic cambia de borrado a establecido, tiene que condicionar la instrucción de texto estructurado. Use un impulso para activar la ejecución.
osri_1.InputBit := tag_xic;
OSRI(osri_1);
IF (osri_1.OutputBit) THEN
ABL(0,serial_control);
END_IF;
Construcciones 
Las construcciones pueden programarse individualmente o anidadas dentro de otras construcciones.
Algunas palabras clave están reservadas para uso futuro
Estas construcciones no están disponibles:• GOTO
• REPEAT
El software RSLogix 5000 no le permite usarlas.
IF...THEN
 Use IF…THEN para hacer algo si o cuando ocurra una condición específica.
Operandos:
Descripción: La sintaxis es:
Para usar ELSIF o ELSE, siga estas pautas.
1. Para seleccionar entre varios posibles grupos de enunciados, añada uno o más enunciados ELSIF.
• Cada enunciado ELSIF representa una ruta alternativa.
• Especifique todas las rutas ELSIF que necesite.
• El controlador ejecuta el primer enunciado IF o ELSIF verdadero y se salta el resto de los enunciados ELSIFs y ELSE.
2. Para hacer algo cuando todas las condiciones IF o ELSIF son falsas, añada un enunciado ELSE.
Esta tabla resume combinaciones de IF, THEN, ELSIF, and ELSE.
Indicadores de estado
aritméticos:
No afectados
Condiciones de fallo: Ninguno
Ejemplo 1: IF…THEN
[:=] le indica al controlador que restablezca la luz cada vez que el controlador:
• entre al modo marcha.
• deje el paso de un SFC si usted configura el SFC para restablecimiento automático (esto se aplica sólo si usted incorpora la asignación en la acción del paso, o si usa la acción para llamar a una rutina de texto estructurado mediante una instrucción JSR).
Ejemplo 3: IF…THEN…ELSIF
[:=] le indica al controlador que restablezca Sugar.Inlet cada vez que el
controlador:
• entre al modo marcha.
• deje el paso de un SFC si usted configura el SFC para restablecimiento automático (esto se aplica sólo si usted incorpora la asignación en la acción del paso, o si usa la acción para llamar a una rutina de texto estructurado mediante una instrucción JSR).
Ejemplo 4: IF…THEN…ELSIF…ELSE
Use CASE para seleccionar qué hacer en base a un valor numérico.
Operandos:
Texto estructurado
IMPORTANTE 
Si usa valores REAL, use un rango de valores para un selector porque un valor REAL es más probable que esté dentro de un rango de valores que una coincidencia exacta de un valor específico.
Descripción: La sintaxis es:
La sintaxis para introducir los valores de selector es:
La construcción CASE es similar a un enunciado de interruptor en los lenguajes de programación C o C++. Sin embargo, con la construcción CASE el controlador ejecuta sólo los enunciados asociados con el primer valor de selector coincidente. La ejecución siempre se interrumpe después de los enunciados de dicho selector y va al enunciado END_CASE.
Indicadores de estado aritméticos:
No afectados
Condiciones de fallo: Ninguno
Ejemplo
[:=] le indica al controlador que también restablezca los tags de salida cada vez que el controlador:
• entre al modo marcha.
• deje el paso de un SFC si usted configura el SFC para restablecimiento automático (esto se aplica sólo si usted incorpora la asignación en la acción del paso, o si usa la acción para llamar a una rutina de texto estructurado mediante una instrucción JSR).
Use CASE para seleccionar qué hacer en base a un valor numérico.
Operandos:
Texto estructurado
IMPORTANTE 
Si usa valores REAL, use un rango de valores para un selector porque un valor REAL es más probable que esté dentro de un rango de valores que una coincidencia exacta de un valor específico.
Descripción: La sintaxis es:
La sintaxis para introducir los valores de selector es:
La construcción CASE es similar a un enunciado de interruptor en los lenguajes de programación C o C++. Sin embargo, con la construcción CASE el controlador ejecuta sólo los enunciados asociados con el primer valor de selector coincidente. La ejecución siempre se interrumpe después de los enunciados de dicho selector y va al enunciado END_CASE.
Indicadores de estado aritméticos:
No afectados
Condiciones de fallo: Ninguno
Ejemplo
[:=] le indica al controlador que también restablezca los tags de salida cada vez que el controlador:
• entre al modo marcha.
• deje el paso de un SFC si usted configura el SFC para restablecimiento automático (esto se aplica sólo si usted incorpora la asignación en la acción del paso, o si usa la acción para llamar a una rutina de texto estructurado mediante una instrucción JSR).
Use el lazo FOR…DO para hacer algo un número específico de veces, antes de hacer otra cosa.
Operandos:
Texto estructurado
IMPORTANTE Asegúrese de no iterar dentro del lazo demasiadas veces en un solo escán.
• El controlador no ejecuta ningún otro enunciado en la rutina mientras no se complete el lazo.
• Si el tiempo que se requiere para completar el lazo es mayor que el temporizador de control (watchdog) para la tarea, se produce un fallo mayor.
• Considere usar una construcción diferente, por ejemplo IF...THEN.
Descripción: La sintaxis es:
Estos diagramas muestran cómo se ejecuta un lazo FOR...DO y cómo un enunciado EXIT sale del lazo anticipadamente
Indicadores de estado aritméticos:
No afectados
Condiciones de fallo:
Ejemplo 1:
Ejemplo 2:
Use el lazo WHILE…DO para continuar haciendo algo, siempre y cuando ciertas condiciones sean verdaderas.
Operandos:
IMPORTANTE Asegúrese de no iterar dentro del lazo demasiadas veces en un solo escán.
• El controlador no ejecuta ningún otro enunciado en la rutina mientras no se complete el lazo.
• Si el tiempo que se requiere para completar el lazo es mayor que el temporizador de control (watchdog) para la tarea, se produce un fallo mayor.
• Considere usar una construcción diferente, por ejemplo IF...THEN.
Descripción: La sintaxis es:
Estos diagramas muestran cómo se ejecuta un lazo WHILE...DO y cómo un enunciado EXIT sale del lazo anticipadamente
Indicadores de estado aritméticos:
No afectados
Condiciones de fallo:
Ejemplo 1:
Ejemplo 2:
Use el lazo REPEAT…UNTIL para continuar haciendo algo hasta que las condiciones sean verdaderas.
Operandos:
IMPORTANTE Asegúrese de no repetir dentro del lazo demasiadas veces en un solo escán.
• El controlador no ejecuta ningún otro enunciado en la rutina mientras no se complete el lazo.
• Si el tiempo que se requiere para completar el lazo es mayor que el temporizador de control (watchdog) para la tarea, se produce un fallo mayor.
• Considere usar una construcción diferente, por ejemplo IF...THEN.
Descripción: La sintaxis es:
Estos diagramas muestran cómo se ejecuta un lazo REPEAT...UNTIL y cómo un enunciado EXIT sale del lazo anticipadamente.
Indicadores de estado aritméticos:
No afectados
Condiciones de fallo:
Ejemplo 1:
Ejemplo 2:
Un gráfico de funciones secuenciales (SFC) es similar a un diagrama de flujo del proceso. Define los pasos o estados a través de los cuales progresa el sistema. Le ayuda a hacer lo siguiente:
• Organice la especificación funcional para su sistema.
• Programe y controle su sistema como una serie de pasos y transiciones.
Mediante el uso de un SFC para especificar el proceso, obtiene estas ventajas.
• Dado que un SFC es una representación gráfica de su proceso, es más fácil de organizar y leer que una versión textual.
• Añadir notas que clarifiquen los pasos o capturar información importante para su uso más adelante.
• Imprima el SFC para compartir la información con otras personas.
• Dado que los controladores Logix 5000 admiten SFCs, no es necesario introducir la especificación una segunda vez. Está programando el sistema a medida que lo especifica.
Al usar un SFC para programar su proceso, obtiene estas ventajas.
• División gráfica de los procesos en sus principales piezas lógicas (pasos)
• Ejecución repetida más rápida de piezas individuales de su lógica
• Pantalla más simple
• Reducción del tiempo para diseñar y depurar su programa
• Solución de problemas más rápida y sencilla
• Acceso directo al punto de la lógica en el que una máquina averió
• Actualizaciones y mejoras fáciles
QUE ES UN SFC (SEQUENTIAL FUNTION CHART)
Un gráfico de funciones secuenciales (SFC) es similar a un diagrama de flujo. Utiliza pasos y transiciones para realizar operaciones o acciones específicas. Este ejemplo muestra los elementos de un SFC. El SFC continúa en la página siguiente.
Un paso representa una función importante de su proceso. Contiene las acciones que se producen en un momento, fase o estación determinados.
Una acción es una de las funciones que realizaun paso.
Una transición es la condición TRUE o FALSE que indica al SFC cuándo ir al paso siguiente.
Un calificador determina cuándo se inicia y se detiene una acción.
DEFINIENDO LAS TAREAS
El primer paso en el desarrollo de un SFC es separar la configuración y la regulación de los dispositivos de los comandos a esos dispositivos. Los controladores Logix 5000 le permiten dividir su proyecto en una tarea continua y múltiples tareas periódicas y tareas de eventos.
1. Organice su proyecto.
2. Para aquellas funciones que van en una tarea periódica, agrupe las funciones de acuerdo con tasas de actualización similares. Cree una tarea periódica para cada tasa de actualización.
Por ejemplo, los dispositivos de 2 estados pueden requerir actualizaciones más rápidas que los bucles PID. Utilice tareas periódicas separadas para cada una.
En este ejemplo, un proyecto utiliza dos tareas periódicas para regular motores, válvulas y bucles de temperatura. Un SFC controla el proceso.
ELIJA LA OPCION DE EJECUCIÓN
Para ejecutar un SFC, configúrelo como la rutina principal de un programa o llámelo como una subrutina.
Si el SFC utiliza las acciones booleanas, después otra lógica debe ejecutarse independientemente del SFC y monitorear los bits de estado del SFC.
DEFINA LOS PASOS DEL PROCESO
Un paso representa una función importante de su proceso. Contiene las acciones que se producen en un momento, fase o estación determinados.
Una transición termina un paso. La transición define las condiciones físicas que deben ocurrir o cambiar para ir al paso siguiente.
Siga estas pautas.
• Comience con pasos grandes y refinar los pasos en varias pasadas.
• La primera vez que abre una rutina de SFC, contiene un paso inicial y una transición. Utilice este paso para inicializar el proceso.
El controlador ejecuta el paso inicial en estas situaciones.
• Después de una descarga del proyecto cuando el controlador entra en modo de ejecución.
• Cuando el controlador pasa al modo de ejecución y al encendido (si el SFC está configurado para eso).
• Cuando la rutina que contiene el gráfico se modifica en línea y se requiere un restablecimiento, y el controlador pasa hacia o desde el modo de prueba.
• Para identificar un paso, busque un cambio físico en su sistema, como una nueva pieza que esté en posición, una temperatura que se alcance, un tiempo preestablecido que se alcance o una selección de recetas que se produzca. El paso son las acciones que tienen lugar antes de ese cambio.
• Deje de refinar los pasos cuando estén en incrementos significativos. Este es un ejemplo.
SFC ESTRUCTURA DE CADA PASO
Cada paso utiliza una etiqueta para proporcionar información sobre el paso. Acceda a esta información con el cuadro de diálogo Propiedades de paso o la pestaña Etiquetas de monitor de la ventana Etiquetas.
	ESTRUCTURA DE PASOS
	QUÉ SE REQUIERE
	CONSECUENCIA 
SELECCIONAR O APLICAR
	DATA TYPE
	DESCRIPCIÓN
	Establecer una marca cuando el paso ha estado activo durante un período de tiempo específico (milisegundos)
	PRE
	DINT
	Introduzca la hora en el miembro Preset (PRE). Cuando el temporizador (T) alcanza el valor de ajuste preestablecido, el bit Hecho (DN) se enciende y permanece encendido hasta que el paso se vuelve a activar.
Como opción, seleccione Usar expresión y haga clic en Definir para especificar una expresión numérica que calcule el tiempo en tiempo de ejecución.
	
	DN
	BOOL
	Cuando el temporizador (T) alcanza el valor del ajuste preestablecido (PRE), el bit Hecho (DN) se enciende y permanece encendido hasta que el paso se vuelve a activar.
	Establezca una marca si un paso no se ejecute el tiempo suficiente
	LIMIT_LOW
	DINT
	Introduzca la hora en el miembro Limit Low (LimitLow) (milisegundos)
• Si el paso queda inactivo antes de que el temporizador (T) alcance el valor LimitLow, el bit AlarmLow se enciende.
• El bit AlarmLow permanece encendido hasta que lo restablezca.
• Para utilizar esta función de alarma, active (seleccione) el bit De activación de alarma (AlarmEn).
Como opción, escriba una expresión numérica que calcule el tiempo en tiempo de ejecución.
	
	ALARM_EN
	BOOL
	Para utilizar los bits de alarma, active (seleccione) el bit De sin alarma (AlarmEn).
	
	ALARM_LOW
	BOOL
	Si el paso queda inactivo antes de que el temporizador (T) alcance el valor de límite bajo, el bit AlarmLow se enciende. El bit permanece encendido hasta que lo restablezcas.
Para utilizar esta función de alarma, active (seleccione) el bit De sin alarma (AlarmEn).
	Establezca una marca si un paso se está ejecutando demasiado tiempo
	LIMIT_HIGH
	DINT
	Introduzca la hora en el miembro Limit High (milisegundos).
• Si el temporizador (T) alcanza el valor LimitHigh, el bit AlarmHigh se enciende.
• El bit AlarmHigh permanece encendido hasta que lo restablezca.
• Para utilizar esta función de alarma, active (seleccione) el bit De activación de alarma (AlarmEn).
Como opción, escriba una expresión numérica que calcule el tiempo en tiempo de ejecución.
	
	ALARM_EN
	BOOL
	Para utilizar los bits de alarma, active (seleccione) el bit De sin alarma (AlarmEn).
	
	ALARM_HIGH
	BOOL
	Si el temporizador (T) alcanza el valor limite alto, el bit AlarmHigh se enciende. El bit permanece encendido hasta que lo restablezcas.
Para utilizar esta función de alarma, active (seleccione) el bit De sin alarma (AlarmEn).
	Haga algo mientras el paso está activo (incluyendo la primera y la última exploración)
	X
	BOOL
	El bit X está en todo el tiempo que el paso está activo (ejecutando).
Normalmente, se recomienda usar una acción con un calificador N no almacenado para lograr esto.
	Haga algo una vez cuando el paso se active
	FS1
	BOOL
	El bit FS está activado durante el primer análisis del paso.
Normalmente, se recomienda usar una acción con un calificador P1 Pulse (Rising Edge) para lograr esto.
	Haga algo mientras el paso está activo, excepto en la primera y última exploración
	SA
	BOOL
	El bit SA está activado cuando el paso está activo excepto durante el primer y último análisis del paso.
	Haga algo una vez en la última exploración del paso
	LS1
	BOOL
	El bit LS está activado durante la última exploración del paso.
Utilice este bit solo si en el cuadro de diálogo Propiedades del controlador, ficha Ejecución de SFC, establezca el último análisis del paso activo en No analizar o restablecer mediante programación.
Normalmente, se recomienda usar una acción con un calificador P0 Pulse (Falling Edge) para lograr esto.
	Determinar el destino de una instrucción SFC Reset (SFR)
	RESET
	BOOL
	Una instrucción SFC Reset (SFR) restablece el SFC a un paso o una detención que especifica la instrucción.
El bit Reset indica el paso o la parada donde el SFC va a comenzar a ejecutarse de nuevo.
Una vez que el SFC se ejecuta, el bit reset borra.
	Determinar el tiempo máximo que un paso ha estado activo durante cualquiera de sus ejecuciones
	T_MAX
	DINT
	Utilícelo con fines de diagnóstico. El controlador borra este valor solo cuando se establece la posición de reinicio en Reiniciar en el paso inicial y el controlador cambia de modo o experimenta un ciclo de alimentación.
	 Determine si el valor del temporizador (T) se revierte a un valor negativo
	 OV
	 BOOL
	 Utilícelo con fines de diagnóstico.
	 Determinar cuántas veces un paso se ha activo
	 COUNT
	 DINT
	 Esto no es un recuento de escaneos del paso.
• El recuento aumenta cada vez que el paso se activa.
• Se incrementa de nuevo sólo después de que el paso se vuelve inactivo y luego se activa de nuevo.
• El recuento se restablece solo si configura el SFC para que se reinicie en el paso inicial. Con esa configuración, se restablece cuando el controlador cambia del modo de programa al modo de ejecución
	 Utilice una etiqueta para los distintos bits de estado de este paso
	 SATUS
	 DINT
	 
(1) Los bits FS y LS solo están activos durante la ejecución de un paso. Una vez que un paso termina de ejecutar el código dentro de sus acciones, se restablecen el FS o el LS o ambos bits. Si hace referencia a cualquiera de estos bits en código

Continuar navegando