INGEGNERIA DEL PLC

Concetti di memoria del Siemens S7-300/400 spiegati: memoria di carico, memoria di lavoro e dati conservati.

Casa Blog

Concetti di memoria del Siemens S7-300/400 spiegati: memoria di carico, memoria di lavoro e dati conservati.

Concetti di memoria del Siemens S7-300/400 spiegati: memoria di carico, memoria di lavoro e dati conservati.

August 18, 2026

 

L'architettura della memoria del Siemens I controllori logici programmabili (PLC) S7-300 e S7-400 sono organizzati in tre livelli distinti: memoria di carico, memoria di lavoro e memoria di sistema. Ogni guasto relativo alla memoria, che si tratti di una CPU che si rifiuta di uscire dallo stato STOP, di un programma che scompare dopo un'interruzione di corrente o di un allarme batteria su un S7-400, può essere ricondotto a uno di questi livelli e alle regole che governano il trasferimento dei dati tra di essi. Questo articolo definisce con precisione ciascun livello, spiega come le due famiglie di controllori li implementano in modo diverso, fornisce i parametri concreti di CPU rappresentative e si conclude con la diagnostica dei guasti, le pratiche di manutenzione e le domande che gli ingegneri si pongono più frequentemente. Il materiale presuppone una conoscenza di base di STEP 7 e della struttura generale di un programma PLC, ma non una specializzazione precedente nella gestione della memoria.

 

1. Definizione dei tre livelli di memoria

 

La memoria di caricamento contiene il programma utente completo, inclusi i blocchi di codice (OB, FB, FC), i blocchi di dati (DB), i simboli, i commenti e i dati tecnologici. È il repository non volatile, o con batteria di backup, da cui la CPU ripristina la sua copia di lavoro ad ogni avvio. La memoria di lavoro è l'area RAM integrata in cui la CPU esegue effettivamente il programma; contiene solo il codice e i dati necessari per l'esecuzione. La memoria di sistema è l'insieme delle aree di indirizzamento su cui opera il set di istruzioni: input di processo (I), output di processo (Q), memoria di bit (M), timer (T), contatori (C), dati locali (L) e blocchi di dati (DB).

La distinzione tra i tre livelli non è puramente accademica. Un blocco che esiste solo nella memoria di caricamento non viene eseguito. Un blocco che esiste solo nella memoria di lavoro viene eseguito ma non può essere caricato su un dispositivo di programmazione. Un flag di ritenzione che non viene salvato nella memoria di caricamento viene reimpostato ad ogni riavvio. Ogni livello ha la sua volatilità, i suoi limiti di capacità e il suo comportamento in caso di errore, come riassunto nella Tabella 1.

Tabella 1: I tre livelli di memoria in sintesi

Livello | Contenuti | Implementazione S7-300 | Implementazione S7-400 | Comportamento in caso di interruzione di corrente

Memoria di caricamento | Programma completo: blocchi, simboli, commenti, dati tecnologici | Micro Memory Card (MMC) | RAM con batteria di backup; scheda Flash EPROM opzionale | S7-300: memorizzato sulla MMC. S7-400: memorizzato nella RAM finché la batteria è carica; altrimenti ripristinato dalla EPROM o perso

Memoria di lavoro | Solo codice eseguibile e dati | RAM integrata | RAM integrata | Contenuto perso; ricostruito dalla memoria di caricamento al successivo avvio

Memoria di sistema | Indirizzamento I, Q, M, T, C, L, DB | Circuiti interni della CPU | Circuiti interni della CPU | Parti non ritentive resettate; parti ritentive ripristinate dalla memoria di caricamento

Un secondo elemento distintivo dell'architettura è la differenza tra memoria volatile e non volatile. Sull'S7-300, la non volatilità è garantita dalla memoria flash (MMC) e non richiede batteria. Sull'S7-400, invece, la non volatilità è assicurata da una RAM con batteria di backup e, opzionalmente, da una scheda Flash EPROM. Questa singola differenza spiega gran parte delle divergenze pratiche tra le due famiglie, dal LED di batteria scarica sull'S7-400 al fatto che una CPU S7-300 senza MMC non si avvia affatto.

 

2. Memoria di caricamento: dove viene memorizzato il programma

 

La memoria di caricamento è il livello con la capacità maggiore. Memorizza il programma nella sua forma completa, inclusi i dati che la CPU non esegue mai direttamente: commenti ai blocchi, informazioni sui simboli e oggetti tecnologici. Quando un progetto viene compilato e scaricato, ogni blocco viene prima trasferito nella memoria di caricamento. La CPU copia quindi le parti eseguibili nella memoria di lavoro. Poiché la memoria di caricamento contiene l'intero progetto, è anche il livello che viene letto durante il trasferimento di un programma da una CPU a un dispositivo di programmazione.

 

2.1 Caricamento della memoria sull'S7-300: la scheda Micro Memory

 

Tutte le attuali CPU S7-300 memorizzano la memoria di caricamento su una Micro Memory Card (MMC). La MMC è una scheda flash a innesto che si inserisce in uno slot sulla parte anteriore della CPU. Non richiede batteria, motivo per cui un impianto S7-300 può rimanere senza alimentazione per anni e avviarsi comunque con il programma intatto. I codici articolo rappresentativi per la famiglia di MMC sono 6ES7953-8LL31-0AA0 (512 KB) e 6ES7953-8LM31-0AA0 (2 MB); la stessa famiglia si estende da 64 KB fino a 8 MB e la dimensione massima accettabile dipende dalla CPU.

