attiliovolpe Inserito: 6 marzo 2017 Segnala Share Inserito: 6 marzo 2017 Salve, vorrei capire come far leggere ad Arduino gli impulsi di un encoder collegato ad un motorino cc recuperato da una stampante, qualcuno ha qualche riga di codice e/o qualche informazione? Il sensore è uno di quelli a forcella penso con foto transistor di cui non ho data sheet, avrei bisogno di qualche info anche su quello. Non devo realizzare nulla di particolare, sto smanettando a banco con Arduino nei ritagli di tempo libero. Link al commento Condividi su altri siti More sharing options...
attiliovolpe Inserita: 6 marzo 2017 Autore Segnala Share Inserita: 6 marzo 2017 Vorrei capire inoltre su un giro quanti impulsi ha l'encoder Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 7 marzo 2017 Segnala Share Inserita: 7 marzo 2017 Per il tipo di segnali, non avendo dati, devi ricostruirti le informazioni analizzando i segnali con un oscilloscopio ed analizzando con pazienza il circuito di interfaccia del lettore. Per arduino uno ci sono degli sketch che usano i contatori per misurare la frequenza di un segnale, da questi potresti ricavare il conteggio. Il vero problema sta nella bidirezionalità degli inmpulsi, bidirezionalità data dalla fase della quadratura. Arduino non ha contatori bidirezionali. Inoltre devi rivelerare il senso di rotazione. Effettuare il senso di rotazione in software è pesante e ti occupa molte risorse, anche perchè va eseguito quattro volte per impulso. Potresti fare un discriminatore esterno, è sufficiente un flip-flop tipo D, però poi hai sempre il problema del conteggio e deconteggio. Dovresti avere 2 contatori: uno per i segnali up e l'altro per quelli down, poi ogni volta fare la differenza tra i 2. Meglio, a mio parere, farsi tutto in Hw e poi interfacciare in seriale I2C con arduino. Link al commento Condividi su altri siti More sharing options...
attiliovolpe Inserita: 7 marzo 2017 Autore Segnala Share Inserita: 7 marzo 2017 Come si vede dalla foto il disco è singolo, avrai quindi un solo "canale" Il motore è Mabuchi, sembra produrre degli ottimi motori, ma non trovo le caratteristiche del mio che è un RK-370CA 09900R (09900R non compare tra quelli disponibili!) Oltretutto c'è sul corpo motore un'altra sigla "TD137918" penso sia riferita al disco encoder, e ancora 00EM-554. Anche per il disco non trovo nulla e non ho idea di come contare le tacche in maniera precisa, sono troppo vicine... Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 7 marzo 2017 Segnala Share Inserita: 7 marzo 2017 Quote Come si vede dalla foto il disco è singolo, avrai quindi un solo "canale Tutti gli encoder incrementali hanno un solo disco. I 2 canali si ricavano con una fochetta doppia in cui i ricevitori sono distanziati dell'equivalente di 90° elettrici. Se si usassero 2 dischi non si riuscirebbe ad ottenere la precisione di fase necessaria. Quote Anche per il disco non trovo nulla e non ho idea di come contare le tacche in maniera precisa, sono troppo vicine Puoi farlo con un oscilloscopio, però devi conoscere il modo abbastanza preciso la velocità a cui va il motore. Devi trovare un encoder di cui conosci gli impulsi per giro e lo accoppi al motore. Poi con l'oscilloscopio misuri la frequenza e ti ricavi la velocità. Poi monti il tuo encoder e dai la medesima tensione di armatura, la velocità sarà molto simile. Dalla frequenza ricavi il numero di imlulsi dell'encoder, tenendo presente che gli impulsi per giro hanno valori ben deviniti come 1000,1500, 2000, 1024, etc. Link al commento Condividi su altri siti More sharing options...
attiliovolpe Inserita: 7 marzo 2017 Autore Segnala Share Inserita: 7 marzo 2017 Doppia forchetta ma con doppia foratura sul disco, almeno quello che ho avuto modo di aprire perchè ormai guasto era così, ma parliamo di encoder per applicazioni di automazione. Questo ha una sola forchetta, ma per quello non c'è problema possono diventare due in modo da discriminare anche il senso di rotazione, ma sul disco c'è una sola "banda" di tacche, e vengono indicate tra le caratteristiche in LPI "line per inch".Adesso vedo di procurarne un altro di cui conosco il dato impulsi giro e seguo il tuo consiglio. Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 8 marzo 2017 Segnala Share Inserita: 8 marzo 2017 Quote Doppia forchetta ma con doppia foratura sul disco, Era molto vecchio allora; si usava così quando le dimensioni dell'ottica non permettevano un dispositivo doppio che legge con sfasamento di 90°, quindi si era costretti a creare 2 tracce sfasate di 90° e mettere 2 ottiche. Poi dato che le tracce erano molto più precise della meccanica, spesso c'era anche una vite micrometrica di regolazione della posizione della seconda coppia emettitore-ricevitore. Link al commento Condividi su altri siti More sharing options...
attiliovolpe Inserita: 22 marzo 2017 Autore Segnala Share Inserita: 22 marzo 2017 @Livio Orsini Livio faccio una domanda, se io utilizzassi un motore stepper a cui collego l'encoder in questione, potrei contare gli impulsi per giro? Dico così perchè per lo stepper già si conoscono step/giro Driver per motore stepper, e sensore a forcella che legge il disco collegato al motore, che ne dici? Non ho altri riferimenti da utilizzare, vorrei cercare di utilizzare quello che ho ed di entrambi gli encoder non ne conosco la risoluzione, anzi approfitto per chiedere se ci fosse qualcuno che mette le mani nelle stampanti e magari ha informazioni sulla risoluzione di questi dischi mi farebbe un favore. Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 22 marzo 2017 Segnala Share Inserita: 22 marzo 2017 Potresti addirittura comadare un step e leggere gli impulsi relativi. Gia da questo dato risali al numero di impulsi per giro. Ovviamente dopo una rivoluzione completa hai ridotto ad 1 impulso solo le possibili indecisioni. Però misurando sia gli impulsi ad ogni passo e gli impulsi per rivoluzione fai un doppio controllo. Link al commento Condividi su altri siti More sharing options...
gabri-z Inserita: 22 marzo 2017 Segnala Share Inserita: 22 marzo 2017 Basterebbe contare l'impulsi dopo un numero più elevato di giri , 10 , 100 oppure 1000 , così l'errore potrebbe essere anche eliminato. 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