Encoder ottico HP HRPG-AS64 e collegamento a PIC 16F876

Ciao a tutti! Vorrei iniziare a lavorare con gli encoder. Ho comprato da un mio amico un encoder ottico in quadratura HRPG-AS64 e lo vorrei collegare al mio pic solo per puro spirito hobbysta. Come progettino vorrei fare un semplicissimo programma di conteggio. Giro a destra aumenta una variabile giro a sinistra diminuisce. Dal punto di vista elettrico come devo collegare questo tipo di encoder ad un pic 16F876 ? Qualcuno mi potrebbe dare qualche dritta su come potrei iniziare a programmare il pic per lavorare con l'encoder "in C o Basic"?

Grazie a tutti!

Reply to
Geppo
Loading thread data ...

Il Sun, 30 May 2010 16:12:48 +0200, Geppo ha scritto:

Collega i due segnali A e B a due ingressi con interrupt on change (forse la portB, non ricordo).

Fai un giro su wikipedia per la decodifica (1x, 2x, 4x); disegnati la macchina a stati che implementi la decodifica che più ti piace; poi puoi affrontare l'implemerntazione in due modi:

- tutto a runtime, con una variabile di stato ed una struttura di tipo switch()... quando c'è un cambiamento dei due segnali decidi lo stato futuro e, di conseguenza, se incrementare o decrementare il tuo conteggio. Pro: facile da implementare, facile da modificare; contro: lento.

- codifiche nella eeprom la macchina a stati come matrice: riga->stato presente, colonne->stato futuro; con un accesso in memoria hai finito il lavoro. Pro: veloce; contro: occupi spazio in eeprom.

Reply to
SilverLeo

Grazie per la risposta, ma nel primo caso una volta che ho individuato il senso di rotazione non mi dovrebbe preoccupare il fatto che il mio encoder sia a 32 o 64 CPR. Ti faccio questa domanda nel caso del semplice contatore avanti e indietro. Non mi dovrebbe cambiare molto il fatto che sia in tecnologia a 32 o 64 CRP o qualcosa centra ?

Grazie ancora!

"SilverLeo" ha scritto nel messaggio news:L4vMn.186788$ snipped-for-privacy@tornado.fastwebnet.it...

Reply to
Geppo

Il Sun, 30 May 2010 17:28:30 +0200, Geppo ha scritto:

Non ho visto il datasheet dell'encoder, ma immagino che cpr stia per counts per revolution; il 32cpr ti genera 32 fronti su ciascuna fase per giro dell'alberino, mentre il 64 il doppio.

Reply to
SilverLeo

Ok! Ti ringrazio per la risposta! ora provo a fare qualche esperimento ...ciao!

"SilverLeo" ha scritto nel messaggio news:XALMn.187110$ snipped-for-privacy@tornado.fastwebnet.it...

Reply to
Geppo

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.