Vai al contenuto
PLC Forum


Salvataggio Variabili S7 200 - il mio primo programma e già sono incasinata


titty

Messaggi consigliati

Tytty, per favore niente casini con utenze multiple: rischi solo di vederti bloccare tutte e due gli accounts.

Se l'altro account è di un altro utente non è giusto che lo usi tu con la sua password.

Per il tuo problema.

C'è poco da aggiungere alla, stranamente, chiarissima spiegazione Siemens. Scrivi l'indirizzo della memoria da salvare i SMW32, poi alzi SMB31 e attendi sino a che SM31.7 è basso, indicando l'avvenuta scrittura. Le memorie EEPROM, come tutte le memorie, si scrivono e si leggono una cella alla volta. Purtroppo per scrivere una cella di EEProm sono necessari centinaia di usec. Quindi è norma di buona programmazione lanciare la scrittura ed eseguire la verifica dell'accadimento o su interrupt o su pollig. In questo caso puoi solo usare il polling (però non sono sicuro al 100%, dovresti verificare l'eventtuale possibilità di accodare un interrupt a SMB31.7)

Questa è la normale procedura, simile a tutte le procedure usate per scrivere e leggere le EEPROM (che sono lente).

Che tu abbia ottenuto degli ottimi risultati scolastici con JAVA, a parte la tua soddisfazione, non serve a nulla per questo tipo di lavoro.

JAVA è più simile a VB, mentre l'AWL è più simile all'assembler. Poi un conto è "giocare con i telefonini", ben altro è programmare seriamente in ambiente industriale.

Dopo più di 30 e più anni di professione te lo posso garantire senza ombra di dubbio.

Dimentica quello che hai fatto e affronta senza preconcetti il problema; problema che, tra l'altro, è banalissimo

Link al commento
Condividi su altri siti


Gabriele Corrieri

Ciao

io una soluzione del genere l'ho risolta in modo diverso: premetto che non avevo moltissime variabili (circa una ventina), le inizializzavo in un blocco che si caricava al boot-up del PLC, i valori erano quasi a posto, quindi in caso di perdita della memoria avevo sempre un set-up quasi decente anzichè una filata di zeri nelle variabili.

Ciao

Link al commento
Condividi su altri siti

Gabriele bell'idea... la condivido in pieno

Titty, vabbe che sarai una futura ingegnera, ma se la macchina rimane ferma 120 giorni pui anche appiccicare la batteria al PLC con un pezzo di scoch e un bigliettino con scritto "mettere la batteria", dire che una macchina vada in Cina non credo che impressioni nessuno qui...

:blink: di solito se in Cina c'è una macchina che non va, impacchettano il tecnico e lo spediscono con la posta prioritaria :lol:

Scherzi a parte, da quanto ho capito devi mettere dei limiti alle variabili da un TP170 a una CPU, se conosci i limiti scrivili nel programma, basta che fai

100 move VB0

200 move VB1

in due blocchetti e avrai i tuoi limiti imperdibili, oppure come scritto da Gabriele Corrieri puoi fare una tabella e caricarla col bit di batteria scarica per esempio, la cosa che non capisco è che se usi il TP170 i limiti li puoi dichiarare nel touch screen nel momento in cui dichiari la variabile, senza EPROM e senza batterie, ciao

Link al commento
Condividi su altri siti

:blink: no è la stanchezza... è probabile che se metti la batteria quando la macchina è in Cina :rolleyes: forse i dati li hai già persi, ammetto stavo pensando ad altro .... sorry... solo che mi è spiaciuto come hai risposto "e fai bene a non criticare", come dire che non ti capiamo, magari chi ti risponde lavora su impianti da milioni di euro e ne ha viste di cotte e di crude...
Link al commento
Condividi su altri siti

ringrazio tutti voi di cuore perchè siete stati carinissimi, a volte aggredisco prima di essere aggredita e forse è solo una forma di difesa, mi sono resa conto che tra di voi non c'è nessuno con pregiudizi ma provate ad essere donna, andare in giro a fare programmi e poi ditemi se gli apprezzamenti li fanno per quello che hai fatto o per il tuo sedere (quando sei fortunata)

Comunque non potendo provare i vs consigli oggi mi sono fatta prendere una cpu da tenere per fare delle prove e sicuramente nei prossimi giorni vi farò sapere, crederete mica di avermi liquidata?

Saluto, ringrazio, e auguro ai + fortunati buone vacanze

ciao bacioni

Link al commento
Condividi su altri siti

Comunque non potendo provare i vs consigli oggi mi sono fatta prendere una cpu da tenere per fare delle prove
Bravo, ottima idea!..
e sicuramente nei prossimi giorni vi farò sapere, crederete mica di avermi liquidata?
ma certo di no darling, anzi esperiamo ci faccia sapere dei tuoi progressi!!
Link al commento
Condividi su altri siti

e fai bene a non criticare nessuno, perchè se vai a leggere indietro c'è scritto che questa macchina deve essere spedita all'estero e precisamente in cina.

I tempi per nave sono dai 60 ai 120 gg tra spedizione e sdoganamento, poi c'è l'installazione che avviene non so quando quindi con la batteria tampone c'è il rischio che la memoria v non tenga.

ciao

Installo decine di macchine in Cina ogni anno, con ogni tipo di CPU, nello specifico la S7200 , con batteria tampone , non ha mai perso un dato!

Non e' che le mie macchine ci mettano meno ad arrivare in Cina delle tue, secondo me tu esageri nelle precauzioni.

Considera anche che una S7 216 , che ho installato in Italia dopo 5 settimane ha perso tutta la memoria. :(

La CPU mi e' stata sostituita da Siemens , "ormai non riparano piu' niente". <_<

Altro esempio , un cliente in Nigeria , dove non ci voglio assolutamente andare!!! ha perso i dati durante un temporale, soluzione....

Ho scritto la Eprom, 2 giorni con TNT traco , ed il problema e' risolto.

Ivan

Link al commento
Condividi su altri siti

e fai bene a non criticare nessuno, perchè se vai a leggere indietro c'è scritto che questa macchina deve essere spedita all'estero e precisamente in cina.

I tempi per nave sono dai 60 ai 120 gg tra spedizione e sdoganamento, poi c'è l'installazione che avviene non so quando quindi con la batteria tampone c'è il rischio che la memoria v non tenga.

Nella peggiore delle ipotesi ti ci posso fare un salto io, ho il visto valido fino a dicembre con altri 2 ingressi disponibili :) .

Nota a margine di sola informazione: l'ultima spedizione che abbiamo fatto è arrivata in Cina in meno di 40 giorni, infatti mi ha rovinato tutti i piani perchè sono dovuto andare a fare la messa in servizio con largo anticipo rispetto ai tempi previsti.

Link al commento
Condividi su altri siti

simone 70 dove stai andando in cina?

io sto viaggiando da torino a QINGDAO una volta ogni 3-4-mesi, dovrei tornarci dopo le ferie a fine settembre o inizio di ottobre, va a finire che si può fare 1 viaggio insieme.

ciao fammi sapere.

Link al commento
Condividi su altri siti

rispondo a Ivan 2 post sopra:

io vado in giro con il guscio sulla schiena, mentre uno che si chiama KAMIKAZE le cose le fa per forza alla svelta, solo che mi sembra di ricordare che quando cadono picchiano duro, vedi quanti kamikaze ci sono in giro.

Link al commento
Condividi su altri siti

Sono stato un mese tra maggio e giugno; ora sono in stand-by, nonostante sia stato solo 3 giorni dopo l'inizio della produzione e la teleassistenza non funzioni sembra che non ci siano grossi problemi anche se una visitina entro l'anno credo che dovrò farla anche perchè sto traducendo tutti i pannelli in cinese e non mi fido di far trasferire i programmi a loro,se hanno problemi arrestano l'impianto. Comunque la mia destinazione è più a sud in zona Shanghai e di solito viaggio via Monaco.

Ciao

Link al commento
Condividi su altri siti

facciamo così:

se parto prima io scrivo su questo forum " cerco Simone disperatamente"

se parti prima tu scrivi sempre su questo forum "cerco Titty disperatamente"

e ci scambiamo le date, o ci si becca a shanghai che devo passare per forza per cambiare.

ciao

Link al commento
Condividi su altri siti

uno che si chiama KAMIKAZE le cose le fa per forza alla svelta, solo che mi sembra di ricordare che quando cadono picchiano duro, vedi quanti kamikaze ci sono in giro.

Cara titty,

Kamikaze e' un nome o avatar come un'altro, altrimenti cosa dovrei pensare di te?

Che Gatto Silvestro ti insegua? :rolleyes:

Il Kamikaze in questione, la prima volta che e' andato in Cina, se non ricordo male, era il giugno 1984.

La macchina che installammo all'epoca , aveva un controllo a microprocessore "fatto in casa" ma funzionava bene.

Ai tempi non e' che i PLC si trovassero dietro l'angolo.

Tu avrai anche ragione a volere i guscio, ma negli anni a venire imparerai che spesso troppe precauzioni non ti salvano dai problemi veri.

Pensi davvero che in Cina il tuo problema potra' essere solo il fatto che la macchina arrivi senza dati? :huh:

Adesso chiud qui , altrimenti gli amministratori mi bacchettano.

Senza rancore......

Il Kamikaze ;)

