Motore hdd come encoder rotativo

Ho da poco scoperto che posso usare un motore di un hdd come un encoder rotativo , solo che su internet non sono riuscito a trovare nulla di soddisfacente ... ho bisogno del vostro aiuto :slight_smile:

La mia domanda è : come collego i tre pin che sono presenti sul motore all'arduino ?

Forse (ma non ne sono sicuro) devo usare degli amplificatori ... se così fosse ... quali mi consigliate?

Vi ringrazio in anticipo

Se per "motore hdd" intendi quello del piatto, la vedo dura ... al massimo puoi usarlo efficacemente come dinamo tachimetrica, ed entro un certo limite, ma molto limitatamente e solo finche ruota, come rilevatore di posizione ... "solo finche' ruota" perche', al contrario di un normale encoder, quando e' fermo non ti restituisce alcun dato ... quindi si, puoi usarlo per determinare se sta girando in un senso o nell'altro ed a quale velocita' in base alla frequenza ed all'ordine dei segnali presenti sugli avvolgimenti, ma no, non puoi usarlo come un normale encoder per leggere la posizione di qualcosa che ci hai collegato ...

Capito ... ecco spiegato il motivo per cui non trovavo nulla ... grazie mille :slight_smile:

Anche i motori passopasso si possono usare per questo impiego ma bisogna aggiungere amplificatori e squadratori

Il motore in questione è un brushless a 3 fasi.

Applicando tre tensioni alternate sfasate tra loro di 120°, il motore gira.

Come tutte le macchine elettriche reversibili, è possibile anche il contrario: applicando tra ogni coppia di fasi un resistore di carico (diciamo da 10k), con la rotazione vengono generati 3 segnali sinusoidali sfasati tra loro.

Puoi usare un operazionale (LM387) per amplificare il segnale di ciascuna fase e trasformarlo in un'onda quadra.

Il motore produce una tenione alternata. Quella non puoi aplicare direttamente ad Arduino.
Ciao Uwe

http://www.fleurey.com/franck/pmwiki.php?n=Main.HDDEncoder

ricerca con "HD motor encoder" prime 2 immagini

E questo sarebbe nulla di soddisfacente?

Perfetto grazie ... fino ad ora avevo visto solo quello con tre amplificatori e i 4 pin del motore ( mi ero perso :-[ )

Non e' soddisfacente come encoder perche' ... non e' un'encoder :wink:

Quello che intendo dire e' che, se ci devi solo rilevare il senso di rotazione, ed al massimo la velocita', senza riguardo alla posizione, allora lo puoi fare, se invece ti serve un'applicazione "da encoder", cioe' che ti dia anche la posizione, allora e' un po scarsina la cosa ... massimo quei motori hanno 9 espansioni all'interno, e quindi con 9 poli a gruppi di 3 su 360 gradi, pochissima risoluzione, ed inoltre senza aggiungerci un segnale di "zero", non ci puoi neppure rilevare quella con certezza ...

Cio non toglie che per applicazioni "didattiche" come quelle, sia utilizzabile, ma non per qualcosa di pratico al posto di un'encoder ...

EDIT: anche perche' ormai te li tirano nella schiena per un tozzo di pane (o quasi) ... esempio: http://www.ebay.com/itm/12mm-Rotary-Encoder-Push-Button-Switch-Keyswitch-Key-Electronic-Components-/131522121250?hash=item1e9f544e22:g:YekAAOSwrklVZEo9

... per non parlare di quanto sono scesi i prezzi di quelli un po piu precisi ... un 500 impulsi per giro, quando lavoravo in ditta, ce lo facevano pagare centoquarantamila lire, adesso i 600 impulsi per giro te li tirano dietro con una decina di Euro ... :stuck_out_tongue: :smiley:

http://scuola.arduino.cc/courses/lessons/view/ZlW7q5p
Ciao Uwe