La scheda MMC non è un accessorio opzionale. Una moderna CPU S7-300 senza scheda MMC non può eseguire alcun programma: la CPU si arresta e richiede una scheda di memoria nel buffer di diagnostica. Si tratta di una scelta progettuale deliberata. Poiché la scheda MMC è l'unica memoria non volatile del sistema, contiene non solo il programma, ma anche i dati di mantenimento e, su alcune CPU, il firmware. Se la scheda non è presente, la CPU non ha né un programma da eseguire né un luogo in cui memorizzare lo stato di mantenimento.

La scheda MMC è dotata di un piccolo cursore di protezione da scrittura sul suo alloggiamento. Quando il cursore è in posizione di blocco, la CPU rifiuta i download con un messaggio che indica che la scheda di memoria è protetta da scrittura. Il cursore protegge la scheda da sovrascritture accidentali sul campo, ma è una causa comune di download non riusciti dopo la manutenzione, quindi la sua posizione dovrebbe essere la prima cosa da controllare quando un download viene rifiutato.

Se la memoria di caricamento è persa o vuota: sull'S7-300, una MMC vuota o mancante significa che la CPU si arresta e non può avviarsi. Sull'S7-400, una memoria di caricamento RAM vuota senza scheda EPROM significa che la CPU si avvia in modalità STOP senza programma utente; se è presente una scheda EPROM, la CPU copia il programma dalla EPROM nella RAM all'avvio e funziona normalmente.

 

2.2 Caricamento della memoria sull'S7-400: RAM con batteria di backup e Flash EPROM

 

Il processore S7-400 implementa la memoria di caricamento in due fasi. La fase primaria è costituita da una RAM integrata nel modulo CPU, che contiene la copia di lavoro della memoria di caricamento. Questa RAM è alimentata da una batteria di backup, ad esempio la 6ES7971-0BA00, montata nell'alimentatore o nel vano CPU. La fase secondaria è una scheda Flash EPROM a innesto, ad esempio la 6ES7952-1KM00-0AA0, che fornisce una memoria non volatile in grado di resistere anche a una completa interruzione dell'alimentazione della batteria.

All'accensione, l'S7-400 si comporta nel seguente modo. Se la memoria RAM contiene un programma, la CPU lo copia nella memoria di lavoro e si avvia. Se la RAM è vuota ma è inserita una scheda Flash EPROM, la CPU copia il programma dalla EPROM nella memoria RAM e poi nella memoria di lavoro. Se entrambe sono vuote, la CPU si arresta. Questa sequenza di avvio è il motivo per cui un S7-400 ben manutenuto può riprendersi da un'interruzione di corrente senza alcun intervento, a condizione che la EPROM sia stata mantenuta aggiornata.

Se la memoria di caricamento è persa o vuota: sull'S7-400, la perdita della memoria di caricamento RAM si verifica quando la batteria si scarica durante un'interruzione di corrente e non è inserita alcuna scheda EPROM. Il programma viene quindi perso e deve essere scaricato nuovamente o ripristinato da un file di backup. Questo scenario, più di ogni altro, giustifica l'abitudine di scaricare il programma sulla EPROM dopo ogni modifica di messa in servizio.

 

3. Memoria di lavoro: lo spazio di esecuzione

 

La memoria di lavoro è la RAM integrata in cui la CPU esegue il programma. Internamente è divisa in un'area di codice e un'area dati. In fase di download, la CPU copia i blocchi eseguibili dalla memoria di caricamento alla memoria di lavoro; in fase di esecuzione, la CPU preleva istruzioni e dati esclusivamente dalla memoria di lavoro. La memoria di lavoro è sempre volatile. Su entrambe le famiglie di processori, viene ricostruita a partire dalla memoria di caricamento ad ogni accensione, quindi un programma che "sopravvive" a un ciclo di accensione lo fa perché la memoria di caricamento è sopravvissuta, non perché lo sia la memoria di lavoro.

La memoria di lavoro è lo strato che determina se un programma può essere caricato. Un blocco di dati di grandi dimensioni, un OB (Object Object) lungo o un FB (Frameboard Block) fortemente annidato possono esaurire la memoria di lavoro anche quando la memoria di caricamento ha ancora spazio libero. In questo caso, il download viene rifiutato con un messaggio come "Memoria utente insufficiente" e la soluzione consiste nel ridurre le dimensioni del programma o nel passare a una CPU con più memoria di lavoro. La memoria di lavoro non può essere espansa aggiungendo schede; è una proprietà fissa del modulo CPU stesso. Per questo motivo, il valore della memoria di lavoro nelle specifiche tecniche della CPU è il dato più importante da verificare quando un progetto supera le capacità del controller.

Se la memoria di lavoro viene persa o è vuota: la CPU si arresta o non si avvia. Poiché la memoria di lavoro viene ricostruita ad ogni accensione, la sua perdita è normalmente transitoria e impercettibile: la CPU si limita a ricaricare i dati dalla memoria di carico. La perdita diventa permanente solo quando viene persa anche la memoria di carico, come nel caso della batteria dell'S7-400 descritto in precedenza.

 

4. Memoria di sistema e aree di indirizzamento

 

La memoria di sistema è il termine collettivo che indica le aree dati indirizzabili su cui opera il set di istruzioni. Queste aree sono implementate nei circuiti interni della CPU, non su supporti rimovibili, e le loro dimensioni sono proprietà fisse di ciascun modello di CPU. La Tabella 2 elenca le aree e le loro funzioni.

