Skip to main content

CODESYS ControlElement Libraries

Introduzione

CODESYS ControlElement Libraries include Libreria ControlLoop libreria che fornisce parametri per controlli, filtri e funzioni di trasferimento per il controllo dei processi e l'elaborazione dei segnali.

Descrizione del prodotto

Le Libreria ControlLoop libreria include blocchi funzionali per il controllo dei processi. È costituita da diversi elementi assemblati in modo flessibile in una struttura di controllo. Questi includono vari differenziatori e integratori, per i quali sono disponibili varie strategie anti-windup. In questo modo, la struttura del controllo creato può essere derivata dai componenti selezionati. Alcune funzioni di trasferimento vengono realizzate anche secondo questo schema. Questa libreria fornisce anche un esempio per l'uso di blocchi funzione annidati orientati agli oggetti

La libreria contiene anche diversi filtri digitali che possono essere utilizzati per l'elaborazione del segnale. A tale scopo, è necessario determinare personalmente i parametri di valutazione.

I seguenti blocchi funzione sono inclusi nella libreria:

. Comandi
  • Controller_Base: blocco funzionale di base astratto per la creazione di controlli individuali

  • Controller_P: Blocco funzionale per l'implementazione di un controllo P

  • Controller_PD: Blocco funzionale per l'implementazione di un controllo PD

  • Controller_PI: Blocco funzionale per l'implementazione di un controllo PI

  • Controller_PID: Blocco funzionale per l'implementazione di un controllo PID

. Approssimazione dell'integratore
  • Integrator_Base: Blocco funzionale di base per la creazione di approssimazioni integrali individuali

  • Integrator_ParabolicApproximation: Blocco funzionale per approssimare l'integrale mediante una parabola utilizzando gli ultimi valori

  • Integrator_RectangleApproximation: Blocco funzionale per approssimare l'integrale mediante un rettangolo

  • Integrator_TrapezoidApproximation: Blocco funzionale per l'approssimazione dell'integrale mediante un trapezio

. Strategia anti-windup

Questi blocchi di funzioni forniscono diverse strategie per evitare un sovraccarico dell'integratore in caso di una varianza di controllo prolungata.

  • AntiWindUp_Base: Blocco funzionale di base astratto per la creazione di strategie anti-windup individuali

  • AntiWindUp_Clamping: Blocco funzionale per l'utilizzo di una strategia anti-windup che fissa il valore dell'integratore al massimo impostato

  • AntiWindUp_BackCalculation: blocco funzionale per l'utilizzo di una strategia anti-windup che riduce il valore dell'integratore nel tempo

. Approssimazione del differenziatore
  • Differentiator_Base: Blocco funzionale di base astratto per la creazione di approssimazioni differenziative individuali

  • Differentiator_BackwardDifference: Blocco funzionale per l'approssimazione lineare dell'integrale utilizzando l'ultimo valore

  • Differentiator_LinearAverageApproximation: Blocco funzionale per l'approssimazione lineare dell'integrale utilizzando gli ultimi valori

  • Differentiator_LinearFourPointApproximation: Blocco funzionale per l'approssimazione lineare dell'integrale utilizzando gli ultimi valori

  • Integrator_ParabolicApproximation: Blocco funzionale per approssimare il differenziale mediante una parabola utilizzando gli ultimi valori

. Comandi a due punti
  • BangBangController: Blocco funzionale per l'implementazione di un controllo a due punti

  • BangBangControllerWithTimeHysteresis: Blocco funzionale per l'implementazione di un controllo a due punti con isteresi basata sul tempo

  • BangBangControllerWithValueHysteresis: Blocco funzionale per l'implementazione di un controllo a due punti con isteresi basata sul valore

. Comandi a tre punti
  • ThreePointController: Blocco funzionale per l'implementazione di un controllo a tre punti

  • ThreePointControllerWithValueHysteresis: Blocco funzionale per l'implementazione di un controllo a tre punti con modulazione basata sul valore

. Filtri
  • Controller_Base: blocco funzionale di base astratto per la creazione di singoli filtri

  • Filter_FIR: Blocco funzionale per l'implementazione di un filtro a risposta impulsiva finita

  • Filter_IIR: Blocco funzionale per l'implementazione di un filtro di risposta all'impulso infinito

  • Filter_SOS: Blocco funzionale per l'implementazione di un filtro di sezione di secondo ordine

. Generazione PWM
  • PWM_CreatorBase: blocco funzionale di base per la creazione di segnali PWM individuali

  • PWM_Creator: Blocco funzionale per la creazione di un segnale PWM

  • PWM_Creator_FixedCycle: blocco funzionale per la creazione di un segnale PWM il cui tempo di ciclo può differire dal tempo di ciclo dell'attività

. Funzioni di trasferimento
  • DT1: Blocco funzionale per scrivere un DT1 socio trasferente. Per un'applicazione più semplice, una configurazione che utilizza Differentiator_LinearAverageApproximation is set come impostazione predefinita: DT1_LinearAverage

  • IT1: Blocco funzionale per scrivere un IT1 socio cedente. Per un'applicazione più semplice, una configurazione che utilizza Integrator_TrapezoidApproximation is set come impostazione predefinita: IT1_Trapezoid

  • PT1: Blocco funzionale per scrivere un PT1 socio cedente. Per un'applicazione più semplice, una configurazione che utilizza Integrator_TrapezoidApproximation is set come impostazione predefinita: PT1_Trapezoid

  • PT2: Blocco funzionale per scrivere un PT2 socio cedente. Per un'applicazione più semplice, una configurazione che utilizza due Integrator_TrapezoidApproximation is set come impostazione predefinita: PT2_Trapezoid