Ivan

Link al commento
Condividi su altri siti

  • 1 month later...

ciao Titty, io faccio la programmatrice di PLC da circa 15 anni e ti assicuro che non ho mai avuto problemi, nè in cantiere nè tantomeno qui sul forum, anzi casomai sono sempre stata trattata con un occhio di riguardo rispetto ai miei colleghi maschi :)

ho pensato che per risolvere il tuo problema potresti utilizzare il modulo di memoria da 255 kb e l'assistente per le ricette, in quanto le ricette prevedono un set di valori di default per l'avviamento, che poi possono essere letti/scritti/modificati tra il programma ed il modulo di memoria.. è un sistema comodo per la parametrizzazione di macchine, e l'assistente configura automaticamente le operazioni, devi solo indirizzarlo. Se non sbaglio è disponibile per verioni da Microwin 4.0 in su.

Link al commento
Condividi su altri siti

Ciao titty, ho letto velocemente tutti i post (forse anche troppo velocemente), non ho capito benissimo dove sia il tuo problema (anche perchè all'inizio parlavi di memoria M che non ha niente a che vedere con la memoria eeprom).

La procedura è abbastanza semplice ma se non vuoi scervellarti più di tanto, poi vai sul sito della Siemens e scaricati un esempio già funzionante:

store_to_eeprom <<< ti appare una lista, clicca su "FAQ: Memorizzazione in modo permanente di campi di variabili nella EEPROM interna"

AVVERTENZA: Le variabili V interessate al trasferimento non devono assolutamente modificare il proprio valore durante tutto il processo (che può durare anche svariati secondi se salvi tutta l'area V), quindi ti suggerisco di lanciare il blocco all'accensione e bloccare il resto del programma finchè non va a 1 il bit "Done" (o a 0 il bit "Busy").

Il motivo di tutto ciò è presto detto: la routine salva un byte alla volta (1 ogni ciclo del plc) dalla ram verso la eeprom, ma se tu hai una word o una doppia word che cambia il suo valore può succedere che venga salvata mezza col valore vecchio e mezza col valore nuovo ... (mi sono spiegato come una motozzappa :huh: se non hai capito ti spiego meglio)

ciao ;)

Modificato: da JumpMan
Link al commento
Condividi su altri siti

Aggiungo un altra cosa: se devi salvare solo i settaggi della macchina prima di spedirla puoi farlo con il comando "CPU>Crea blocco dati dalla ram", se invece vuoi salvare anche le future variazioni ai dati effettuate dal cliente allora vale la pena di implementare il processo spiegato nel post precedente.

CONSIGLIO: Il comando "CPU>Crea blocco dati dalla ram" fallo in un altro programma, non nel programma originale altrimenti perdi eventuali commenti e formati di variabili che avevi nel blocco dati.

;)

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