Tabella 2: Aree di indirizzi della memoria di sistema

Area | Simbolo | Contenuto | Note

Immagine di processo degli input | I | Stati di input copiati dai moduli I/O all'inizio di ogni scansione OB 1 | Indirizzamento a byte e bit, ad esempio da I0.0 a I0.7 nel byte di input IB0; intervallo predefinito 128 byte, configurabile fino a un massimo specifico della CPU (2048 byte sulla maggior parte delle CPU S7-300)

Immagine del processo degli output | Q | Stati di output scritti nei moduli I/O al termine di ogni scansione OB 1 | Indirizzamento di byte e bit, ad esempio da Q0.0 a Q0.7 nel byte di output QB0

I/O periferici | PI, PQ | Accesso diretto ai moduli I/O che bypassa l'immagine di processo | Utilizzati per I/O ad alta velocità o critici in termini di tempo; indicati come parole PIW/PQW

Memoria a bit | M | Flag per stati logici intermedi | Indirizzamento a byte e a bit, ad esempio da M0.0 a M0.7 nel byte flag MB0; la dimensione dipende dalla CPU; su alcune CPU i primi 256 byte sono riservati ai dati di sistema e non possono essere utilizzati liberamente

Blocchi di dati | DB | Archiviazione di dati strutturati per il programma utente | L'attributo Retain controlla se il contenuto del DB viene mantenuto dopo un riavvio

Timer | T | Funzioni timer S5 | Il numero di timer dipende dalla CPU

Contatori | C | Funzioni contatore | Il numero di contatori dipende dalla CPU

Dati locali | L | Variabili temporanee della chiamata OB, FB o FC attualmente attiva | Basato su stack; la profondità è limitata per classe di priorità

 

4.1 L'immagine del processo

 

Le aree I e Q vengono aggiornate tramite l'immagine di processo. All'inizio del programma ciclico, la CPU copia gli stati dei moduli di input nell'area I; durante il ciclo, il programma legge queste istantanee coerenti; al termine del ciclo, la CPU copia l'area Q nei moduli di output. Questo meccanismo garantisce che tutte le sezioni del programma vedano gli stessi stati di input all'interno di una singola scansione. L'accesso diretto alle periferiche (PIW, PQW) bypassa l'immagine e legge o scrive direttamente sul modulo, il che è più veloce ma non coerente all'interno della scansione. Un'immagine di processo troppo piccola per gli I/O installati può essere ingrandita nelle proprietà della CPU in STEP 7, fino al massimo specifico della CPU.

 

4.2 Memoria a bit M e il byte flag

 

La memoria a bit, storicamente chiamata flag, è il blocco di memoria del programma. Un singolo bit di flag, ad esempio M0.0, contiene uno stato booleano; otto bit consecutivi formano il byte di flag MB0, indirizzato da M0.0 a M0.7. Le parole di flag (MW) e le doppie parole di flag (MD) sono formate raggruppando i byte. La dimensione dell'area M varia a seconda della CPU: una CPU 314 fornisce 256 byte, una CPU 315-2 DP ne fornisce 2048 e una CPU 319-3 PN/DP ne fornisce 8192. Su diverse CPU S7-300, parte dell'area M, ad esempio i primi 256 byte, è riservata ai dati di sistema utilizzati dal sistema operativo e dalle funzioni di sistema; l'utilizzo di questi indirizzi nel programma utente può produrre comportamenti anomali, pertanto è necessario consultare i dati tecnici della CPU specifica prima di allocare liberamente l'area M.

 

4.3 Timer, contatori e dati locali

 

I timer (T) e i contatori (C) sono elementi funzionali con uno stato interno: un timer memorizza il tempo rimanente, un contatore memorizza il valore del conteggio. Il loro numero è fisso per CPU, ad esempio 256 timer e 256 contatori su una CPU 314 e 2048 di ciascuno su una CPU 319-3 PN/DP. I dati locali (L) sono l'area dello stack che contiene le variabili temporanee della chiamata attualmente attiva. Ogni volta che viene chiamato un FB o un FC, la CPU riserva una porzione dello stack dei dati locali per le variabili temporanee di quel blocco; annidamenti profondi o strutture temporanee di grandi dimensioni possono esaurire lo stack, il che produce un errore di programmazione e, se non gestito, un STOP. Sulle CPU S7-300 lo stack dei dati locali è tipicamente di 32 KB condiviso tra le classi di priorità; sulle CPU S7-400 la capacità è maggiore e, sui modelli più recenti, allocata per classe di priorità.

Se la memoria di sistema viene persa o ripristinata: le aree non ritentive I, Q, M, T, C e L vengono inizializzate ad ogni riavvio e i DB non ritentivi vengono ripristinati ai loro valori di caricamento. Le aree ritentive vengono ripristinate dalla memoria di caricamento, meccanismo che verrà esaminato nelle sezioni successive.

 

5. L'S7-300 nella pratica: MMC, dati persistenti e la questione della batteria

 

La caratteristica distintiva del concetto di memoria dell'S7-300 è l'assenza di una batteria. Il programma risiede sulla MMC, la memoria di lavoro viene ricaricata dalla MMC ad ogni accensione e anche i dati di ritenzione sono memorizzati sulla MMC. Quando la CPU rileva uno spegnimento, salva i valori correnti delle aree di ritenzione configurate sulla MMC; al successivo riavvio, li ripristina. Questa progettazione ha tre conseguenze pratiche.

