Mauro_lab Inserito: 10 agosto 2009 Segnala Share Inserito: 10 agosto 2009 Salve, Questa volta un quisito facile facileIo ho una tabella DB dove raccolgo i dati di calibrazione dei vari strumenti. La calibrazione è qualla classica lineare MIN, MAX valore, ho realizzato una pagina sul OP che mi permette di modificare questi dati residenti sul PLC, ma noto che i dati non vengono effettivamente salvati in tabella, ad ogni riavvio del PLC mi ritrovo sempre la tabella fissata in origine.Naturalmente la DB è ritenuta.Come faccio ad aggiornare la tabella immettendo i valori da pannello operatore? Link al commento Condividi su altri siti More sharing options...
TravelMen Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Cerca nel forum la discussione del SFC-84 "WRIT_DBL"Scusa una domanda idiota con te c'è un tipo di Udine che si occupa della parte meccanica? Link al commento Condividi su altri siti More sharing options...
Mauro_lab Inserita: 10 agosto 2009 Autore Segnala Share Inserita: 10 agosto 2009 sono 3 settimane che non vedo un italiano ma se ci sono Italiani a Riyadh .... meglio se italiane Link al commento Condividi su altri siti More sharing options...
ken Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Non è che ad ogni riavvio del plc vai a riscrivere i dati di default (per default intendo quelli impostati da chi ha fatto il programma)?I dati scritti su db ritentivi restano slavati in automatico.O non ci scrivi veramente o ci sovrascrivi vecchi dati in avviamento. Link al commento Condividi su altri siti More sharing options...
Gapo Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 I dati in DB sono già ritentivi... "sfrutto" questa cosa su ogni mio impianto... sicuro che li scrivi? Link al commento Condividi su altri siti More sharing options...
Mauro_lab Inserita: 10 agosto 2009 Autore Segnala Share Inserita: 10 agosto 2009 Come ho già specificato la tabelle è ritenutaMi serve solo salvare i dati nella tabella solo quando viene fatta una modifica tramite pannello operatore.e, ovviamente al reset del PLC, riprende i dati della tabella ES: tabella datiTaratura pressioneMin ---- Max ---- LL --- L --- H -- HHquesti sono i dati salvati su due differenti DBCambio LL e salvo tramite SFC84se il PLC viene resettato dovrebbe prendermi la tabella con LL modificato Link al commento Condividi su altri siti More sharing options...
Gapo Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Onestamente non capisco il problema...Non so che OP stai usanto e come comunica col PLC, ma normalmente, se scrivi un dato in un DB (è ininfluente che sia da OP, puoi anche forzarlo dalla tabella variabili...) lo spegnuimento/riaccensione del PLC non provoca certo un reset dei dati in DB: il dato che c'era allo spegnimento ci sarà anche alla riaccensione, e questo senza chiamae in causa SFC... Link al commento Condividi su altri siti More sharing options...
ken Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Penso che lui intenda salvare i dati del DB in modo che un eventuale blocco e ripartenza con lettura dalla memory card non sovrascriva i dati modificati con quelli considerati di default.Capita a volte che, con cadute di tensione o altre menate del genere, la cpu si reinizializzi, caricando nuovamente i blocchi dalla memory card.SFC 84 "WRIT_DBL" va a scrivere i dati nella memoria di caricamento del db in modo che i dati contenuti vengano ricaricati in caso di reinizializzazione.SFC84 restituisce errori? (ret_val) Link al commento Condividi su altri siti More sharing options...
Mauro_lab Inserita: 10 agosto 2009 Autore Segnala Share Inserita: 10 agosto 2009 Il pannello operatore è un MP377 connesso in rete con il PLCPurtroppo se cambio un valore della tabella tramite pannello operatore il dato è valido solo fino a quando il PLC non viene resettato.In caso di reset i valori vengono quelli di programmazione.Se vedi la DB in online noti che il valore online cambia mentre quello di default rimane invariato. Link al commento Condividi su altri siti More sharing options...
ken Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Certo che hai un modo tutto tuo di spiegare le cose. Ho capito cosa intendevi e non solo in questo topic, solo dopo alcuni post. Link al commento Condividi su altri siti More sharing options...
Mauro_lab Inserita: 10 agosto 2009 Autore Segnala Share Inserita: 10 agosto 2009 Sono daccordo con te, qualche volta fatico a capirmi da solo Spesso si fa una domanda pensando che tutti conoscono il problema e limitando la descrizione a pochi essenziali riferimenti.Questo, spesso non chiarisce l'intità del problama, e la sua esplicazione particolareggiata è necessita di ulteriori spiegazioni.Qualche volta si spera che il lunguaggio tra tecnici sia lo stesso , altre volte capita che si usa linguaggio leggermente diversi.Forse la mia versione di software è un po antiquata e per questo la mia comunicazione verso l'esterno risulta criptata. Link al commento Condividi su altri siti More sharing options...
Gapo Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Il pannello operatore è un MP377 connesso in rete con il PLCSi fa presto a dire rete... ethernet? mpi? profibus? comunque è ininfluentePurtroppo se cambio un valore della tabella tramite pannello operatore il dato è valido solo fino a quando il PLC non viene resettato.questa cosa non può essere vera se l'MP377 punta direttamente ai dati di quella tabellaIn caso di reset i valori vengono quelli di programmazione.Se ricarichi il progetto, ma non certo se spegni e riavvii il PLCSe vedi la DB in online noti che il valore online cambia mentre quello di default rimane invariato.certo, ma quando riavvii, mica viene caricato quello di default, altrimenti le DB non sarebbero ritentive!!!Ti assicuro che di macchine e impianti ne ho avviati molti... o non ti stai spiegando bene, o... non so... Link al commento Condividi su altri siti More sharing options...
Gapo Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Penso che lui intenda salvare i dati del DB in modo che un eventuale blocco e ripartenza con lettura dalla memory card non sovrascriva i dati modificati con quelli considerati di default. Questa è un'altra cosa... Capita a volte che, con cadute di tensione o altre menate del genere, la cpu si reinizializzi, caricando nuovamente i blocchi dalla memory card. Mah... onestamente non ho mai visto questo problema se non in seguito allo scarico della batteria tampone sui vecchi modelli (ed ho avviato, 3 anni fa e 5 anni fa, un paio di impianti dove la tensione di rete va e viene come vuole). In ogni caso i parametri di scalatura analogiche sono solito inserirli fissi già di default, e non do l'opzione per cambiarli all'utente, visto che non dovrebbero cambiare mai, mentre altri parametri da DB li memorizzo in altro modo.ciao Link al commento Condividi su altri siti More sharing options...
TravelMen Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 (modificato) Per "ken" SFC84 restituisce errori? (ret_val)si certo ecco un estrapolatoCodice errore(W#16#...) Descrizione0000 Nessun errore0081 L'area di destinazione è maggiore dell'area sorgente. L'area sorgente viene scritta completamente nell'area di destinazione, i restanti byte dell'area di destinazione non vengono modificati.7000 Primo richiamo con REQ=0: trasmissione dati non attiva; BUSY ha il valore 0.7001 Primo richiamo con REQ=1: trasmissione dati avviata; BUSY ha il valore 1.7002 Richiamo temporaneo (REQ non rilevante): trasmissione dati già attiva; BUSY ha il valore 18081 L'area sorgente è maggiore dell'area di destinazione. L'area di destinazione viene scritta completamente, i restanti byte dell'area sorgente vengono ignorati.8092 Tipo di funzionamento scorretto: mentre la SFC 84 era attiva, la CPU è entrata in STOP. Con il prossimo passaggio a RUN viene emesso questo codice di errore. Richiamare nuovamente la SFC 84.8093 Nel parametro SRCBLK non è indicato un blocco dati/è indicato un blocco dati che non esiste nella memoria di lavoro80B1 Nel parametro DSTBLK non è indicato un blocco dati o il blocco dati indicato non è un oggetto della memoria di caricamento (p. es. un DB creato tramite SFC 22).80B4 Un DB con attributo F non deve essere modificato.80C0 La destinazione viene attualmente elaborata da un'altra SFC o da una funzione di comunicazione. Esempio: caricamento di un DB dalla CPU nel PG. Si intende modificare il contenuto di questo DB tramite SFC 84. 80C3 Al momento è già stato raggiunto il numero max. di SFC 84 attive contemporaneamente. 8xyy Codici di errore generali, vedere Analisi degli errori con il parametro di uscita RET_VALPer "Mauro_lab" io farei, su fronte di un pulsante su OP, l'esecuzione del SFC84, in modo da creare anche una sorta di "archivio ricetta" in modo che siano salvati solo e soltanto i dati realmente utili e non le semplici modifiche che potrei fare in messa in servizio per trovare l'ottimo. Ma questo forse non è il tuo caso.Buon lavoro Modificato: 10 agosto 2009 da TravelMen Link al commento Condividi su altri siti More sharing options...
Mauro_lab Inserita: 10 agosto 2009 Autore Segnala Share Inserita: 10 agosto 2009 EFFETIVAMENTE Gabo ha ragione a sostenere la sua tesiHo fatto prove spegnendo la CPU del PLC e i dati ritornano esattamente come impostati da O.P.IL fatto che ritornano allo stato originale solo quando trasferisco gli aggiornamenti della programmazione sul PLCDOVE STA l'errore!! Link al commento Condividi su altri siti More sharing options...
TravelMen Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Se le cose stanno così allora stai scaricando anche le DB, oppure fai le modifiche su FB, se non ricordo male, anche le modifiche su FB, anche se non tocchi la DB relativa una volta che scrichi le modifiche fatte nel FB i dati della relativa DB si azzerano. Link al commento Condividi su altri siti More sharing options...
Mauro_lab Inserita: 10 agosto 2009 Autore Segnala Share Inserita: 10 agosto 2009 Comincio a prendere fuoco ce stanno 45 °C all'ombra qua Vediamo di riepilogare il fattoIo scrivo tramite pannello operatore direttamente sull'indirizzo della DB relativa, ovvero punto la sua variabile.Pertanto mi aspetto che la modifica sia ritenuta dalla DB sul PLCMa quando trasferisco le modifiche di programmazione sovrascrivo la DB con i dati vecchi??? e dove li va a prendere? Link al commento Condividi su altri siti More sharing options...
Gapo Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Qui mi pare che ci si stia perdendo in concetti un po' "basilari"...E' ovvio che la DB della tua 317 siano ritentive: se cambi un valore da OP, resterà memorizzata anche a seguito di spegnimento->riaccensione... ci mancherebbe pure... (se poi vuoi memorizzarti pure i dati di default è un'altra cosa, ma mi pare ti abbiano già spiegato come fare).Ovviamente però, se tu modifichi la DB e poi la ricarichi, ricaricherai anche il valore che è salvato nel tuo progetto offline!!!Se modifichi una FC o una FB, non devi certo ricaricare tutto il progetto (come, purtroppo, tocca fare con altri PLC): ricarico solo la FC o FB interessata. Se ti trovi nella necessità di modificare una DB, salva il suo stato di online (dipende poi da "cosa" modifichi di quella DB).Premesso questo, continuo a sostenere che la lettura delle analogiche non dovrebbe essere soggetta a modifiche così "libertine"...ciao Link al commento Condividi su altri siti More sharing options...
Gianmario Pedrani Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Quando trasferisci le modifiche, non trasferire i db, a meno che non li hai modificati, altrimenti perti tutti i dati perche sovrascrivi le db, puoi da step 7 selezionare solo gli fb o o fc che hai modificato, ricordati sempre prima di andare via di fare un bel confronta blocchi online ofline, cosi da essere sicuro che quello che c'è nella cpu sia uguale a quello che hai nel tuo progetto Link al commento Condividi su altri siti More sharing options...
Mauro_lab Inserita: 10 agosto 2009 Autore Segnala Share Inserita: 10 agosto 2009 è gisto che qualcuno mi bacchetti un po In effetti è vero, perchè trasferisco le DB che non modifico da ormai un mese Per il fatto che si debba dover cambiare la scaltura di un parametro è legato solo da due fattoriIl primo è che il RANGE dello strumento è superiore al RANGE di calibrazione e per tanto se si vuole cambiare l0uscita analogica con range diversi si deve pur fare.La seconda è legata al fatto che parliamo di paesi molto diversi dall'Europa e spesso è difficile reperire lo stesso strumento guastato, pertanto se non do al cliente la possibilità di calibrare il segnale analogico mi tocca tornare ! Link al commento Condividi su altri siti More sharing options...
Gapo Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 è gisto che qualcuno mi bacchetti un po In effetti è vero, perchè trasferisco le DB che non modifico da ormai un meseassolutamente insensato... una delle cose belle dello Step 7 è proprio la possibilità di trasferire solo ciò che interessa...Per il fatto che si debba dover cambiare la scaltura di un parametro è legato solo da due fattoriIl primo è che il RANGE dello strumento è superiore al RANGE di calibrazione e per tanto se si vuole cambiare l'uscita analogica con range diversi si deve pur fare.???La seconda è legata al fatto che parliamo di paesi molto diversi dall'Europa e spesso è difficile reperire lo stesso strumento guastato, pertanto se non do al cliente la possibilità di calibrare il segnale analogico mi tocca tornare !pezzi di ricambioassistenza remotaciao Link al commento Condividi su altri siti More sharing options...
ken Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 è dura calibrare un trasduttore via remoto se devi prendere tu delle misure per la calibrazione. la possibilità di calibrare i trasduttori ci deve essere sempre via hmi.Mah... onestamente non ho mai visto questo problema se non in seguito allo scarico della batteria tampone sui vecchi modelli (ed ho avviato, 3 anni fa e 5 anni fa, un paio di impianti dove la tensione di rete va e viene come vuole). In ogni caso i parametri di scalatura analogiche sono solito inserirli fissi già di default, e non do l'opzione per cambiarli all'utente, visto che non dovrebbero cambiare mai, mentre altri parametri da DB li memorizzo in altro modo.Capita stai tranquillo. Ricorda poi che il programma risiede in ram ma non per sempre. Dopo lunghe inattività della macchina capita che il programma venga ripescato dalla memory card. Ci sono parecchie discussioni in merito. Link al commento Condividi su altri siti More sharing options...
Gapo Inserita: 10 agosto 2009 Segnala Share Inserita: 10 agosto 2009 Ci credo... ma ti assicuro che non mi è mai capitato... in ogni caso uso altri metodi per memorizzare i parametri di funzionamento di macchine/impianticiao Link al commento Condividi su altri siti More sharing options...
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