La figura seguente mostra il tipico circuito di un regolatore in cascata.
Programmazione del circuito di regolazione
Per programmare questo esempio con Modular PID Control procedere nel modo seguente:
-
Programmare un FB regolatore per il regolatore pilota, ad es. PIDCTR.
-
Programmare un FB regolatore per il regolatore asservito, ad es. PIDCTR_SAF.
-
Programmare una funzione nella quale richiamare e interconnettere entrambi i regolatori.
-
Nell'istruzione "LP_SCHED_M" richiamare la funzione.
-
Creare un Blocco dati globale DB_LOOP nel quale parametrizzare il numero del regolatore e i tempi del ciclo per il richiamo del regolatore pilota e del regolatore asservito.
Il tempo di ciclo del regolatore asservito deve essere minore o uguale al tempo di ciclo del regolatore pilota.
-
Richiamare l'FB regolatore per il regolatore pilota se DB_LOOP.LOOP_DAT[1].ENABLE = TRUE.
-
Interconnettere DB_LOOP.LOOP_DAT[1].COM_RST e DB_LOOP.LOOP_DAT[1].CYCLE con i parametri di ingresso COM_RST e CYCLE del regolatore pilota.
-
Impostare DB_LOOP.LOOP_DAT[1].ENABLE = FALSE.
-
Richiamare l'FB regolatore per il regolatore asservito se DB_LOOP.LOOP_DAT[2].ENABLE = TRUE.
-
Interconnettere DB_LOOP.LOOP_DAT[2].COM_RST e DB_LOOP.LOOP_DAT[2].CYCLE con COM_RST e CYCLE del regolatore asservito.
-
Interconnettere il parametro di uscita LMN del regolatore pilota con il parametro di ingresso SP_IN del regolatore asservito.
-
Impostare DB_LOOP.LOOP_DAT[2].ENABLE = FALSE.
-
Interconnettere il valore regolante del regolatore asservito con l'uscita analogica della CPU che comanda l'organo attuatore.
-
Richiamare la funzione nell'OB 100 e nell'OB di schedulazione orologio.
La figura seguente mostra i richiami e l'interconnessione dei regolatori sull'esempio della funzione FC50.