Innanzitutto, la MMC è un componente soggetto a usura in senso stretto. La memoria flash ha una durata limitata in termini di cicli di cancellazione/scrittura e ogni spegnimento riscrive le aree di ritenzione. In condizioni di normale funzionamento ciclico questo non rappresenta un problema, ma i programmi che modificano i dati di ritenzione in cicli rapidi o che utilizzano le funzioni di sistema da SFC 82 a SFC 84 per scrivere blocchi di dati sulla MMC in un ciclo continuo, riducono la durata della scheda. Il numero nominale di cicli di scrittura è indicato nella documentazione Siemens relativa alla scheda.

In secondo luogo, la configurazione della memoria persistente è esplicita. In STEP 7, la finestra di dialogo delle proprietà della CPU (Configurazione hardware, scheda Memoria persistente) definisce quanti byte di M, quanti timer e quanti contatori sono persistenti. L'intervallo predefinito del flag di memoria persistente sulla maggior parte delle CPU S7-300 va da M 0.0 a M 15.7. I blocchi di dati vengono resi persistenti singolarmente contrassegnandoli con l'attributo Retain nelle proprietà del blocco. Solo gli intervalli configurati sopravvivono a un ciclo di alimentazione; tutto il resto viene inizializzato.

In terzo luogo, il comportamento di download è semplice e uniforme. Un normale download in STEP 7 scrive il blocco nella MMC (memoria di caricamento) e lo copia nella memoria di lavoro. Non esiste un percorso separato "download solo in RAM" sull'S7-300: con una MMC installata, ogni download è automaticamente non volatile. La direzione di caricamento funziona allo stesso modo: un caricamento legge dalla MMC. Le schede MMC di ricambio in tutte le capacità sono elencate nel catalogo ricambi PLC Siemens, il che è importante per gli impianti che devono tenere a magazzino una scheda di ricambio programmata.

La questione della batteria, che domina le discussioni sull'S7-400, semplicemente non si pone sull'S7-300. Se una CPU S7-300 non ha batteria, il programma non può essere perso a causa di un guasto della batteria. Le modalità di guasto realistiche sono una MMC mancante, piena, protetta da scrittura o difettosa, e ciascuna di esse è esaminata nella Sezione 9.

 

6. L'S7-400 in pratica: batterie, EPROM e catena di avvio

 

Il concetto di memoria dell'S7-400 è organizzato attorno a una RAM con batteria di backup, con la Flash EPROM come rete di sicurezza. La batteria di backup, ad esempio la 6ES7971-0BA00, mantiene la memoria di carico basata su RAM e i dati di ritenzione mentre il controller è spento. Il modulo CPU integra anche una batteria tampone ricaricabile, che mantiene la RAM per un tempo limitato, dell'ordine di decine di minuti a piena carica, durante la sostituzione della batteria principale. Questa batteria tampone è il motivo per cui è possibile sostituire la batteria a computer spento, ma non bisogna mai fare affidamento su di essa per un periodo superiore a quello specificato nel manuale.

La scheda Flash EPROM, ad esempio la 6ES7952-1KM00-0AA0, costituisce lo strato non volatile dell'S7-400. Non è necessaria per il funzionamento, ma fa la differenza tra un guasto della batteria recuperabile e uno catastrofico. La famiglia di schede spazia da 64 KB a 64 MB e la dimensione massima dipende dalla CPU. La sequenza di avvio descritta nella Sezione 2.2 fa sì che una CPU con una scheda EPROM carica si ripristini automaticamente da una batteria scarica; una CPU senza scheda si avvia in modalità STOP e necessita di un nuovo download.

Il comportamento di download sul S7-400 ha due livelli, e confonderli è una causa comune di problemi sul campo:

1. Un normale download scrive il blocco nella memoria RAM di caricamento e nella memoria di lavoro. La modifica è attiva immediatamente ma è volatile: sopravvive a un ciclo di accensione/spegnimento solo finché la batteria mantiene attiva la RAM.

2. "Scarica su EPROM" (o "Copia RAM su ROM") scrive il contenuto corrente della memoria di carico sulla scheda Flash EPROM. La modifica viene quindi mantenuta anche in caso di interruzione totale della batteria.

La classica sequenza di guasti dell'S7-400 è quindi la seguente: scaricare una modifica nel pomeriggio, non copiare mai i dati dalla RAM alla ROM e scoprire due settimane dopo, a seguito di un'interruzione di corrente con la batteria scarica, che la CPU si riavvia con il vecchio programma dalla EPROM. La modifica esisteva solo nella RAM ed è andata persa. Mantenere aggiornata la EPROM dopo ogni modifica di configurazione è la regola di manutenzione della memoria più efficace per l'S7-400.

Il PLC S7-400 segnala continuamente lo stato della batteria. Un livello di batteria basso accende il LED BATF sulla parte anteriore della CPU o dell'alimentatore e scrive una voce nel buffer di diagnostica. STEP 7 mostra lo stato dettagliato in Diagnostica hardware / Informazioni modulo nella scheda Batteria, che elenca lo stato della batteria e, su molte CPU, la capacità di backup residua stimata. Le batterie di backup come la 6ES7971-0BA00 sono disponibili a magazzino nella gamma di ricambi per PLC proprio perché sono un materiale di consumo con una durata di servizio misurata in anni, non in decenni.

 

7. Dimensionamento della memoria: la realtà per CPU

 

