Motore dc/Angolazione

Buonasera, sto realizzando un progetto in cui utilizzo dei motori dc che dovranno essere molto precisi nei movimenti. Cosa posso usare o applicare per conoscere l'angolo in cui si trova il motore e in seguito applicare dei movimenti al motore sempre in base all'angolo che desidero?

Se il motore non ruota piú di 270° puoi usare un potenziometro.
Se il motore non ruota piú di 10 giri puoi usare un potenziometro multigiri.
Se il motore deve ruotare molti giri devi usare un encoder.

A secondo della risoluzione del encoder o del convertitore A/D hai diverse risoluzioni.

Ciao Uwe

sto costruendo un gimbal e vorrei utilizzare questo tipo di motore, quindi l'angolo sarà compreso tra 0 e 180 gradi.

vincenzO88:
sto costruendo un gimbal e vorrei utilizzare questo tipo di motore, quindi l'angolo sarà compreso tra 0 e 180 gradi.

Un potenziometro lineare fissato all'asse di rotazione e ti ristrovi con una "resistenza" proporzionale all'angolo :wink:

Guglielmo

grazie mille... avevo visto anche che posso utilizzare un encoder,oppure è possibile utilizzare qualche driver apposito?

vincenzO88:
grazie mille... avevo visto anche che posso utilizzare un encoder,oppure è possibile utilizzare qualche driver apposito?

Visto che un motore DC non ha alcun feedback per la posizione, è necessario aggiungere "qualcosa" (una delle soluzioni che ti hanno proposto), per cui dovrai usare codice per gestire questo "qualcosa".

Ma nel tuo caso perché non usare un servo che ha invece già questo feedback?

perché vorrei un movimento fluido. Il movimento che ottengo dal servo non è stabile.

Dipende dalla qualità del servo e quindi anche dal costo.
In ogni caso anche con un encoder, la tua "risoluzione" è pari a quella dell'encoder che userai, quindi se hai (diciamo) 360 posizioni avrai una precisione di 1 grado e comunque a "scatti" da 1 grado. In alternativa uno stepper, ma anche questo ha movimenti che oltre alla qualità dipendono dal numero di step per giro.

Comunque se vuoi avere qualcosa di buono devi rivolgerti a motori DC con encoder integrato, e quelli di qualità (2.500 ppr) partono da 60€ l'uno, per cui dipende da quale qualità vuoi avere, quale peso massimo, quale assorbimento, e quanto vuoi spendere.

va bene grazie mille

ho un'altra domanda da farvi, utilizzando il driver l298n per la velocità e direzione di un motore dc, è sorto un problema: ogni volta che il motore cambia direzione, si blocca e poi riparte nell'altra direzione. Cioè, lo sketch è scritto per far andare in direzione avanti il motore per qualche secondo, dopo ciò inverte la direzione. Il problema è che ogni volta che deve cambiare direzione, si blocca istantaneamente e poi riparte correttamente nell'altra direzione. Vorrei che rallentasse e si fermerebbe invece di bloccarsi subito. Ho pensato di aggiungere un condensatore per risolvere. Risolvo con questa operazione?

Mah non l'ho mai fatto, forse potrebbe bastare, ma io proverei al cambio di direzione a "rallentare" tu da codice tramite PWM, ma direi che tutto dipende da come attualmente gestisci la rotazione nel software e cosa vuoi ottenere (se parli di un gimbal, che reagisca rapidamente a qualche movimento brusco ci sta...)

va bene, grazie...

di nuovo ciao a tutti, dopo aver finito il gimbal con i servo ho pensato di ridurre le dimensioni del gimbal e ho pensato di utilizzare quei famosi brushless o dei motorini dc. Volevo informazioni più precise sui metodi di controllo di questi tipi di motori per l'incremento angolare. Grazie

Devi misurare l' angolo e pilotare il motore di conseguenza.
Non so se i normali motori Brushless con normali ESP possono gestire movimenti di angoli piccolissimi. Sono fatti per ruotare.
Ciao Uwe

Si, concordo con uwefed ovviamente. Ma aggiuno che il problema è sempre l'encoder ossia la precisione della misurazione angolare. Con cose "assemblate in casa" la vedo difficile, almeno per precisioni come quelle che il nostro amico cerca. Per dire, io per un piccolo braccio robotico ho usato dei trimmerini in asse con gli snodi e dei motori DC, ma non ho certamente la risoluzione sufficiente per determinare una posizione precisissima (il trimmer ha le sue tolleranze, l'accoppiamento con l'asse ha le sue tolleranze, il convertitore analogico-digitale le sue, eccetera).

Fa prima a prendere un buono stepper o un DC con encoder integrato, come dicevo.

cercavo qualche motore di taglia piccola per non far essere troppo ingombrante il tutto (com'è per ora con i servo). I gimbal gopro ad esempio sono davvero fatti bene, piccoli.
Qualche consiglio su che motore utilizzare?

vincenzO88:
com'è per ora con i servo

Ok, ma quali servo hai usato attualmente (SG90?), e quale dimensione massima vorresti avere?

Hai provato a cercare "mini digital servo" su Google? Ne dovresti trovare alcuni, ad esempio QUESTO.

Non c'entra direttamente con il tuo problema, pero' ... stai cercando di realizzare l'equivalente dei gimbal che usano i droni ? ... te lo chiedo perche' i gimbal "commerciali" NON usano, di solito, dei motori DC, ma dei "voice-coil", detti a volte "galvo", dove la posizione e' di solito determinata dalla differenza di campo creata fra due bobine che muovono un magnete fra loro (in alcuni modelli, invece, le bobine si muovono ed il magnete e' fisso, come nelle testine degli HD o nella messa a fuoco della lente dei lettori CD) ... forse sono simulabili con dei motori DC, ma non so con quanta efficenza ...