andreap90 Inserita: 26 maggio 2014 Autore Segnala Inserita: 26 maggio 2014 domattima faccio la prova a bassa velocità sullo zelio, lo sheet dell' encoder fa pena, non c'é scritto niente...non ce altro motivo per cui lo zelio non becca lo zero, perché ripeto non abbiamo frequenze eccessive
andreap90 Inserita: 27 maggio 2014 Autore Segnala Inserita: 27 maggio 2014 oggi ho misurato l'ampiezza dell'onda quadra dello zero, agendo sull' alimentazione dell'encoder e facendo girare il motore più lentamente possibile, siamo arrivati alll'ampiezza massimq di 200 microsecondi, e non riesce a beccarla, poi ho provato con uno dei 2 canali A B, che hanno ampiezza 400 microsecondi e riuscivo a beccarli ma non riuscivo a contarli tutti a causa della frequenza.
andreap90 Inserita: 27 maggio 2014 Autore Segnala Inserita: 27 maggio 2014 ho parlato gia con loro, mi hanno detto, e poi ho verificato io stesso, che il modulo ha la predisposizione per la lettura di un encoder, gli ho spiegato il mio problema e mi hanno detto che non avrò problemi.
andreap90 Inserita: 31 maggio 2014 Autore Segnala Inserita: 31 maggio 2014 mi è arrivato il PLC in questione, conta alla grande, ha delle uscite apposite per l'encoder, sono riuscito a fare tutti i conteggi, ora mi serve un idea, perchè a me non sta venendo, io ho in uiscita un valore di quota( che corrisponde al numero di tacche dell'encoder), ora vi spiego quello che voglio fare, vorrei che a ogni tot passi mi si attivi uno stato on, avete qualche idea voi che siete di sicuro più esperti di me?
step-80 Inserita: 31 maggio 2014 Segnala Inserita: 31 maggio 2014 Beh, credo che una semplice operazione di confronto possa fare al caso tuo... Prendi il tuo valore, lo interroghi e ci fai quello che vuoi...
Giuseppe Signorella Inserita: 31 maggio 2014 Segnala Inserita: 31 maggio 2014 ha delle uscite apposite per l'encoder, Volevi forse dire Ingressi? Beh, credo che una semplice operazione di confronto possa fare al caso tuo... Prendi il tuo valore, lo interroghi e ci fai quello che vuoi... Si, ma gestisci il tutto mediante interrupt. altrimenti rischi che il tuo programma non funzioni come si deve. Ciao
andreap90 Inserita: 31 maggio 2014 Autore Segnala Inserita: 31 maggio 2014 no pultroppo non posso mediante il confronto perche' ho un valore in continuo imcremento, quindi non posso comfrontarlo con una costante volevo dire ingressi
Giuseppe Signorella Inserita: 31 maggio 2014 Segnala Inserita: 31 maggio 2014 Perchè non puoi con un confronto? Se hai un encoder connesso al tuo plc, è ovvio che hai un valore in continuo incremento. (E' questo che fa un encoder, altrimenti non si chiamerebbe encoder incrementale ) Se vuoi che ad ogni tot passi, si verifica un evento, con una semplice operazione matematica ti calcoli la successiva quaota che il tuo encoder dovrà assumere per eseguire l'operazione, ed una volta che i due valori coincidono, (Quota calcolata e quota rilevata dall'encoder) esegui la tua operazione. Come detto nel mio precedente post, tutto ciò va eseguito mediante interrupt. Ciao
andreap90 Inserita: 31 maggio 2014 Autore Segnala Inserita: 31 maggio 2014 mi pare di averla fatta questa prova ma non andava...avrò sbagliato la logica...
step-80 Inserita: 31 maggio 2014 Segnala Inserita: 31 maggio 2014 Di usare interrupt era volutamente sottointeso... In pratica, al verificarsi di un determinato valore di conteggio da te impostato, il programma principale viene momentaneamente interrotto e viene richiamata la parte di codice contenente le istruzioni da eseguire nel caso di raggiungiumento del valore(interrupt), dopodiché riprende il programma principale da dove lo aveva lasciato.
bigalex Inserita: 1 giugno 2014 Segnala Inserita: 1 giugno 2014 Di usare interrupt era volutamente sottointeso... Sempre che il plc in questione gestisca "interrupt" da parte dell'utente. Per prima cosa il contatore veloce dovrà essere azzerato o presettato in qualche modo visto che si vuole usare una misura nota in unità ingegneristiche (mm) per il confronto ed essendo l'encoder "incrementale" l'operazione di azzeramento o preset è obbligatoria. In questa discussione sono sempre approssimative le specifiche di funzionamento del "macchinario" da automatizzare. Pertanto inviterei l'autore ad essere più preciso e dettagliato. bigalex
andreap90 Inserita: 1 giugno 2014 Autore Segnala Inserita: 1 giugno 2014 devo semplicemente azionare un motore collegato a una ruota, la ruota spinge un listello di legno, quindi a me serve che la ruota fermi il listello ogni tot cm, tutto qui, non ho bisogno di resettare il contatore, piuttosto incremento sempre di un tot la variabile di confronto.
andreap90 Inserita: 1 giugno 2014 Autore Segnala Inserita: 1 giugno 2014 la logica che stavo applicando io non funziona, perchè ovviamente la variabile della quota arrivato a 4.294.967.295 ripartirà da 0, quindi bigalex ha ragione devo per forza inserire un preset nella funzione che mi sono fatto, a questo punto non dovrei avere più problemi perchè collegherò il preset all'uscita logica e prenderò due piccioni con una fava...mi metto all'opera...vi terrò aggiornati, grazie
andreap90 Inserita: 1 giugno 2014 Autore Segnala Inserita: 1 giugno 2014 alla fine ci sono riuscito...col metodo sucitato
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