La questione pratica che emerge in ogni discussione su progetti relativi alla memoria è sempre la stessa: quanta memoria di lavoro e quanta memoria di carico possiede effettivamente la CPU? La Tabella 3 riporta valori rappresentativi per cinque CPU ampiamente diffuse. Il valore della memoria di lavoro è fisso; il valore della memoria di carico corrisponde alla dimensione massima della scheda MMC o EPROM supportata dalla CPU.

Tabella 3: CPU rappresentative e loro memoria

CPU | Numero d'ordine | Memoria di lavoro | Memoria di carico (max) | Utilizzo tipico

CPU 314 | 6ES7314-1AG14-0AB0 | 128 KB | MMC fino a 8 MB | Macchine di medie dimensioni, applicazioni standard S7-300

CPU 315-2 DP | 6ES7315-2EH14-0AB0 | 256 KB | MMC fino a 8 MB | I/O distribuito tramite PROFIBUS DP

CPU 319-3 PN/DP | 6ES7318-3EL01-0AB0 | 2 MB | MMC fino a 8 MB | Applicazioni S7-300 di grandi dimensioni con PROFINET

CPU 414-2 | 6ES7414-2XK05-0AB0 | 512 KB | RAM più EPROM fino a 64 MB | Applicazioni S7-400 di fascia media

CPU 417-4 | 6ES7417-4XT05-0AB0 | 4 MB | RAM più EPROM fino a 64 MB | Applicazioni S7-400 ad alte prestazioni

Dalla tabella si possono ricavare due regole di dimensionamento. In primo luogo, la memoria di lavoro rappresenta il vincolo principale per la logica del programma. Un progetto con blocchi di dati di grandi dimensioni o con molti blocchi nel percorso ciclico necessita di un margine di memoria di lavoro, poiché la CPU esegue il codice dalla memoria di lavoro e non può caricarlo dalla memoria di caricamento su richiesta. In secondo luogo, la memoria di caricamento rappresenta il vincolo principale per i dati del progetto: simboli, commenti e oggetti tecnologici vengono memorizzati solo nella memoria di caricamento. Un progetto che compila in 300 KB di codice potrebbe comunque richiedere una MMC da 2 MB una volta inclusi commenti e informazioni sui simboli. La prassi generale è quella di dimensionare la MMC in modo generoso in fase di messa in servizio, poiché una successiva sostituzione della scheda richiede un download completo e una breve interruzione della produzione.

 

8. Configurazione dei dati di conservazione

 

I dati persistenti rappresentano lo stato che deve sopravvivere a un ciclo di alimentazione: contatori dei pezzi finiti, selezioni delle ricette, flag di modalità e totali accumulati. La procedura di configurazione è identica nella struttura per entrambe le famiglie, mentre il meccanismo di memorizzazione sottostante è differente.

Sul S7-300, apri le proprietà della CPU in Configurazione hardware e seleziona la scheda Memoria con ritenzione. Qui, definisci gli intervalli di ritenzione per la memoria a bit (ad esempio 16 byte di M per impostazione predefinita), il numero di timer di ritenzione e il numero di contatori di ritenzione. I blocchi di dati vengono gestiti singolarmente: nelle proprietà del DB, contrassegna il blocco come "Ritenzione". I dati con ritenzione vengono quindi memorizzati sulla MMC allo spegnimento e ripristinati all'accensione, motivo per cui persistono anche in assenza di batteria.

Sul modello S7-400, la stessa finestra di dialogo definisce gli intervalli di memorizzazione, ma il meccanismo di archiviazione è la RAM con batteria di backup. I valori memorizzati permangono dopo un ciclo di accensione/spegnimento finché la batteria è in buone condizioni. Se la batteria si scarica mentre il controller è spento, i dati memorizzati vengono persi e i database interessati vengono reinizializzati ai valori di carico al successivo avvio. Per questo motivo, lo stato della batteria di un S7-400 è un argomento di manutenzione, non un dettaglio operativo.

La maggior parte dei problemi relativi ai dati persistenti si verifica in tre casi: l'intervallo di dati persistenti non è configurato affatto, quindi i flag si reimpostano a ogni riavvio; l'intervallo è configurato, ma il database non ha l'attributo Retain, quindi il contenuto del database si reimposta anche se i flag M rimangono attivi; oppure l'intervallo è configurato sulla CPU sbagliata in un progetto multi-CPU, quindi la CPU prevista si reimposta mentre una CPU non utilizzata mantiene i dati. Tutti e tre i problemi possono essere diagnosticati in pochi minuti confrontando la scheda Memoria persistente con il comportamento osservato dopo un ciclo di accensione/spegnimento di prova.

 

9. Modalità di guasto e diagnostica

 

I guasti di memoria sui modelli S7-300/400 si manifestano tramite i LED, il buffer di diagnostica e il comportamento durante le operazioni di download e upload. La Tabella 4 raccoglie le modalità di guasto più comuni, le relative cause e il percorso diagnostico per ciascuna di esse.

Tabella 4: Modalità di guasto e diagnostica relative alla memoria

Sintomo | Causa probabile | Percorso diagnostico | Rimedio

CPU in stato STOP; LED SF e STOP accesi; voce diagnostica "STOP a causa di un errore di memoria" | MMC mancante o difettosa (S7-300) o memoria di caricamento danneggiata | Leggere il buffer di diagnostica tramite STEP 7 (nodi accessibili, informazioni sul modulo); verificare l'inserimento della MMC | Inserire una MMC funzionante con un backup del programma; scaricarlo nuovamente; sostituire la scheda se difettosa

