Vai al contenuto
PLC Forum


Struttura Dati In_Out E Blocco Fc


fanfo

Messaggi consigliati

Salve,

qualche buon uomo sa con certezza questa cosa:

Se passo una struttura su un in/out di un blocco FC ed elaboro la struttura internamente al blocco stesso, l'elaborazione viene fatta sulle variabili direttamente dove sono allocate oppure l'elaborazione avviene su delle variabili locali che poi sono ricopiate sulla struttura alla fine dell' FC?

Questa domanda perchè ho delle strutture in Db dove devo fare parecchi calcoli in virgola mobile e mi sembra che se li faccio con varibili locali ai blocchi ci possa mettere di meno che elaborare direttamente i dati nei DB.

Grazie in anticipo.

Link al commento
Condividi su altri siti


I parametri in/out di un FC usano variabili locali, ma ti ricordo che il numero di byte massimo per l'area L di un s7-300 è di 256 bytes totali (per ogni livello di priorità), per ogni blocco sono riservati tanti byte nello stack L a seconda dei locali che esso possiede, quando un blocco viene concluso il suo campo viene nuovamente reso disponibile.

P. es. se OB1 occupa 30 bytes puoi richiamare un FC che ne occupa 226 oppure un FC che ne occupa 200 e al suo interno richiama un altro FC che ne occupa 26.

Modificato: da JumpMan
Link al commento
Condividi su altri siti

Ma cosa succede se superi questa quantità?

Ti viene restituito un errore in fase di editazione o in fase di esecuzione la CPU và in STOP?

La CPU va in STOP per "overflow dello stack".

Mi sembra di ricordare che da qualche parte si possa vedere la quantità i dati locali utilizzati ma, scrivendo da casa, non ricordo dove... forse sulle proprietà dei blocchi...

Modificato: da JumpMan
Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...