gramma Inserito: 21 settembre 2004 Segnala Share Inserito: 21 settembre 2004 Ciao a tutti!Qualche tempo fa, mi sono trovato nella necessità di controllare con una discreta precisione, il movimento di un braccio di una macchina comandato da una circuito idraulico. Sul braccio è montato un encoder (assoluto, ma non è di importanza fondamentale) che ne riporta la posizione.Per avere un'immagine dettagliata di ciò che accadeva, ho scritto una FB che memorizzava in un DB, in modo sequenziale, il valore corrente dell'encoder ogni volta che veniva chiamata, e l'ho inserita nell'OB35 (interrupt a tempo).Così, sapendo che OB35 viene eseguita ogni p.e. 100ms (nel mio caso erano 10ms, ma non cambia nulla), ho ottenuto un DB dove è memorizzata la posizione del braccio ad ogni istante (ogni xxx ms). Ho poi importato i dati dal PLC ed inseriti in un foglio Excel, con i quali ho tracciato un grafico.Fantastico! il grafico rappresenta così la posizione del braccio istante per istante, e quindi (fruttando la potenza di Excel) ne ho potuto rilevare le velocità, accelerazioni, ecc. con una discreta precisione (direi elevata trattandosi di un'applicazioe derivata da un PLC).Quest'applicazione mi è stata talmente utile, che ho esteso il procedimento a tutte le applcazioni che andavano controllate, in particolare per le regolazioni: in un regolatore PID p.e., registro sempre i fattori P., I., D., Errore, e quello che m'interessa nell'applicazione specifica, e ne traccio il grafico nel tempo (l'esecuzione dell'OB35 viene configurata ad un tempo compatibile con l'applicazione). Così sono molto facilitato nella regolazione, avendo l'esatta immagine (grafica) del comportamento di ogni componente del regolatore.Ora, la quantità di dati da importare dal PLC è piuttosto consistente, e sono dati di diversa origine (diverse DB), e fino ad ora non ho trovato nessun metodo d'importazione se non quello di: importare il DB dalla CPUaprire e selezionare tutto il DB (in visualizzazione dati)copiarepassare in Excelincollarescartare tutte le colonne che non m'interessano (il nome della variabile, il formato del dato, il valore iniziale, il commento). Ripetendo questo procedimento diverse volte (ovviamente con questo metodo si può importare solo una DB alla volta), si rischia di fare casino, sovrascrivere dati già importati, cancellare qualcosa, desincronizzare le varie DB durante la copia, ecc. con conseguente inaffidabilità della procedura.Tutta queta descrizione (piuttosto prolissa) per chiede se qualcuno conosce un metodo per indirizzare le variabili nel PLC e leggerle (importarle in Excel) direttamente, senza passare da S7 che costringe a questa procedura onerosa. O se magari qualcuno ha sviluppato (che ne so, in VB -di cui non so nulla-) qualche programma a questo scopo (o simile), in modo da rendere la mia procedura più veloce (sarebbe fantastico un real-time, ma credo sarebbe un pò come chiedere la luna...) e più affidabile.Grazie a tutti per la pazienza (di aver letto questo poema), e per gli eventuali suggerimenti!Buon lavoro .Ciao.Gramma Link al commento Condividi su altri siti More sharing options...
Savino Inserita: 21 settembre 2004 Segnala Share Inserita: 21 settembre 2004 Ciao,Io penso che prodave MPI fa' alla tua applicazione.Guarda questo LinkComunque,con prodave non passi da S7 ma dovvresti essere in grado di scrivere codice al meno inVB oppure in VC++.Saluto. Link al commento Condividi su altri siti More sharing options...
gramma Inserita: 21 settembre 2004 Autore Segnala Share Inserita: 21 settembre 2004 Grazie Savino!Veramente cercavo un applicatico solo Sw , non qualche oggetto commerciale della Siemens, ma grazie per l'info, penso che davvero petrebbe andare bene .Saluti Link al commento Condividi su altri siti More sharing options...
wally Inserita: 22 settembre 2004 Segnala Share Inserita: 22 settembre 2004 Io trovo interessante il programma Sevice Lab della Siemens (che in realta' e' fatto dalla National Instruments).Tra le moltissime cose che puo' fare, c'e' la possibilita di visualizzare (tipo registratore su carta) n traccedi variabili di S7 (tramite MPI/Profibus/Teleservice o Ethernet), oppure mettere i valori delle variabilitramite DDE in un foglio Excel.Unica limitazione e' il tempo di aquisizione delle variabili, dipendente dal tipo di collegamento al PLC,normalmente >20 mS.http://www.ad.siemens.de/servicelab/index_76.htmciaowally Link al commento Condividi su altri siti More sharing options...
svisone Inserita: 28 settembre 2004 Segnala Share Inserita: 28 settembre 2004 Se hai a disposizione uno scada, e se questo gestisce l'ODBC, potresti leggere e salvare su un dbase la tua variabile a scansione di qualche msec. evitando di salvere i dati nel PLC. Qui puoi gestire i tuoi dati a trend ecc.Io utilizzo Movicon di Progea che ti garantisco gestisce al meglio l'ODBC e ti permette di capionare anche ad intervalli di 2 msec. (se il resto del sistema supporta tale velocità). 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