Download rifiutato con "Memoria utente insufficiente" | Capacità della memoria di lavoro o di caricamento esaurita | Confronta le dimensioni dei blocchi del progetto con la memoria di lavoro della CPU; verifica la memoria di caricamento libera | Elimina i blocchi inutilizzati; riduci le dimensioni del database; passa a una CPU con più memoria di lavoro o a una MMC più grande

Download rifiutato con il messaggio "la scheda di memoria è protetta da scrittura" | Il cursore MMC è bloccato | Ispezionare il cursore sull'alloggiamento della scheda | Aprire il cursore; ripetere il download

Download rifiutato su un S7-300 senza scheda inserita | MMC assente | Controllare lo slot della scheda; leggere il buffer di diagnostica | Inserire la MMC; la CPU accetta quindi il download

LED S7-400 BATF acceso; voce diagnostica "batteria scarica" ​​| Batteria di backup esaurita o mancante | Informazioni modulo, scheda Batteria; controllare tensione e stato | Sostituire la batteria secondo la procedura descritta nella Sezione 11; verificare successivamente il contenuto della RAM

S7-400 si riavvia con un programma precedente dopo un'interruzione di corrente | Batteria scarica e scheda EPROM contiene una versione precedente all'ultimo download della RAM | Confrontare la data della EPROM con l'ultima modifica di messa in servizio | Copiare la RAM nella ROM / scaricare nella EPROM dopo ogni modifica; sostituire la batteria

Il caricamento non restituisce blocchi o restituisce un progetto incompleto | I blocchi esistono solo nella memoria di lavoro oppure la MMC contiene una versione precedente (S7-300) | Tentare il caricamento dalla CPU; verificare quali blocchi sono elencati | Scaricare prima il programma corrente nella MMC; quindi caricarlo

Dati conservati persi dopo un riavvio | Intervalli conservativi non configurati, DB senza attributo Conserva o MMC rimosso allo spegnimento (S7-300) | Esaminare la scheda Memoria conservativa; eseguire un ciclo di accensione controllato | Configurare gli intervalli conservativi e gli attributi Conserva; scaricare nuovamente

I report delle chiamate SFC 82/83/84 "Memoria utente non disponibile" | Limite di cicli di scrittura o di riempimento della MMC raggiunto durante la registrazione dei dati in fase di esecuzione | Verificare lo spazio libero sulla MMC; rivedere i parametri della chiamata | Liberare spazio sulla scheda; archiviare ed eliminare i vecchi blocchi di dati registrati

Due regole generali rendono queste diagnosi più rapide. In primo luogo, il buffer di diagnostica è la prova primaria: registra la causa dell'arresto, il timestamp e il modulo che ha attivato l'evento, ed è leggibile anche da una CPU in stato STOP. In secondo luogo, la distinzione tra memoria di caricamento e memoria di lavoro spiega la maggior parte delle anomalie durante il caricamento/scaricamento: se un blocco non si trova nella memoria di caricamento, non può essere caricato; se non si trova nella memoria di lavoro, non può essere eseguito.

 

10. Procedure di manutenzione e backup

 

La manutenzione della memoria sulle apparecchiature S7-300/400 di vecchia generazione segue un piccolo insieme di regole che prevengono quasi tutte le modalità di guasto elencate nella Tabella 4.

Eseguire un backup prima di procedere. Prima di qualsiasi download, operazione su scheda di memoria o intervento sulla batteria, è necessario caricare completamente il programma e la configurazione hardware sulla stazione di ingegneria. Il file di backup è la garanzia che rende reversibile ogni passaggio successivo. Molti impianti programmano un nuovo backup dopo ogni modifica in fase di messa in servizio e conservano il file su un server con la data nel nome del file.

Controllare periodicamente la batteria dell'S7-400. Lo stato della batteria è visibile nella scheda Batteria nella sezione Diagnostica hardware/Informazioni sul modulo (STEP 7), e il LED BATF fornisce un'indicazione locale. Un controllo mensile del LED BATF durante le ispezioni di routine, unito a una revisione trimestrale della scheda Batteria, consente di individuare una batteria scarica molto prima che si trasformi in un problema di produzione. La durata utile della batteria si misura in anni, ma varia in base alla temperatura ambiente e alla durata delle interruzioni di corrente; pertanto, la sostituzione basata su un calendario prestabilito è meno affidabile rispetto alla sostituzione basata sullo stato della batteria.

Utilizzare le schede MMC seguendo scrupolosamente le istruzioni. Le schede MMC possono essere inserite o rimosse solo con la CPU spenta. La rimozione di una scheda durante il funzionamento o durante un download può danneggiarla e richiedere una formattazione e un nuovo download completo. Le schede devono essere conservate in un imballaggio antistatico, etichettate con il nome del progetto e la versione del firmware e protette da scrittura tramite l'apposito cursore una volta che il contenuto è definitivo. Avere una scheda di riserva programmata a disposizione rappresenta la soluzione di ripristino di emergenza più rapida per un impianto S7-300; la gamma di ricambi per PLC Siemens copre le schede da 512 KB a 8 MB.

