Vai al contenuto
PLC Forum


ET200SP


anarchico

Messaggi consigliati

Buongiorno,

al caricamento dopo la compilazione mi da il seguente allarme "L'area a ritenzione necessaria supera la massima disponibile" ed effettivamente prima del trasferimento avevo lo 0,01% di disponibilità.

In realtà ho inserito solo una DB ritentiva di 660 byte ma lo sforamento è di 1582 byte.

Ho inserito anche una DB di istanza per la verità,e leggendo su vari manuali pare che anch'essa rientri in quella porzione di memoria.

Detto questo,

come posso risolvere il problema?Ho solo come possibilità la sostituzione della ET200SP? E con cosa?

Link al commento
Condividi su altri siti


Aggiungo che:

è un problema di sole DB che comunque occupano lo spazio che mi ritrovo n eccesso.

la domanda è quindi: Non esiste alcun escamotage per risolvere il problema?

Link al commento
Condividi su altri siti

La memoria di lavoro non può essere espansa, si deve passare ad una CPU maggiore.
Puoi fare una cosa, dichiarare alcune DB solo nella memoria di caricamento e poi scriverle sulla SD con l'istruzione WRIT_DBL e leggerle dalla SD con l'istruzione READ_DBL.

Nota:
La sd ha una vita deifinita dai cicli di lettura/scrittura, che trovi qui (dovrebbe essere l'ultima versione, non ne sono certo)
Struttura e utilizzo della memoria della CPU

Qui invece trovi un esempio per fare quanto detto sopra, leggere e scrivere db dalla/sulla SD.
Using an SD Card for Retentive Memory - Siemens PLC | DMC, Inc.

Link al commento
Condividi su altri siti

Potresti anche pensare di fare delle istantanee periodiche dei blocchi dati e poi scrivere i valori come valori di avvio, senza bisogno di dichiarare la ritenzione...chiaramente se la tua applicazione permette una gestione del genere...

Link al commento
Condividi su altri siti

Puoi fare un altra cosa...se non li usi puoi diminuire all'osso il numero di merker e timer e contatori ritentivi.
Trovi come fare sul manuale che ti ho allegato al capitolo 3.3
 

pic.png

Link al commento
Condividi su altri siti

Innanzitutto grazie mille.

41 minuti fa, dina_supertramp ha scritto:

Potresti anche pensare di fare delle istantanee periodiche dei blocchi dati e poi scrivere i valori come valori di avvio, senza bisogno di dichiarare la ritenzione...chiaramente se la tua applicazione permette una gestione del genere...

No,la mia applicazione non permette una cosa del genere.

37 minuti fa, dina_supertramp ha scritto:

Puoi fare un altra cosa...se non li usi puoi diminuire all'osso il numero di merker e timer e contatori ritentivi.
Trovi come fare sul manuale che ti ho allegato al capitolo 3.3
 

pic.png

 

 

Purtroppo ho già questo

 

image.thumb.png.932683f1afcba37a6fd20af1b0acf909.png

Link al commento
Condividi su altri siti

10 minuti fa, anarchico ha scritto:

Innanzitutto grazie mille.

Welcome
 

10 minuti fa, anarchico ha scritto:

No,la mia applicazione non permette una cosa del genere.

Immaginavo...
 

11 minuti fa, anarchico ha scritto:

Purtroppo ho già questo

Azz...hai già tolto tutto, non c'è null'altro "da grattare".

Non ti resta che pensare di passare alla CPU maggiore oppure vedere se il READ/WRIT_DBL possono aiutare.

Link al commento
Condividi su altri siti

8 ore fa, anarchico ha scritto:

"L'area a ritenzione necessaria supera la massima disponibile"

Non riguarda solo i DB, riguarda tutte le variabili che hai reso ritentive, merker compresi.
Se, come sembra, hai già eliminato merker, timer ed altro, significa che hai altri DB con variabili ritentive.
Non specifichi quale CPU stai utilizzando ma, anche per la più piccola 1510, impossibile che tu abbia esaurito la memoria ritentiva con quel poco che dici.

Se fai tasto destro sulla CPU --> Tabella di occupazione  epoi selezioni la scheda "Memoria utilizzata", ti fa vedere anche quanta memoria ritentiva hai disponibile, e quanta ne stai usando.

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...