Help per pilotare e leggere encoder, effetto HALL, 2 motori DC

Salve a tutti... sono nuovissimo del forum.. Vorrei utilizzare Arduino per pilotare 2 motori in DC 12 volt 63RPM

con Encoder ad effetto Hall 5 fili

Quale shield utilizzare ????

La Dual DC motor controller ??

Una sola shield mi permette di piltarli e leggere entrambi

Grazie

Un encoder, come dice la parola, codifica qualcosa, in questo caso una posizione, solo che per codificare una posizione anche in modo incrementale necessita di 2 canali, ....con un solo sensore , cioè un solo canale non è possibile codificare una posizione perciò è errato chiamarlo encoder, purtroppo i pescivendoli che vendono anche altre cose oltre che i loro pesci abbondano e lasciamoli liberi a chiamarlo come gli pare, noi invece continuamo a chiamarlo con il suo vero nome, cioè una tachimetrica, infatti con un solo sensore al massimo possiamo rilevare la velocità ma non posizione e verso. Detto questo... e non lo dico più .... per darti un indicazione su quale shield adottare serve il DS del motore

Quei motori hanno un codice o un datasheet.
Dalle informazioni che dai non si capisce che potenza/corrente nominale hanno i motori e percui che corrente deve sopportare il driver motore.
Lo schema no é chiaro come alimentare l’ encoder.
Ciao Uwe

lo avevo preso anche io http://www.robot-italy.com/it/gearmotor-12vdc-62rpm-encoder.html ma ha ragione ICIO, non è un encoder ma un sensore tachimetrico

alex16: ma ha ragione ICIO, non è un encoder ma un sensore tachimetrico

E' un encoder a bassa risoluzione, anche se monocanale fornisce sempre sia l'informazione sulla posizione (numero di impulsi) che la velocità di rotazione (periodo tra due impulsi), non può fornire l'informazione sul verso di rotazione, per questo serve un encoder a due canali. Un sensore tachimetrico, fornisce solo la velocità di rotazione.

ero riuscito ad usarlo, infatti contavo il numero degli impulsi per capire quanti giri aveva fatto il motore. però con solo 3 impulsi a giro chiamarlo encoder mi sembra eccessivo. mi piace il termine encoder monocanale, anche se poi nell'atto pratico e' poco più di un tachimetrico

alex16: però con solo 3 impulsi a giro chiamarlo encoder mi sembra eccessivo.

Il termine encoder (codificatore) non ha nulla a che vedere con la risoluzione, riguarda solo la tipologia del dispositivo, il nome completo è encoder incrementale rotativo.

grazie della spiegazione

Una "posizione" non può essere solo "andare in avanti" , una posizione implica che io possa andare "dove mi pare" , con un solo sensore si conta sempre in avanti anche se l'asse rotante và indietro,

è vero astrobeed che, come inquesto caso, visto che a comandare il verso del motore è sempre lo stesso controllo quindi considero gli impulsi che mi arrivano cw o ccw come da comando, ma ad ogni cambiamento di direzione c'è un possibile errore di conteggio di impulsi dovuti all'assestamento del tipo del 2° ordine ad ogni fermata del motore o un errore di conteggio se siamo in presenza di vibrazioni a motore fermo con posizione del sensore in prossimità del fronte di conteggio, vibrazioni che possono essere dovute al fatto che l'altro motore stà girando o al lavoro di qualche altro "aggeggio" a bordo del "macchinario"

Gli errore di conteggio alla fine si possono accumulare o compensare ma è solo una questione casuale , comunque mi pare di capire che quì siamo di fronte a un robot a 2 ruote tipo un rasaerba o simili quindi se viene previsto periodicamente un azzerramento del contatore di conteggio è possibile che il robot sappia sempre a spanne dove si trova, se poi , ancora meglio la posizione proprio non ti serve , a solo la velocità, come mi sembra di intuire , ancora meglio.

il consumo massimo viene dato a 600mA quindi qualsiasi ponte da 1A è sufficiente, questo è da 2A , e lo trovo molto versatile

http://www.robot-italy.com/it/motomama-motor-shield.html

Grazie per le risposte..... I motori (stiamo parlando di 2 motori), per le mie necessità pensavo potessero bastare quelli indicati all'inizio del post, e come suggerito da Alex16 sono esattamente quelli. 3 impulsi giro dell'albero motore, un fattore di riduzione del motoriduttore di 90.3:1 dovrebbero permette circa 270 impulsi per giro dell'albero di lavoro. Il mio progettino prevede l'utilizzo di ETH, shield per i 2 motori..., che collegati ad una barra filettata la fanno ruotare x circa 10 secondi con quel tipo di RPM. Mi piacerebbe: rilevare la lettura iniziale, avanti per 6 secondi e leggere il valore, ritornare indietro di 4 secondi e leggere il valore....

Altra soluzione , utilizzare i classici EMG30 http://www.robot-italy.com/it/12v-170rpm-gearmotor-with-encoder.html Collegamenti Encoder: 1 Viola = Sensore B Vout 2 Blu = Sensore A Vout 3 Verde =- GND 4 Marrone = Vcc Sensore

5 Rosso = + Motore

Questo mi sembra un Encoder..ma restituisce ( non ricordo bene) circa 2800 impulsi al giro...

Eventualmente.. quale shield usare ?? ho visto la DUAL motor.... Consigli

Grazie

Sulla EMG30 la corrente di stallo è 2.5A quindi tutte le shield che usano L298 non vanno bene, serve un ponte da 4A

cosa devo utilizzare allora per comandarne 2 ????

per spiegarmi meglio....... Quale motoriduttore (40-150 RPM) con ENCODER, diametro 27-37 mm carico max 2 kg., Quale Shield per 2 motori ????' Mi sembra di capire che, per una buona risoluzione devo utilizzare gli EMG30 in unione la shield MD25 http://www.robot-italy.com/it/dual-12volt-2-8amp-h-bridge-motor-drive.html

oppure questo

http://www.robot-italy.com/it/monster-motor-shield.html

vado alla ricerca di informazioni e capire per la programmazione

2 domande…

  1. E’ possibile collegare i motori (quelli de primo TH)
    http://www.robot-italy.com/it/gearmotor-12vdc-62rpm-encoder.html,,, e eventualmente come, ad una scheda MD25…

  2. utilizzando sempre gli stessi motori, o eventualmente gli EMG30, posso arrivare a 3 metri di cavo dai motori al MD25
    gg