Considera l'alimentazione. L'S7-300 è alimentato dal PS 307 e l'S7-400 dal PS 407, entrambi disponibili per reti a 120 V/60 Hz e 230 V/50 Hz; l'intervallo di tensione in ingresso è stampato sulla targhetta di ciascun modulo. I moduli sono dotati di marcatura CE per il mercato europeo e di certificazioni UL/CSA per le installazioni nordamericane. Un alimentatore difettoso produce sintomi di memoria prima di causare un guasto totale, poiché i cali di tensione corrompono il contenuto della RAM e attivano sequenze di riavvio. Le misurazioni della tensione ai terminali di carico vanno eseguite durante la stessa manutenzione del controllo della batteria.

Scorte di ricambi per impianti obsoleti. Gli impianti che utilizzano hardware S7-300/400 oltre il suo ciclo di vita originale dovrebbero disporre, come minimo, di una MMC programmata per ogni tipo di CPU, una batteria di backup di riserva per ogni S7-400 e una CPU di riserva per ogni tipo in uso. Le CPU più vecchie sono sempre più difficili da reperire, quindi è consigliabile procurarsi la CPU di riserva finché il tipo è ancora disponibile. Se l'impianto utilizza schede Flash EPROM, una scheda di riserva con il programma corrente completa il set. Il costo di una scheda programmata e di una batteria è irrisorio rispetto al costo di un arresto imprevisto della produzione, e i prezzi in USD variano in base alla regione e alla disponibilità.

 

11. Domande frequenti

 

Il processore S7-300 perde il programma quando la batteria si scarica? No, perché l'S7-300 non ha una batteria per la memorizzazione del programma. Il programma risiede sulla MMC e la memoria di lavoro viene ricaricata dalla MMC ad ogni accensione. Pertanto, una batteria scarica non causa la perdita del programma sull'S7-300; la maggior parte delle CPU S7-300 non ha nemmeno un vano batteria. La questione della batteria si applica all'S7-400, dove la memoria di caricamento basata su RAM dipende dalla batteria di backup quando il controller è spento.

Cosa succede se la scheda MMC viene rimossa mentre la CPU è in funzione? La CPU potrebbe arrestarsi e la scheda stessa potrebbe danneggiarsi, poiché la CPU scrive sulla MMC allo spegnimento e durante i download. Siemens specifica che la scheda MMC può essere inserita o rimossa solo a computer spento. Se una scheda è stata rimossa durante il funzionamento, spegnere la CPU, reinserire la scheda e controllare il buffer di diagnostica. Se la scheda risulta danneggiata, formattarla e scaricare nuovamente il programma dal backup.

Come si rende persistente la memoria su un S7-300? Aprire le proprietà della CPU in Configurazione hardware e selezionare la scheda Memoria persistente. Definire gli intervalli di ritenzione per la memoria a bit (predefinito da M 0.0 a M 15.7), il numero di timer e il numero di contatori. Per i blocchi di dati, contrassegnare il blocco con l'attributo Mantieni nelle sue proprietà. I ​​dati persistenti vengono quindi salvati nella MMC allo spegnimento e ripristinati all'accensione, senza batteria. Si noti che solo gli intervalli configurati mantengono i loro valori; tutto il resto viene inizializzato al riavvio.

Qual è la procedura di sostituzione della batteria dell'S7-400? Innanzitutto, verificare che il programma corrente sia memorizzato su una scheda Flash EPROM o in un file di backup sulla stazione di ingegneria; questo passaggio è obbligatorio. Quindi, con la CPU accesa, aprire il vano batteria e sostituire la cella con una nuova dello stesso tipo (6ES7971-0BA00), operando entro il tempo di buffer fornito dalla batteria ricaricabile integrata, in genere dell'ordine di decine di minuti a piena carica. Dopo l'inserimento, verificare che il LED BATF si spenga e controllare lo stato in Informazioni modulo nella scheda Batteria. Se la CPU è stata spenta e la RAM è andata persa, ripristinare il programma dalla EPROM o dal backup prima di riavviare la produzione.

Posso scaricare solo nella memoria di lavoro? Sull'S7-300, no: con una MMC installata, ogni download scrive sulla MMC e copia nella memoria di lavoro, quindi ogni download è automaticamente non volatile. Sull'S7-400, un normale download scrive nella memoria di caricamento RAM e nella memoria di lavoro; la modifica è volatile a meno che non si scarichi poi sulla EPROM o si copi la RAM in ROM. Una modifica che esiste solo nella RAM sopravvive a un ciclo di accensione/spegnimento solo finché la batteria mantiene attiva la RAM. Se la batteria si scarica durante un'interruzione di corrente, la modifica viene persa e la CPU si riavvia con la versione presente nella EPROM.

Perché il mio caricamento non mostra blocchi? Il caricamento legge dalla memoria di caricamento. Sul S7-300, i blocchi presenti solo nella memoria di lavoro non possono essere caricati, il che in genere accade quando la MMC è stata sostituita o formattata dopo l'ultimo download. Scaricare prima il programma corrente sulla MMC, quindi eseguire il caricamento. Sul S7-400, verificare che la memoria di caricamento RAM, e non solo la memoria di lavoro, contenga il programma; se la CPU è stata riavviata dalla EPROM dopo un'interruzione di corrente, il caricamento restituisce la versione presente nella EPROM.

Quanto dura la batteria dell'S7-400 e quando deve essere sostituita? La durata dipende dalla composizione chimica della batteria, dalla temperatura ambiente e dalla frequenza e durata delle interruzioni di corrente. Il metodo più affidabile è la sostituzione in base allo stato: sostituire la cella quando il LED BATF si accende o quando le informazioni del modulo segnalano uno stato di carica bassa. In un rack acceso, la durata tipica è di diversi anni. La batteria tampone ricaricabile sulla CPU offre una finestra temporale limitata per la sostituzione della batteria principale, quindi è consigliabile avere una cella di ricambio a portata di mano prima di iniziare la procedura.

 

