I Function Block (FB) sono piccoli programmi. A differenza delle funzioni, i Function Block hanno la propria area di memoria nella quale possono essere salvati valori. A seconda del valore salvato, che può essere addizionato, sottratto ecc., gli stessi valori di ingresso forniscono risultati diversi. Nel vostro programma potete usare lo stesso Function Block ogni volta che volete. Per tale ragione, ogni volta che caricate un Function Block ne viene creata una copia. Date a tale copia (istanza) un nome affinché i suoi valori non possano essere sovrascritti o elaborati da un Function Block dello stesso tipo.
Control FPWIN Pro7 offre due tipi di Function Block:
Function Block di sistema
IEC standard library: p.es. TON, TOF
FP library: p.es. CT_FB, PID_FB
Function Block definiti dall'utente
Questi Function Block possono essere scritti in quattro linguaggi di programmazione
Ladder diagram (LD) o Function block diagram (FBD)
Structured text (ST)
Instruction list (IL)
Se richiamate il FB "TON" (temporizzatore con ritardo all'accensione) della IEC Standard Library per la prima volta, p.es. per accendere un motore con ritardo, questo FB potrebbe essere chiamato "delay_motor". La volta seguente, quando richiamate questo FB, gli date un nome diverso, p.es. "delay_heating", ecc.
Non allocare un Function Block a un task, perché un Function Block può essere richiamato solamente da un programma o da un Function Block.
Un Function Block non può essere chiamato ricorsivamente.
FB1() -> FB2() -> FB3() -> FB1()
non ammesso.
Non deve essere superato il numero massimo di chiamate Function Block nidificate, p.es. FB1(FB2(FB3(FB4(FB5(x))))).
Numero massimo di chiamate Function Block nidificate |
Tipi di PLC |
---|---|
16 |
FP7 |
10 |
Nuovi tipi di PLC a 16-bit PLC del tipo FP0H, FP_XH, FP0R |
15 |
Vecchi tipi di PLC a 16 bit |