anarchico Inserito: 16 dicembre 2024 Segnala Inserito: 16 dicembre 2024 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?
anarchico Inserita: 16 dicembre 2024 Autore Segnala Inserita: 16 dicembre 2024 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?
dina_supertramp Inserita: 16 dicembre 2024 Segnala Inserita: 16 dicembre 2024 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.
dina_supertramp Inserita: 16 dicembre 2024 Segnala Inserita: 16 dicembre 2024 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...
dina_supertramp Inserita: 16 dicembre 2024 Segnala Inserita: 16 dicembre 2024 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
anarchico Inserita: 16 dicembre 2024 Autore Segnala Inserita: 16 dicembre 2024 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 Purtroppo ho già questo
dina_supertramp Inserita: 16 dicembre 2024 Segnala Inserita: 16 dicembre 2024 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.
batta Inserita: 16 dicembre 2024 Segnala Inserita: 16 dicembre 2024 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.
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora