Skip to main content

CODESYS ControlElement Libraries

Einleitung

CODESYS ControlElement Libraries enthält die Bibliothek ControlLoopLibrary, die Parameter für Regler, Filter und Übertragungsfunktionen zur Prozessregelung und Signalverarbeitung bereitstellt.

Produktbeschreibung

Die Bibliothek ControlLoopLibrary enthält Funktionsbausteine für die Prozessregelung. Sie besteht aus verschiedenen Elementen, die flexibel zu einer Reglerstruktur zusammengebaut werden. Dazu zählen verschiedene Differentiatoren und Integratoren, für die wiederum diverse Anti-Windup-Strategien zur Auswahl stehen. Somit kann die Struktur des erstellten Reglers aus den gewählten Komponenten abgeleitet werden. Nach diesem Schema sind auch einige Übertragungsfunktionen realisiert. Damit stellt diese Bibliothek zudem ein Beispiel für die Verwendung von verschachtelten objektorientierten Funktionsbausteinen dar.

Daneben enthält die Bibliothek auch mehrere digitale Filter, die für die Signalverarbeitung verwendet werden können. Hierbei ist es notwendig, die Wichtungsparameter selbst zu bestimmen.

Folgende Funktionsbausteine sind in der Bibliothek enthalten:

. Regler
  • Controller_Base: Abstrakter Basisfunktionsbaustein zum Erstellen von individuellen Reglern

  • Controller_P: Funktionsbaustein zum Realisieren eines P-Reglers

  • Controller_PD: Funktionsbaustein zum Realisieren eines PD-Reglers

  • Controller_PI: Funktionsbaustein zum Realisieren eines PI-Reglers

  • Controller_PID: Funktionsbaustein zum Realisieren eines PID-Reglers

. Integralabschätzung
  • Integrator_Base: Basisfunktionsbaustein zum Erstellen von individuellen Integralabschätzungen

  • Integrator_ParabolicApproximation: Funktionsbaustein zum Abschätzen des Integrals mittels einer Parabel durch die letzten Werte

  • Integrator_RectangleApproximation: Funktionsbaustein zum Abschätzen des Integrals mittels eines Rechteckes

  • Integrator_TrapezoidApproximation: Funktionsbaustein zum Abschätzen des Integrals mittels eines Trapezes

. Anti-Windup-Strategie

Diese Funktionsbausteine stellen unterschiedliche Strategien zur Verfügung, um ein Überlaufen des Integrators bei länger andauernder Regelabweichung zu vermeiden.

  • AntiWindUp_Base: Abstrakter Basisfunktionsbaustein zum Erstellen von individuellen Anti-Windup-Strategien

  • AntiWindUp_Clamping: Funktionsbaustein zum Abschätzen des Integrals mittels einer Parabel durch die letzten Werte

  • AntiWindUp_BackCalculation: Funktionsbaustein zur Anwendung einer Anti-Windup-Strategie, die den Integratorwert über die Zeit verringert

. Ableitungsabschätzung
  • Differentiator_Base: Abstrakter Basisfunktionsbaustein zum Erstellen von individuellen Ableitungsabschätzungen

  • Differentiator_BackwardDifference: Funktionsbaustein zum linearen Abschätzen der Ableitung mittels des letzten Werts

  • Differentiator_LinearAverageApproximation: Funktionsbaustein zum linearen Abschätzen der Ableitung mittels der letzten Werte

  • Differentiator_LinearFourPointApproximation: Funktionsbaustein zum linearen Abschätzen der Ableitung mittels der letzten Werte

  • Differentiator_ParabolicApproximation: Funktionsbaustein zum Abschätzen der Ableitung mittels einer Parabel durch die letzten Werte

. Zweipunktregler
  • BangBangController: Funktionsbaustein zum Realisieren eines Zweipunktreglers

  • BangBangControllerWithTimeHysteresis: Funktionsbaustein zum Realisieren eines Zweipunktreglers mit zeitlicher Hysterese

  • BangBangControllerWithValueHysteresis: Funktionsbaustein zum Realisieren eines Zweipunktreglers mit wertbasierter Hysterese

. Dreipunktregler
  • ThreePointController: Funktionsbaustein zum Realisieren eines Dreipunktreglers

  • ThreePointControllerWithValueHysteresis: Funktionsbaustein zum Realisieren eines Dreipunktreglers mit wertbasierter Hysterese

. Filter
  • Filter_Base: Abstrakter Basisfunktionsbaustein zum Erstellen von individuellen Filtern

  • Filter_FIR: Funktionsbaustein zum Realisieren eines Finite-Impulse-Response Filters

  • Filter_IIR: Funktionsbaustein zum Realisieren eines Infinite-Impulse-Response Filters

  • Filter_SOS: Funktionsbaustein zum Realisieren eines Second-Order-Section Filters

. PWM Erzeugung
  • PWM_CreatorBase: Basisfunktionsbaustein zum individuellen Erstellen von PWM-Signalen

  • PWM_Creator: Funktionsbaustein zum Erstellen eines PWM-Signals

  • PWM_Creator_FixedCycle: Funktionsbaustein zum Erstellen eines PWM-Signals, dessen Zykluszeit sich von der Task-Zykluszeit unterscheiden kann

. Übertragungsfunktionen
  • DT1: Funktionsbaustein zum Beschreiben eines DT1-Übertragungsglieds. Zur einfacheren Anwendung ist eine Konfiguration unter Verwendung des Differentiator_LinearAverageApproximation vorgegeben: DT1_LinearAverage

  • IT1: Funktionsbaustein zum Beschreiben eines IT1-Übertragungsglieds. Zur einfacheren Anwendung ist eine Konfiguration unter Verwendung des Integrator_TrapezoidApproximation vorgegeben: IT1_Trapezoid

  • PT1: Funktionsbaustein zum Beschreiben eines PT1-Übertragungsglieds. Zur einfacheren Anwendung ist eine Konfiguration unter Verwendung des Integrator_TrapezoidApproximation vorgegeben: PT1_Trapezoid

  • PT2: Funktionsbaustein zum Beschreiben eines PT2-Übertragungsglieds. Zur einfacheren Anwendung ist eine Konfiguration unter Verwendung zweier Integrator_TrapezoidApproximation vorgegeben: PT2_Trapezoid