12. Riepilogo

 

Il concetto di memoria degli S7-300/400 è un modello a tre livelli. La memoria di caricamento contiene il programma completo ed è non volatile (MMC sull'S7-300, RAM con batteria di backup e Flash EPROM opzionale sull'S7-400). La memoria di lavoro è la RAM integrata volatile da cui la CPU esegue i programmi e viene ricostruita dalla memoria di caricamento ad ogni avvio. La memoria di sistema fornisce le aree di indirizzamento I, Q, M, T, C, L e DB, con sottoinsiemi ritentivi configurati in STEP 7 e ripristinati dalla memoria di caricamento al riavvio.

La maggior parte dei problemi sul campo si riconduce a un numero limitato di cause: una scheda MMC mancante o protetta da scrittura sull'S7-300, una batteria scarica o una EPROM obsoleta sull'S7-400, un intervallo di memoria non configurato o un programma che supera la memoria di lavoro. Ciascuna causa ha un percorso diagnostico definito attraverso i LED, il buffer di diagnostica e le informazioni del modulo, e ciascuna ha una soluzione definita. Anche le regole di manutenzione per prevenirle sono poche: eseguire un backup prima di qualsiasi download, mantenere aggiornata la EPROM sull'S7-400, controllare la batteria a intervalli regolari, maneggiare le schede MMC solo a computer spento e tenere a disposizione una scheda di riserva programmata e una batteria di riserva. Per gli impianti che utilizzano hardware S7-300/400 di vecchia generazione, queste regole non sono un'attività facoltativa, ma fanno la differenza tra un breve intervento e una rimessa in servizio completa.

 

13. Lista di controllo per la manutenzione

 

· [ ] Il programma completo e la configurazione hardware vengono salvati nella stazione di ingegneria dopo ogni modifica di messa in servizio

· [ ] MMC inserita in ogni CPU S7-300; MMC di riserva programmata memorizzata per tipo di CPU (cursore di protezione da scrittura chiuso)

· [ ] Posizione del cursore MMC verificata prima del download; schede inserite e rimosse solo a computer spento

· [ ] LED S7-400 BATF controllati durante i giri di routine (mensili)

· [ ] Stato della batteria S7-400 verificato in Informazioni sul modulo, scheda Batteria (trimestrale); batteria di ricambio disponibile

· [ ] Aggiornare le schede EPROM dopo ogni download (copiare la RAM nella ROM / scaricare nella EPROM)

· [ ] Intervalli di ritenzione e attributi di ritenzione verificati rispetto ai requisiti di processo dopo qualsiasi modifica della configurazione

· TAG CALDI : S7-300 S7-400 Siemens S7-300 Siemens S7-400 Carica memoria Memoria di lavoro

sottoscrivi

Continua a leggere, rimani aggiornato, iscriviti e ti invitiamo a dirci cosa ne pensi.

invia
Diritto d'autore 2026 @ TZ TECH Co., LTD. .Tutti i diritti riservati Disclaimer: Non siamo un distributore autorizzato o un distributore del produttore del prodotto di questo sito Web. Il prodotto potrebbe avere codici data più vecchi o essere una serie precedente rispetto a quella disponibile direttamente dalla fabbrica o dai rivenditori autorizzati. Poiché la nostra azienda non è un distributore autorizzato di questo prodotto, la garanzia del produttore originale non si applica. Anche se molti prodotti DCS PLC avranno già installato il firmware, la nostra azienda non garantisce se un prodotto DSC PLC avrà o meno firmware e , se dispone di firmware, se il firmware è il livello di revisione necessario per la tua applicazione. La nostra azienda inoltre non fornisce alcuna garanzia in merito alla capacità o al diritto dell'utente di scaricare o ottenere in altro modo il firmware per il prodotto dalla nostra azienda, dai suoi distributori o da qualsiasi altra fonte. La nostra azienda non garantisce inoltre il diritto dell'utente di installare tale firmware sul prodotto. La nostra azienda non otterrà né fornirà firmware per tuo conto. È tuo obbligo rispettare i termini di qualsiasi contratto di licenza con l'utente finale o documento simile relativo all'ottenimento o all'installazione del firmware.

Mappa del sito | blog | XML | politica sulla riservatezza

lasciate un messaggio
Se sei interessato ai nostri prodotti e vuoi conoscere maggiori dettagli, lascia un messaggio qui, ti risponderemo il prima possibile.
invia

Casa

Prodotti

whatsApp

contatto

LE TUE IMPOSTAZIONI DEI COOKIE

Inoltre, con il tuo permesso, vogliamo inserire cookie per rendere la tua visita e l'interazione con slOC più personale. Per questo utilizziamo cookie analitici e pubblicitari. Con questi cookie noi e terze parti possiamo tracciare e raccogliere il tuo comportamento su Internet all'interno e all'esterno di super-instrument.com. In questo modo noi e terzi adattiamo super-instrument.com e le pubblicità al tuo interesse. Facendo clic su Accetta accetti questo. Se rifiuti, utilizziamo solo i cookie necessari e purtroppo non riceverai alcun contenuto personalizzato. Ti invitiamo a visitare la nostra Cookie policy per maggiori informazioni o per modificare il tuo consenso in futuro.

Accept and continue Decline cookies