CONTENUTI

Home Blocchi Standard

Cosa sono i blocchi standard?

Progettare in "ottica" standard

Inserire un blocco standard in un software plc

Modifiche, revisioni e versioni in blocchi standard

Esempi di blocchi standard

 

APPENDICI

Compilare Sorgenti Step7

Compilare sorgenti MicroWin

Blocchi funzionali e funzioni

Come riempire le variabili non utilizzate nelle interfacce di blocco

 

 

 

BLOCCHI FUNZIONALI, FUNZIONI E DATABASE D'ISTANZA

(VALIDO SOLO PER STEP 7)

 

In questa pagina si introdurrà brevemente la differenza che intercorre fra funzioni e blocchi funzionali.

 

COSA SONO LE FUNZIONI

 

Step 7 associa alle funzioni il nome FC associato ad un numero, anche le SFC a pari delle FC sono funzioni, ma sono Funzioni di Sistema, ossia fanno parte delle funzioni residenti nella cpu, qui bisogna prestare particolare attenzione che non tutte le cpu hanno le medesime SFC caricate, quindi ,ad esempio, un software, che sfrutta alcune SFC per la sua elaborazione, può funzionare correttamente su una cpu, o non funzionare per nulla su una cpu che non possiede il blocco SFC necessario. Lo stesso ragionamento è applicabile alle SFB.

Essenzialmente, una funzione è un blocco che elabora i risultati essenzialmente solo dai valori forniti dall'interfaccia, senza considerare i cicli di elaborazione precedente: siccome questa definizione appare poco chiara, si cercherà di renderla più comprensibile con l'aiuto di qualche esempio: una funzione che compie un elevamento a potenza di un numero non necessita di altre variabili se non la base e l'esponente, ed ovviamente la variabile di uscita. Consideriamo invece il caso del flip-flop T (un semplice relè passo-passo, che ad ogni impulso dell'ingresso cambia lo stato della propria uscita)  che oltre all'ingresso e all'uscita necessiterà di una ulteriore variabile che memorizzerà lo stato dell'uscita: senza conoscerne lo stato, fra una scansione e la successiva sarà alquanto difficile poterne cambiare lo stato.

In conclusione una funzione (FC o SFC) è un blocco che elabora i risultati solo in considerazione delle variabili d'ingresso, senza considerare i precedenti casi di elaborazione.

 

COSA SONO I BLOCCHI FUNZIONALI

 

Step 7 associa ad ogni blocco funzionale (FB o SFB) uno o più database d'istanza, uno per ogni copia di blocco che è in elaborazione.

Innanzitutto vorrei chiarire il concetto di database d'istanza, come generarlo, e come utilizzarlo. Un DB (acronimo di database) d'istanza contiene, oltre ad una copia dei dati dell'interfaccia del blocco, anche una serie di dati chiamati STAT che non sono presenti nell'interfaccia del blocco funzione: questi dati, non modificabili dall'interfaccia verso l'esterno, servono per memorizzare dati significativi fra una scansione del blocco e la successiva, ovviamente se un blocco funzione viene utilizzato n volte all'interno del software, ci saranno n DB d'istanza che manterranno i dati temporanei fra una scansione e la successiva. Le variabili di tipo TEMP sono cancellate automaticamente all'uscita dell'elaborazione del blocco, in quanto non sono memorizzate nel DB.

Come generare un DB d'istanza? Semplicemente Step 7 genera i DB in relazione alla chiamata: se il DB stesso non esiste Step7 lo genererà lui stesso. Ammettiamo di avere un blocco funzione FB1: per far generare automaticamente il suo DB d'istanza sarà sufficiente digitare nell'editor AWL, nel segmento voluto la chiamata al blocco:

 

CALL FB 1 , DB1

 

Il DB1 sarà creato autonomamente. Il numero di DB a cui assegnare un'istanza è libero, anche se è conveniente, almeno per la prima istanza chiamare un DB con lo stesso numero del relativo FB (o SFB), risulta più intuitivo capire a quale DB e' associato il FB in questione.

La creazione del DB d'istanza è possibile anche manualmente, creando un nuovo DB in Simatic Manager, e poi modificando il numero dei campi fino ad avere l'interfaccia del blocco con il quale verrà chiamato: si sconsiglia questa procedura (almeno ai principianti) in quanto è abbastanza complicata, e la possibilità di incorrere in errori non è remota, senza avere plausibili vantaggi.

 

 

Home Blocchi Standard

Home Didattica

Home PlcForum