CODESYS ControlElement Libraries
Introducción
CODESYS ControlElement Libraries incluye el Biblioteca ControlLoop biblioteca que proporciona parámetros para controles, filtros y funciones de transferencia para el control de procesos y el procesamiento de señales.
Descripción del producto
El Biblioteca ControlLoop la biblioteca incluye bloques de funciones para el control de procesos. Se compone de diferentes elementos que se ensamblan de forma flexible en una estructura de control. Estos incluyen varios diferenciadores e integradores, para los que existen diversas estrategias antibloqueo. De esta forma, la estructura del control creado se puede derivar de los componentes seleccionados. Algunas funciones de transferencia también se logran de acuerdo con este esquema. Esta biblioteca también proporciona un ejemplo del uso de bloques de funciones anidados orientados a objetos
La biblioteca también contiene varios filtros digitales que se pueden utilizar para el procesamiento de señales. Para ello, es necesario que determine usted mismo los parámetros de clasificación.
La biblioteca incluye los siguientes bloques de funciones:
Controller_Base: Bloque de funciones base abstracto para crear controles individualesController_P: Bloque de funciones para implementar un control PController_PD: Bloque de funciones para implementar un control PDController_PI: Bloque de funciones para implementar un control PIController_PID: Bloque de funciones para implementar un control PID
Integrator_Base: Bloque de funciones base para crear aproximaciones integrales individualesIntegrator_ParabolicApproximation: Bloque funcional para aproximar la integral mediante una parábola utilizando los últimos valoresIntegrator_RectangleApproximation: Bloque funcional para aproximar la integral por medio de un rectánguloIntegrator_TrapezoidApproximation: Bloque funcional para aproximar la integral mediante un trapecio
Estos bloques de funciones proporcionan diferentes estrategias para evitar un desbordamiento del integrador en caso de una varianza de control prolongada.
AntiWindUp_Base: Bloque de funciones base abstracto para crear estrategias antienrollamiento individualesAntiWindUp_Clamping: Bloque de funciones para usar una estrategia antienrollamiento que fije el valor del integrador al máximo establecidoAntiWindUp_BackCalculation: Bloque de funciones para usar una estrategia antienrollamiento que reduce el valor del integrador con el tiempo
Differentiator_Base: Bloque de funciones base abstracto para crear aproximaciones de diferenciadores individualesDifferentiator_BackwardDifference: Bloque funcional para la aproximación lineal de la integral utilizando el último valorDifferentiator_LinearAverageApproximation: Bloque funcional para la aproximación lineal de la integral utilizando los últimos valoresDifferentiator_LinearFourPointApproximation: Bloque funcional para la aproximación lineal de la integral utilizando los últimos valoresIntegrator_ParabolicApproximation: Bloque funcional para aproximar el diferencial mediante una parábola utilizando los últimos valores
BangBangController: Bloque de funciones para implementar un control de dos puntosBangBangControllerWithTimeHysteresis: Bloque de funciones para implementar un control de dos puntos con histéresis basada en el tiempoBangBangControllerWithValueHysteresis: Bloque de funciones para implementar un control de dos puntos con histéresis basada en valores
ThreePointController: Bloque de funciones para implementar un control de tres puntosThreePointControllerWithValueHysteresis: Bloque de funciones para implementar un control de tres puntos con modulación basada en valores
Controller_Base: Bloque de funciones base abstracto para crear filtros individualesFilter_FIR: Bloque de funciones para implementar un filtro de respuesta a impulsos finitosFilter_IIR: Bloque de funciones para implementar un filtro de respuesta a impulsos infinitosFilter_SOS: Bloque de funciones para implementar un filtro de secciones de segundo orden
PWM_CreatorBase: Bloque de funciones base para crear señales PWM individualesPWM_Creator: Bloque de funciones para crear una señal PWMPWM_Creator_FixedCycle: Bloque de funciones para crear una señal PWM cuyo tiempo de ciclo puede diferir del tiempo del ciclo de la tarea
DT1: Bloque de funciones para escribir unDT1miembro transferido. Para facilitar la aplicación, una configuración que utiliceDifferentiator_LinearAverageApproximation is setde forma predeterminada:DT1_LinearAverageIT1: Bloque de funciones para escribir unIT1miembro transferido. Para facilitar la aplicación, una configuración que utiliceIntegrator_TrapezoidApproximation is setpor defecto:IT1_TrapezoidPT1: Bloque de funciones para escribir unPT1miembro de transferencia. Para facilitar la aplicación, una configuración que utiliceIntegrator_TrapezoidApproximation is setpor defecto:PT1_TrapezoidPT2: Bloque de funciones para escribir unPT2miembro de transferencia. Para facilitar la aplicación, una configuración con dosIntegrator_TrapezoidApproximation is setpor defecto:PT2_Trapezoid