Akira Inserito: 18 gennaio 2009 Segnala Share Inserito: 18 gennaio 2009 Salve a tutti.Ho fatto una rapida ricerca nel forum per vedere se un problema simile era già stato affrontato, purtroppo non ho trovato nulla di esaustivo e quindi mi permetto di postare il mio problema.In una macchina di taglio profili è stato usato un banco di appoggio lungo il quale si muove una lama motorizzata posizionata alla misura impostata su un apposito pannello op. Il posizionamento avviene attraverso un motore passo-passo pilotato dal suo apposito driver. Il driver viene gestito con un plc S7-226 (cpu rel.02.01) utilizzando l'uscita impulsiva Q0.1.Ho utilizzato l'assistente di controllo posizionamento per creare i blocchi di gestione dell'uscita impulsiva. Ho creato anche un profilo con una rampa di salita, un target (numero di impulsi e velocità) e una rampa di discesa.L'assistente mi ha creato anche i blocchi per la gestione manuale e per il controllo. Fin qui problemi zero...Nell'area dati del plc l'assistente ha creato quanto segue://----------------------------------------------------------------//Tabella del profilo PTO per l'uscita Q0.1//----------------------------------------------------------------VB0 'PTOA' //VW4 54 //FREQVD6 512000 //SS_SPEEDVD10 10240000 //MAX_SPEEDVD14 16#05000B86 //K_ACCVD18 16#85FFF47A //K_DECVB22 1 //NUMPROFVW23 25 //OFFS_0VB25 4 //NUM_SEGS per il profilo 0VB26 0 //Riservato.VB27 0 //S_STEP per il segmento 0VB28 16#08 //S_PROPVD29 +512000 //SFREQVD33 922 //Numero di impulsi per l'accelerazioneVB37 0 //S_STEP per il segmento 1VB38 16#04 //S_PROPVD39 +3072600 //SFREQVD43 4155 //Numero di impulsi per la velocità costanteVB47 0 //S_STEP per il segmento 2VB48 16#00 //S_PROPVD49 -1 //SFREQVD53 922 //Numero di impulsi per la decelerazioneVB57 0 //S_STEP per il segmento 3VB58 16#10 //S_PROPVD59 +512000 //SFREQVD63 1 //Numero di impulsi per la decelerazione finaleVB67 0 //Riservato.VB68 0 //Riservato.VB69 0 //Riservato.Ora il fatto è che: dando il comando di esecuzione del profilo chiaramente il blocco di controllo esegue la rampa impostata, si posiziona ed esegue la rampa di discesa. Il problema è che quando mi devo posizionare ad una quota differente non lo riesco a fare... ho intuito che devo modificare via programma utente i dati della rampa di salita, del valore target e della rampa di discesa... ma non sono riuscito a capire come.Mi spiego con un esempio: se mi devo spostare di 235 millimetri, diciamo equivalenti a 6800 impulsi, di quanto deve essere la rampa di salita, la sua velocità? quanto deve essere gli impulsi alla velocità target? quanto gli impulsi della rampa di discesa ed a quale velocità? In breve come modifico i parametri del profilo dinamicamente, direttamente nel programma? Come li calcolo?Scusate se sono stato prolisso... però spero di essere stato chiaro.Grazie a quanti mi daranno una mano.Ciao. Link al commento Condividi su altri siti More sharing options...
Rwhite Inserita: 19 gennaio 2009 Segnala Share Inserita: 19 gennaio 2009 Ciao a tutti, se il numero di impulsi a velocità costante che devi fare (numero impulsi totali - impulsi accelerazione - impulsi decelerazione), parte due del profilo, è maggiore di "0" allora è sufficiente modificare il contenuto del registro VD43 dell'esempio, se invece il valore è minore di "0" allora bisogna intervenire anche sulle rampe, e i valori da modificare sono diversi. Io ti consiglio di impostare un profilo per il percorso più breve che ti interessa e poi agire solo sugli impulsi a velocita' costante.ciao rwhite Link al commento Condividi su altri siti More sharing options...
Akira Inserita: 19 gennaio 2009 Autore Segnala Share Inserita: 19 gennaio 2009 grazie RWHITE.avevo intuito qualcosa del genere...farò delle prove per determinare i valori di rampa... quindi vedrò se posso applicare questo metodo (che mi sembra il più semplice) altrimenti stavo valutando la possibilità di usare le librerie MAP_SERV di siemens.grazie.ciao. 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