tecnologyassistence Inserito: 28 novembre 2006 Segnala Inserito: 28 novembre 2006 sono in difficolta su un impianto di depurazione dove faccio eseguire dei cicli di rigenerazzione in funzione di alcuni fattori come durata del ciclo la pressione di ingresso e di uscita ecc.adesso vorrei chiedervi se qualcuno di voi mi sa spiegare come posso fare a sapere ad esempio:in quale momento la rigenerazione e' partita e memorizzare l'ora in cui il ciclo e' partito e' magari settare delle memorie associate ad un testo che rimangono memorizzate assieme all'ora e' possibile farlo grazie a tutti ciao Domenico
Gianmario Pedrani Inserita: 28 novembre 2006 Segnala Inserita: 28 novembre 2006 certo lo puoi fare.. però non hai detto che tipo di plc usi, credo un s7300!!! a questo punto ti crei un blocco dati all'interno del plc e da li salvi tutto quello che vuoi e lo visualizzi.... ciao
tecnologyassistence Inserita: 28 novembre 2006 Autore Segnala Inserita: 28 novembre 2006 si ciao gianmario ho una 314 si ma come faccio
Vince73PLC Inserita: 28 novembre 2006 Segnala Inserita: 28 novembre 2006 Gianmario ti ha dato la dritta giusta...Io creerei un DB con un array di strutture in cui memorizzi i dati che vuoi.Per leggere l'ora userei SFC 1 "READ_CLK".Ed il gioco è fatto.Al fronte positivo dell'evento, salvo nel Db i dati che voglio!Spero di esser stato utile.Vincenzo
tecnologyassistence Inserita: 28 novembre 2006 Autore Segnala Inserita: 28 novembre 2006 ciao vince grazie per la dritta ma non potresti spiegarmi magari con un esempio ciao e scusa se chiedo troppo
ken Inserita: 28 novembre 2006 Segnala Inserita: 28 novembre 2006 Leggendo il manuale trovi gli esempi.Premi F1 sul blocco SFC1 e trovi come funziona, semplice no?
tecnologyassistence Inserita: 28 novembre 2006 Autore Segnala Inserita: 28 novembre 2006 grazie ken chiedevo solo un aiuto comunque ho cercato ma non riesco a capire per questo chiedevo una mano a voi comunque mille grazie
ken Inserita: 28 novembre 2006 Segnala Inserita: 28 novembre 2006 sfc1 restituisce in formato date_and_time l'orario attuale della cpu scrivendolo in un'area di memoria (grande abbastanza). sul fronte di salita del tuo evento scrivi l'ora attuale e la data nell'area che ti sei scelto.
tecnologyassistence Inserita: 28 novembre 2006 Autore Segnala Inserita: 28 novembre 2006 ken io ho creato l'ora secondi e minuti usando lb17 ecc..saresti cosi gentile da farmi un piccolissimo magari solo per capire da dove iniziare
tecnologyassistence Inserita: 29 novembre 2006 Autore Segnala Inserita: 29 novembre 2006 ciao ken intendevo dire un piccolo esempio su come fare ti ringrazio
Matteo Montanari Inserita: 29 novembre 2006 Segnala Inserita: 29 novembre 2006 puoi seguire esempi e/o indicazioni dati in altri post:link 1link 2link 3
tecnologyassistence Inserita: 30 novembre 2006 Autore Segnala Inserita: 30 novembre 2006 ciao matteo il mio problema non e l'ora o i minuti in pratica ti faccio un esempio:se voglio sapere a che ora e' partita una pompa o qualcosaltro e voglio registrare su di una pagina del TP170A ecome devo fare? in pratica mi servirebbe sapere magari associando un merker ad un testo e quindi visualizandolo e contemporaneamente salvare l'ora e i minuti e' possibile farlo ?? ho fatto delle prove ma non ne vengo fuori ho girovagato diversi link ma non ho trovato nulla in merito potresti ancora una volta aiutarmi? ciao Domenico
puntalino Inserita: 30 novembre 2006 Segnala Inserita: 30 novembre 2006 usa una db nella quale memorizzi i dati (gli orari di partenza ) usa la funzione leggo e trasferisco o move per muoverei dati nel tp 170a crei una pagina dove ci scrivi start pompa 1 =(valore db)se i valore è solo 1 tutto finisce qui sono usa i puntatori ampiamente descritti nel forum
tecnologyassistence Inserita: 30 novembre 2006 Autore Segnala Inserita: 30 novembre 2006 ciao puntalino potresti farmi un esempio?
Savino Inserita: 30 novembre 2006 Segnala Inserita: 30 novembre 2006 (modificato) Ciao tecnologyassistence ,ciao ken intendevo dire un piccolo esempio su come fare ti ringraziociao puntalino potresti farmi un esempio?Dunque, penso che nel Link del mio post precedente ( messaggio #11) sarebbe l'esempio che cerchi ( per ricavere la data ed ora)Va ben, forse non ti sono simpatico ma.... non fa il caso P.D. : devi fare click sulla parola Link ( just in case ) Modificato: 30 novembre 2006 da Savino
tecnologyassistence Inserita: 30 novembre 2006 Autore Segnala Inserita: 30 novembre 2006 ciao savino assolutamente sei simpaticissimo il problema e che non ho mai programmato a questi livelli non so proprio da dove iniziarci volevo solamente prendere spunto da qualche esempio un po' + semplice ho guardato il link che mi hai suggerito ma mi sono perso spero di riuscire a risolvere il mio problema grazie il vostro aiuto da persone con un po' di esperienza in piu' magari per aiutarmi ad accrescere il mio bagaglio di esperienza non ha da molto che programmo non sono all'inizio ma ho gia' fatto un bel po' di programmini per diverse tipologie di automazioni quindi ti chiedo scusa se ti do una cattiva impressione ma vorrei solamente essere aiutato nella risoluzione del mio problema adesso mi ritrovo il mio pannello quasi completo ho solo da completare questa parte di programma ti sarei molto grato se riusciresti ad aiutarmi magari se non ti chiedo e non pretendo molto con un esempio + semplice . ciao e scusami ancoraDomenico
Savino Inserita: 1 dicembre 2006 Segnala Inserita: 1 dicembre 2006 (modificato) Ciao tecnologyassistence ..quindi ti chiedo scusa se ti do una cattiva impressione ma..Figurati, non ti preocupare... ..ti sarei molto grato se riusciresti ad aiutarmi magari se non ti chiedo e non pretendo molto con un esempio + semplice ....Dunque, cominciamo per ricavare la data ed ora dal sistema .....Crea un nuovo blocco DB non so ad esempio DB11 quindi vai sulla barra del menu, inserisci/ blocco S7/ blocco dati... Nome blocco: DB11... Nome simbolico:DB_SYS_DATA_TIME. Poi fai click sul nome del blocco per aprirlo ed editarlo....troverai che questo per default ha la lunghezza di 3 righe con la seguente forma: Address Name Type Initial value 0.0 STRUCT +0.0 DB_VAR INT 0 =2.0 END_STRUCT Dovresti sovrascrivere cosi: Address Name Type Initial value 0.0 STRUCT +0.0 Object DATE_AND_TIME DT#90-1-1-0:0:0.000 =8.0 END_STRUCT Per settare la variabile del tipo DATE_AND_TIME devi fare click col pulsante destro del mause sul box e selezionare dei tipi complessi. Poi inserisci un nuovo blocco FC ad esempio FC 11.... vai in edizione del blocco ed allora sulla intestazione del blocco, nella tabella dell'interfaccia inserisci una variabile TEMP per ottenere il collegamento al DB11 con simbolo DB_SYS_DATA_TIME. Name Data Type Indirizzo Commento ----------------------------------------------------------------------- DB_SYS_DATA_TIME Date_And_Time 0.0 Poi nel primo segmento scrivi: CALL "READ_CLK" // SFC 1 RET_VAL:=MW172 // qui una MW qualsiasi CDT :="DB_SYS_DATA_TIME".Object // ( P#DB11.DBX0.0 ) qui ricavi la data ed ora in 8 bytes BCD Inserisci il FC 11 nel OB1 oppure l'OB35 ed allora, andando in monitoring dovresti visualizzare i dati ricavati in questo modo: Indirizzo formato Valore -------------------------------------------------------- DB11.DBB 0 Hex B#16# 06 // anno DB11.DBB 1 Hex B#16# 11 // mese DB11.DBB 2 Hex B#16# 30 // giorno DB11.DBB 3 Hex B#16# 23 // ora DB11.DBB 4 Hex B#16# 25 // min DB11.DBB 5 Hex B#16# 51 // sec DB11.DBB 6 Hex B#16# 46 // msec DB11.DBB 7 Hex B#16# 05 // msec Vedi se riesci ad impostare la lettura della data ed ora per ogni ciclo di AG od interrupt ... poi vediamo il resto. Modificato: 1 dicembre 2006 da Savino
tecnologyassistence Inserita: 1 dicembre 2006 Autore Segnala Inserita: 1 dicembre 2006 ciao savino ho eseguito tutto alla lettera ma on-line non vedo muovere nulla come faccio?nell'ob1 ho scritto cosi: call fc11carico ob1:db11:fc11 e non vedo nulla .aspetto una tua risposta ciao domenico.
Savino Inserita: 2 dicembre 2006 Segnala Inserita: 2 dicembre 2006 Ciao ciao savino ho eseguito tutto alla lettera ma on-line non vedo muovere nulla come faccio? Molto bene!Dunque, hai creato la tabella per il monitoraggio delle variabile ( VAT_..) con la forma sotto ?Indirizzo formato Valore -------------------------------------------------------- DB11.DBB 0 Hex B#16# 06 // anno DB11.DBB 1 Hex B#16# 11 // mese DB11.DBB 2 Hex B#16# 30 // giorno DB11.DBB 3 Hex B#16# 23 // ora DB11.DBB 4 Hex B#16# 25 // min DB11.DBB 5 Hex B#16# 51 // sec DB11.DBB 6 Hex B#16# 46 // msec DB11.DBB 7 Hex B#16# 05 // msec Cosa ricavi?
tecnologyassistence Inserita: 2 dicembre 2006 Autore Segnala Inserita: 2 dicembre 2006 no adesso provo scusami ancora
Savino Inserita: 2 dicembre 2006 Segnala Inserita: 2 dicembre 2006 (modificato) Ricordati di fare un restart CPU dopo la modifica ( run - stop - run ). Modificato: 2 dicembre 2006 da Savino
tecnologyassistence Inserita: 2 dicembre 2006 Autore Segnala Inserita: 2 dicembre 2006 ciao savino ho fatto quello che mi hai detto i valori della VAT1 sono:Indirizzo formato Valore--------------------------------------------------------DB11.DBB 0 Hex B#16# 06 // anno 090DB11.DBB 1 Hex B#16# 11 // mese 01DB11.DBB 2 Hex B#16# 30 // giorno 01DB11.DBB 3 Hex B#16# 23 // ora 00DB11.DBB 4 Hex B#16# 25 // min 00DB11.DBB 5 Hex B#16# 51 // sec 00DB11.DBB 6 Hex B#16# 46 // msec 00DB11.DBB 7 Hex B#16# 05 // msec 02vedo questi valori ma non varia nulla almeno i secondi dovrebbero variare ma dato che io ho gia l'ora secondi e minuti non esiste qualcosa che mi permetta di usarli dandomi la possibilita di memorizzarli in funzione di cio' che mi serve??momentaneamente io nel mio OB1 ricavo l'ora ecc. facendo cosi:LB 17T MB17LB 16T MB16LB 15T MB15 e cosi vianon possiamo utilizare questo sistema in qualche modo?non pensavo che fosse cosi complicato crare un tipo storico se cosi si puo' chiamare mi sono trovato molto megli con il TP170b dove ho potuto creare uno storico allarmi ma voglio riuscire anche con questo pannellopeccato che fa solo le segnalazioni di servizio comunque Savino spero con il tuo aiuto di riuscirci ciaoDomenico e grazie ancora..
ken Inserita: 2 dicembre 2006 Segnala Inserita: 2 dicembre 2006 evidentemente il TP170A ha delle differenza sia a livello di prezzo che a livello di possibilità di sviluppo rispetto ad un TP170B. per fare uno storico devi crearti un DB dove, con un puntatore vai a scrivere un dato di seguito all'altro. Se usi la funzione cerca trovi come usare un puntatore. Penso che tu sia già stato aiutato più del necessario. basta leggere i manuali e metterci buona volontà. Sai, a volte si fa prima a scrivere un post o a chiamare un tecnico al telefono che leggere il manuale del protool o winCC e dell'S7, am non è sempre la via più corretta.DB11.DBB 0 Hex B#16# 06 // anno DB11.DBB 1 Hex B#16# 11 // mese DB11.DBB 2 Hex B#16# 30 // giorno DB11.DBB 3 Hex B#16# 23 // ora DB11.DBB 4 Hex B#16# 25 // min DB11.DBB 5 Hex B#16# 51 // sec DB11.DBB 6 Hex B#16# 46 // msec DB11.DBB 7 Hex B#16# 05 // msechai questo. se ne crei n in fila avrai uno storico. col puntatore vai a scrivere prima sul primo poi sul sendo poi a quello ad n+1 fino a quando ti serve.
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