Discussione:
Assorbimento motori
Stefano M.
2009-01-05 00:01:30 UTC
Permalink
Per misurare l'assorbimento dei motori ho seguito lo schema
elettronico di Guido che mi sembrava abbastanza corretto.

Lo schema è un amplificatore non invertente fatto con un opamp, il
valore in amplificazione è di 10x.

Però non conoscevo come il motore assorbisse la corrente, io credevo
che fosse in relazione allo sforzo e che i due motori che ho, una
volta messo a terra il robot, assorbissero qualcosa invece da fermo
assorbe circa 4-5 contro 6-7 alla massima velocità su 256, anzi 128
dato che uso l'opamp ad alimentazione singola. :)

Invece l'assorbimento aumenta solo se cerco di fermare il BOT (arriva
a 66 il valore letto dall'AD), ed anche con un discreto PWM, perchè
se va pianissimo l'assorbimento quasi non si muove (passa da 4-5 a 5-
6)......, quindi mi trovo in difficoltà a capire se tutto va ok.

Insomma non è inutile la lettura dell'assorbimento, ma quasi, mentre
io credevo permettesse di avere un maggior controllo del motore.

Ora mi faccio alcune domande, la prima è se usndo l'opamp come
amplificatore differenziale anche a basso regime si sarebbe visto e
meglio apprezzato l'assorbimento (del tipo avere una amplificazione
invece che lineare parabolica). Poi mi chiedo se per il peso del bot
ho usato due motori troppo potenti 2,5 kg/cm per cui non assorbono
nulla per spingerlo (in piano poi...), infine mi chiedo se usando una
lettura a 10 bit invece che a 8 bit, benchè ho del rumore di fondo,
migliorerei qualcosa.

Saluti Nonno



------------------------------------
Marco
2009-01-05 00:21:07 UTC
Permalink
Post by Stefano M.
Però non conoscevo come il motore assorbisse la corrente, io credevo
che fosse in relazione allo sforzo e che i due motori che ho, una
volta messo a terra il robot, assorbissero qualcosa invece da fermo
assorbe circa 4-5 contro 6-7 alla massima velocità su 256, anzi 128
dato che uso l'opamp ad alimentazione singola. :)
Visto il valore, probabilmente la misura non è precisa ma ci sta che
assorba qualcosa a vuoto e poi un po' di più con il carico, fino a qui
considerando un po' di errori può essere giusto
Post by Stefano M.
Invece l'assorbimento aumenta solo se cerco di fermare il BOT (arriva
a 66 il valore letto dall'AD), ed anche con un discreto PWM, perchè
se va pianissimo l'assorbimento quasi non si muove (passa da 4-5 a 5-
6)......, quindi mi trovo in difficoltà a capire se tutto va ok.
Anche qui sembra tutto regolare
Post by Stefano M.
Insomma non è inutile la lettura dell'assorbimento, ma quasi, mentre
io credevo permettesse di avere un maggior controllo del motore.
stai forse solo sbagliando scala di lettura
Post by Stefano M.
Ora mi faccio alcune domande, la prima è se usndo l'opamp come
amplificatore differenziale anche a basso regime si sarebbe visto e
meglio apprezzato l'assorbimento (del tipo avere una amplificazione
invece che lineare parabolica).
Microchip fa dei bellissimi opamp a guadagno variabile, 1-10-50 a
seconda di come metti il pin gain, usando quello risparmi di fare
calcoli poi per convertire i dati "parabolici
Post by Stefano M.
Poi mi chiedo se per il peso del bot
ho usato due motori troppo potenti 2,5 kg/cm per cui non assorbono
nulla per spingerlo (in piano poi...), infine mi chiedo se usando una
lettura a 10 bit invece che a 8 bit, benchè ho del rumore di fondo,
migliorerei qualcosa.
A una certa ora meglio il letto dei pic :o))))
anche con motori più piccoli, se usi la stessa tensione hai la stessa
corrente per muovere lo stesso bot, l'assorbimento dipende dalla potenza
che serve per muoverlo. Con 10 bit se, come dici tu hai rumore, rischi
solo di leggere meglio quello

Ciao
m


------------------------------------
Stefano M.
2009-01-05 00:47:33 UTC
Permalink
La mia telemetria è casereccia per ora, quindi i valori potrebbero
essere leggermente differenti, però secondo me poco cambia. La misura
dell'assorbimento alla fine la posso usare solo per capire se ho un
problema non per avere una curva di assorbimento del motore da
interfacciare con altre curve e farmi un'idea più precisa del suo
funzionamento.

Non ho le idee chiarissime, anche se spero di chiarirmele piano piano
con la pratica e con il vostro aiuto.

Grazie per avermi risposto e confermato che quello che leggo è
comunque abbastanza preciso.

Ciao Nonno
Post by Marco
Post by Stefano M.
Però non conoscevo come il motore assorbisse la corrente, io credevo
che fosse in relazione allo sforzo e che i due motori che ho, una
volta messo a terra il robot, assorbissero qualcosa invece da fermo
assorbe circa 4-5 contro 6-7 alla massima velocità su 256, anzi 128
dato che uso l'opamp ad alimentazione singola. :)
Visto il valore, probabilmente la misura non è precisa ma ci sta che
assorba qualcosa a vuoto e poi un po' di più con il carico, fino a qui
considerando un po' di errori può essere giusto
Post by Stefano M.
Invece l'assorbimento aumenta solo se cerco di fermare il BOT (arriva
a 66 il valore letto dall'AD), ed anche con un discreto PWM,
perchè
Post by Marco
Post by Stefano M.
se va pianissimo l'assorbimento quasi non si muove (passa da 4-5 a 5-
6)......, quindi mi trovo in difficoltà a capire se tutto va ok.
Anche qui sembra tutto regolare
Post by Stefano M.
Insomma non è inutile la lettura dell'assorbimento, ma quasi, mentre
io credevo permettesse di avere un maggior controllo del motore.
stai forse solo sbagliando scala di lettura
Post by Stefano M.
Ora mi faccio alcune domande, la prima è se usndo l'opamp come
amplificatore differenziale anche a basso regime si sarebbe visto e
meglio apprezzato l'assorbimento (del tipo avere una
amplificazione
Post by Marco
Post by Stefano M.
invece che lineare parabolica).
Microchip fa dei bellissimi opamp a guadagno variabile, 1-10-50 a
seconda di come metti il pin gain, usando quello risparmi di fare
calcoli poi per convertire i dati "parabolici
Post by Stefano M.
Poi mi chiedo se per il peso del bot
ho usato due motori troppo potenti 2,5 kg/cm per cui non
assorbono
Post by Marco
Post by Stefano M.
nulla per spingerlo (in piano poi...), infine mi chiedo se usando una
lettura a 10 bit invece che a 8 bit, benchè ho del rumore di fondo,
migliorerei qualcosa.
A una certa ora meglio il letto dei pic :o))))
anche con motori più piccoli, se usi la stessa tensione hai la stessa
corrente per muovere lo stesso bot, l'assorbimento dipende dalla potenza
che serve per muoverlo. Con 10 bit se, come dici tu hai rumore, rischi
solo di leggere meglio quello
Ciao
m
------------------------------------
Guido Ottaviani
2009-01-05 00:50:45 UTC
Permalink
aspetta, aspetta, non correre :-)

Non ho capito il discorso sull'alimentazione singola e i 128 bit.
Rifacciamoci i conti.
Io uso una R di sense da 0,27 Ohm, con un amplificazione di 10
significa che ho 2,7V con 1A di corrente sul motore.
Questa tensione rientra benissimo nel range dell'OP-AMP
alimentato a 5V e quindi tutto funziona fino a qui.
Ho messo la Vref dell'ADC a 2,7V (se fai riferimento allo schema
con i dsPIC30F). Questo significa che con 1A ho il fondo scala
della lettura dell'ADC.
Se hai una lettura a 8 bit hai una risoluzione di 1/256 = 3,9mA.
Devi sicuramente leggere qualcosa anche con i motori a vuoto,
non è possibile che consumino meno di 4mA.
Andando a 10 bit hai 1/1024 = 0,9mA di risoluzione, a meno
che tu non debba fare un sofisticato controllo di reazione
sulla corrente del motore non credo che ti serva più di tanto e
tanto meno una lettura non lineare per amplificare la lettura
nei valori bassi.

Per il rumore, la rete RC sull'OP-AMP fa da filtro a 1KHz che quindi
toglie sicuramente il PWM e anche qualche cosa in più. Inoltre
faccio una media di più letture. Non ricordo sulla versione 30F ma
con la 33F faccio una media di 32 letture in 10ms. Questo inserisce
un ulteriore filtraggio del rumore.

Ovviamente ti devi rifare i conti con i tuoi valori ma parti da questi
dati per verificare. Misura la tensione all'uscita dell'OP-AMP con
un tester e poi verifica la lettura dell'ADC con una tensione ottenuta
da un potenziometro e verificata con il tester. Verifica un pezzetto
per volta prima di cercare soluzioni più complicate.

ciao
Guido
Post by Stefano M.
Per misurare l'assorbimento dei motori ho seguito lo schema
elettronico di Guido che mi sembrava abbastanza corretto.
Lo schema è un amplificatore non invertente fatto con un opamp, il
valore in amplificazione è di 10x.
Però non conoscevo come il motore assorbisse la corrente, io credevo
che fosse in relazione allo sforzo e che i due motori che ho, una
volta messo a terra il robot, assorbissero qualcosa invece da fermo
assorbe circa 4-5 contro 6-7 alla massima velocità su 256, anzi 128
dato che uso l'opamp ad alimentazione singola. :)
Invece l'assorbimento aumenta solo se cerco di fermare il BOT (arriva
a 66 il valore letto dall'AD), ed anche con un discreto PWM, perchè
se va pianissimo l'assorbimento quasi non si muove (passa da 4-5 a 5-
6)......, quindi mi trovo in difficoltà a capire se tutto va ok.
Insomma non è inutile la lettura dell'assorbimento, ma quasi, mentre
io credevo permettesse di avere un maggior controllo del motore.
Ora mi faccio alcune domande, la prima è se usndo l'opamp come
amplificatore differenziale anche a basso regime si sarebbe visto e
meglio apprezzato l'assorbimento (del tipo avere una amplificazione
invece che lineare parabolica). Poi mi chiedo se per il peso del bot
ho usato due motori troppo potenti 2,5 kg/cm per cui non assorbono
nulla per spingerlo (in piano poi...), infine mi chiedo se usando una
lettura a 10 bit invece che a 8 bit, benchè ho del rumore di fondo,
migliorerei qualcosa.
Saluti Nonno
------------------------------------
Stefano M.
2009-01-05 10:45:33 UTC
Permalink
Allora ti spiego come ho fatto io.

Io sono partito dal fatto che al massimo i ponti ad H 298 possono
dare 2,5 amper (anzi in questa situazione forse stanno già
cuocendo :),
ho messo una r da 0,1 ohm, quindi al massimo posso avere una caduta
di tensione di 0,25 volt, giusto?

Prendiamo un opamp con alimentazione singola, e invece di collegare
il meno a 1/2 di alimentazione l'ho collegato a massa. In questa
maniera avendo una lettura solo di valori positivi non perdo nulla
(insomma non ho un'onda che oscilla fra - qualcosa e + qualcosa ma
solo valori positivi).

Ora se l'opamp amplifica di 10 volte avrò al massimo
dell'assorbimento 0,25 volt * 10 cioè 2,5 volt. Per recuperare linee
AD non ho messo vref a 2,5 volt che mi avrebbe permesso di fare una
lettura da 0 a 2,5 volt con una risoluzione di 256 step, così
ovviamente mi ritrovo a fare una lettura da 0 a 2,5 volt con una
risoluzione di soli 128 step. OK, sbaglio qualcosa?

Ora veniamo alle letture, che come h detto sono ancora nella fase
embrionale.

Con motori fermi (pwm attivo al 50%) leggo un valore che oscilla fra
4 e 5 (con una media dovrei normalizzare il valore ma non lo faccio
ancora) quindi 2,5/128*4 = 0,08 volt che corrispondono a 0,08 A.
Giusto?

con il motore alla massima velocità (PWM quasi pieno) leggo 42 (però
da verificare bene) quindi 2,5/128*42 = 0,82 A

Con il motore alla massima velocità e bot che gira per casa leggo 7-8
mettiamo 8, 2,5/128*8 = 0,16 A.

Mi rendo conto di essermi tenuto molto largo, la paura di bruciare
qualcosa era più forte della sicurezza dei calcoli ......

Insomma se becco un ostacolo imprevisto (ammesso che le ruote non
slittino) l'assorbimento aumenta consistentemente ma durante il
normale procedere avere valori che variano fra 4 e 8 (nel migliore
dei casi) non mi sembra sia il massimo.

Leggendo quello che hai scritto tu mi veniva una domanda ma quanto
posso amplificare al max con un opamp? insomma già se mettessi il
fondo scala ad 1-1,5 amper (amplificando di 20 volte) dovrei
recuperare in risoluzione o no? Oppure potrei aumentare la rsistenza
portandola come te da 0,1 a 0,22 ohm (se riuscissi a trovarla).

Vabbè dai questo non è il problema principale, per ora qualcosa
leggo, solo sono rimasto un pò deluso :o)

Ciao Nonno
Post by Guido Ottaviani
Non ho capito il discorso sull'alimentazione singola e i 128 bit.
Rifacciamoci i conti.
Io uso una R di sense da 0,27 Ohm, con un amplificazione di 10
significa che ho 2,7V con 1A di corrente sul motore.
Questa tensione rientra benissimo nel range dell'OP-AMP
alimentato a 5V e quindi tutto funziona fino a qui.
Ho messo la Vref dell'ADC a 2,7V (se fai riferimento allo schema
con i dsPIC30F). Questo significa che con 1A ho il fondo scala
della lettura dell'ADC.
Se hai una lettura a 8 bit hai una risoluzione di 1/256 = 3,9mA.
Devi sicuramente leggere qualcosa anche con i motori a vuoto,
non è possibile che consumino meno di 4mA.
Andando a 10 bit hai 1/1024 = 0,9mA di risoluzione, a meno
che tu non debba fare un sofisticato controllo di reazione
sulla corrente del motore non credo che ti serva più di tanto e
tanto meno una lettura non lineare per amplificare la lettura
nei valori bassi.
Per il rumore, la rete RC sull'OP-AMP fa da filtro a 1KHz che quindi
toglie sicuramente il PWM e anche qualche cosa in più. Inoltre
faccio una media di più letture. Non ricordo sulla versione 30F ma
con la 33F faccio una media di 32 letture in 10ms. Questo inserisce
un ulteriore filtraggio del rumore.
Ovviamente ti devi rifare i conti con i tuoi valori ma parti da questi
dati per verificare. Misura la tensione all'uscita dell'OP-AMP con
un tester e poi verifica la lettura dell'ADC con una tensione
ottenuta
Post by Guido Ottaviani
da un potenziometro e verificata con il tester. Verifica un pezzetto
per volta prima di cercare soluzioni più complicate.
ciao
Guido
Post by Stefano M.
Per misurare l'assorbimento dei motori ho seguito lo schema
elettronico di Guido che mi sembrava abbastanza corretto.
Lo schema è un amplificatore non invertente fatto con un opamp, il
valore in amplificazione è di 10x.
Però non conoscevo come il motore assorbisse la corrente, io credevo
che fosse in relazione allo sforzo e che i due motori che ho, una
volta messo a terra il robot, assorbissero qualcosa invece da fermo
assorbe circa 4-5 contro 6-7 alla massima velocità su 256, anzi 128
dato che uso l'opamp ad alimentazione singola. :)
Invece l'assorbimento aumenta solo se cerco di fermare il BOT (arriva
a 66 il valore letto dall'AD), ed anche con un discreto PWM,
perchè
Post by Guido Ottaviani
Post by Stefano M.
se va pianissimo l'assorbimento quasi non si muove (passa da 4-5 a 5-
6)......, quindi mi trovo in difficoltà a capire se tutto va ok.
Insomma non è inutile la lettura dell'assorbimento, ma quasi, mentre
io credevo permettesse di avere un maggior controllo del motore.
Ora mi faccio alcune domande, la prima è se usndo l'opamp come
amplificatore differenziale anche a basso regime si sarebbe visto e
meglio apprezzato l'assorbimento (del tipo avere una
amplificazione
Post by Guido Ottaviani
Post by Stefano M.
invece che lineare parabolica). Poi mi chiedo se per il peso del bot
ho usato due motori troppo potenti 2,5 kg/cm per cui non
assorbono
Post by Guido Ottaviani
Post by Stefano M.
nulla per spingerlo (in piano poi...), infine mi chiedo se usando una
lettura a 10 bit invece che a 8 bit, benchè ho del rumore di fondo,
migliorerei qualcosa.
Saluti Nonno
------------------------------------
Paolo Torda
2009-01-05 11:25:38 UTC
Permalink
Non tutti gli operazionali lavorano bene nelle vicinanze dello 0 con
alimentazione singola.
LM358 va bene per questo lavoro il tl081 mi ha dato problemi.

Paolo.

-----Messaggio originale-----
Da: roboteck-***@public.gmane.org [mailto:roboteck-***@public.gmane.org] Per conto di
Stefano M.
Inviato: lunedì 5 gennaio 2009 11:46
A: roboteck-***@public.gmane.org
Oggetto: [roboteck] Ogg: Assorbimento motori


Allora ti spiego come ho fatto io.

Io sono partito dal fatto che al massimo i ponti ad H 298 possono
dare 2,5 amper (anzi in questa situazione forse stanno già
cuocendo :),
ho messo una r da 0,1 ohm, quindi al massimo posso avere una caduta
di tensione di 0,25 volt, giusto?

Prendiamo un opamp con alimentazione singola, e invece di collegare
il meno a 1/2 di alimentazione l'ho collegato a massa. In questa
maniera avendo una lettura solo di valori positivi non perdo nulla
(insomma non ho un'onda che oscilla fra - qualcosa e + qualcosa ma
solo valori positivi).

Ora se l'opamp amplifica di 10 volte avrò al massimo
dell'assorbimento 0,25 volt * 10 cioè 2,5 volt. Per recuperare linee
AD non ho messo vref a 2,5 volt che mi avrebbe permesso di fare una
lettura da 0 a 2,5 volt con una risoluzione di 256 step, così
ovviamente mi ritrovo a fare una lettura da 0 a 2,5 volt con una
risoluzione di soli 128 step. OK, sbaglio qualcosa?

Ora veniamo alle letture, che come h detto sono ancora nella fase
embrionale.

Con motori fermi (pwm attivo al 50%) leggo un valore che oscilla fra
4 e 5 (con una media dovrei normalizzare il valore ma non lo faccio
ancora) quindi 2,5/128*4 = 0,08 volt che corrispondono a 0,08 A.
Giusto?

con il motore alla massima velocità (PWM quasi pieno) leggo 42 (però
da verificare bene) quindi 2,5/128*42 = 0,82 A

Con il motore alla massima velocità e bot che gira per casa leggo 7-8
mettiamo 8, 2,5/128*8 = 0,16 A.

Mi rendo conto di essermi tenuto molto largo, la paura di bruciare
qualcosa era più forte della sicurezza dei calcoli ......

Insomma se becco un ostacolo imprevisto (ammesso che le ruote non
slittino) l'assorbimento aumenta consistentemente ma durante il
normale procedere avere valori che variano fra 4 e 8 (nel migliore
dei casi) non mi sembra sia il massimo.

Leggendo quello che hai scritto tu mi veniva una domanda ma quanto
posso amplificare al max con un opamp? insomma già se mettessi il
fondo scala ad 1-1,5 amper (amplificando di 20 volte) dovrei
recuperare in risoluzione o no? Oppure potrei aumentare la rsistenza
portandola come te da 0,1 a 0,22 ohm (se riuscissi a trovarla).

Vabbè dai questo non è il problema principale, per ora qualcosa
leggo, solo sono rimasto un pò deluso :o)

Ciao Nonno
Post by Guido Ottaviani
Non ho capito il discorso sull'alimentazione singola e i 128 bit.
Rifacciamoci i conti.
Io uso una R di sense da 0,27 Ohm, con un amplificazione di 10
significa che ho 2,7V con 1A di corrente sul motore.
Questa tensione rientra benissimo nel range dell'OP-AMP
alimentato a 5V e quindi tutto funziona fino a qui.
Ho messo la Vref dell'ADC a 2,7V (se fai riferimento allo schema
con i dsPIC30F). Questo significa che con 1A ho il fondo scala
della lettura dell'ADC.
Se hai una lettura a 8 bit hai una risoluzione di 1/256 = 3,9mA.
Devi sicuramente leggere qualcosa anche con i motori a vuoto,
non è possibile che consumino meno di 4mA.
Andando a 10 bit hai 1/1024 = 0,9mA di risoluzione, a meno
che tu non debba fare un sofisticato controllo di reazione
sulla corrente del motore non credo che ti serva più di tanto e
tanto meno una lettura non lineare per amplificare la lettura
nei valori bassi.
Per il rumore, la rete RC sull'OP-AMP fa da filtro a 1KHz che quindi
toglie sicuramente il PWM e anche qualche cosa in più. Inoltre
faccio una media di più letture. Non ricordo sulla versione 30F ma
con la 33F faccio una media di 32 letture in 10ms. Questo inserisce
un ulteriore filtraggio del rumore.
Ovviamente ti devi rifare i conti con i tuoi valori ma parti da questi
dati per verificare. Misura la tensione all'uscita dell'OP-AMP con
un tester e poi verifica la lettura dell'ADC con una tensione
ottenuta
Post by Guido Ottaviani
da un potenziometro e verificata con il tester. Verifica un pezzetto
per volta prima di cercare soluzioni più complicate.
ciao
Guido
Post by Stefano M.
Per misurare l'assorbimento dei motori ho seguito lo schema
elettronico di Guido che mi sembrava abbastanza corretto.
Lo schema è un amplificatore non invertente fatto con un opamp, il
valore in amplificazione è di 10x.
Però non conoscevo come il motore assorbisse la corrente, io credevo
che fosse in relazione allo sforzo e che i due motori che ho, una
volta messo a terra il robot, assorbissero qualcosa invece da fermo
assorbe circa 4-5 contro 6-7 alla massima velocità su 256, anzi 128
dato che uso l'opamp ad alimentazione singola. :)
Invece l'assorbimento aumenta solo se cerco di fermare il BOT (arriva
a 66 il valore letto dall'AD), ed anche con un discreto PWM,
perchè
Post by Guido Ottaviani
Post by Stefano M.
se va pianissimo l'assorbimento quasi non si muove (passa da 4-5 a 5-
6)......, quindi mi trovo in difficoltà a capire se tutto va ok.
Insomma non è inutile la lettura dell'assorbimento, ma quasi, mentre
io credevo permettesse di avere un maggior controllo del motore.
Ora mi faccio alcune domande, la prima è se usndo l'opamp come
amplificatore differenziale anche a basso regime si sarebbe visto e
meglio apprezzato l'assorbimento (del tipo avere una
amplificazione
Post by Guido Ottaviani
Post by Stefano M.
invece che lineare parabolica). Poi mi chiedo se per il peso del bot
ho usato due motori troppo potenti 2,5 kg/cm per cui non
assorbono
Post by Guido Ottaviani
Post by Stefano M.
nulla per spingerlo (in piano poi...), infine mi chiedo se usando una
lettura a 10 bit invece che a 8 bit, benchè ho del rumore di fondo,
migliorerei qualcosa.
Saluti Nonno
------------------------------------

Sito ufficiale della mail list:
www.roboteck.org

Per consultare le F.A.Q. della ML:
http://www.roboteck.org/faq/faq.htm

Link utili di Yahoo! Gruppi





------------------------------------
Stefano M.
2009-01-05 11:29:41 UTC
Permalink
Sto usando l'LM358 li avevo presi per fare delle prove e sono tornati
utili .....

Ciao Nonno
Post by Paolo Torda
Non tutti gli operazionali lavorano bene nelle vicinanze dello 0 con
alimentazione singola.
LM358 va bene per questo lavoro il tl081 mi ha dato problemi.
Paolo.
-----Messaggio originale-----
conto di
Post by Paolo Torda
Stefano M.
Inviato: lunedì 5 gennaio 2009 11:46
Oggetto: [roboteck] Ogg: Assorbimento motori
Allora ti spiego come ho fatto io.
Io sono partito dal fatto che al massimo i ponti ad H 298 possono
dare 2,5 amper (anzi in questa situazione forse stanno già
cuocendo :),
ho messo una r da 0,1 ohm, quindi al massimo posso avere una caduta
di tensione di 0,25 volt, giusto?
Prendiamo un opamp con alimentazione singola, e invece di collegare
il meno a 1/2 di alimentazione l'ho collegato a massa. In questa
maniera avendo una lettura solo di valori positivi non perdo nulla
(insomma non ho un'onda che oscilla fra - qualcosa e + qualcosa ma
solo valori positivi).
Ora se l'opamp amplifica di 10 volte avrò al massimo
dell'assorbimento 0,25 volt * 10 cioè 2,5 volt. Per recuperare linee
AD non ho messo vref a 2,5 volt che mi avrebbe permesso di fare una
lettura da 0 a 2,5 volt con una risoluzione di 256 step, così
ovviamente mi ritrovo a fare una lettura da 0 a 2,5 volt con una
risoluzione di soli 128 step. OK, sbaglio qualcosa?
Ora veniamo alle letture, che come h detto sono ancora nella fase
embrionale.
Con motori fermi (pwm attivo al 50%) leggo un valore che oscilla fra
4 e 5 (con una media dovrei normalizzare il valore ma non lo faccio
ancora) quindi 2,5/128*4 = 0,08 volt che corrispondono a 0,08 A.
Giusto?
con il motore alla massima velocità (PWM quasi pieno) leggo 42 (però
da verificare bene) quindi 2,5/128*42 = 0,82 A
Con il motore alla massima velocità e bot che gira per casa leggo 7-
8
Post by Paolo Torda
mettiamo 8, 2,5/128*8 = 0,16 A.
Mi rendo conto di essermi tenuto molto largo, la paura di bruciare
qualcosa era più forte della sicurezza dei calcoli ......
Insomma se becco un ostacolo imprevisto (ammesso che le ruote non
slittino) l'assorbimento aumenta consistentemente ma durante il
normale procedere avere valori che variano fra 4 e 8 (nel migliore
dei casi) non mi sembra sia il massimo.
Leggendo quello che hai scritto tu mi veniva una domanda ma quanto
posso amplificare al max con un opamp? insomma già se mettessi il
fondo scala ad 1-1,5 amper (amplificando di 20 volte) dovrei
recuperare in risoluzione o no? Oppure potrei aumentare la
rsistenza
Post by Paolo Torda
portandola come te da 0,1 a 0,22 ohm (se riuscissi a trovarla).
Vabbè dai questo non è il problema principale, per ora qualcosa
leggo, solo sono rimasto un pò deluso :o)
Ciao Nonno
Post by Guido Ottaviani
Non ho capito il discorso sull'alimentazione singola e i 128 bit.
Rifacciamoci i conti.
Io uso una R di sense da 0,27 Ohm, con un amplificazione di 10
significa che ho 2,7V con 1A di corrente sul motore.
Questa tensione rientra benissimo nel range dell'OP-AMP
alimentato a 5V e quindi tutto funziona fino a qui.
Ho messo la Vref dell'ADC a 2,7V (se fai riferimento allo schema
con i dsPIC30F). Questo significa che con 1A ho il fondo scala
della lettura dell'ADC.
Se hai una lettura a 8 bit hai una risoluzione di 1/256 = 3,9mA.
Devi sicuramente leggere qualcosa anche con i motori a vuoto,
non è possibile che consumino meno di 4mA.
Andando a 10 bit hai 1/1024 = 0,9mA di risoluzione, a meno
che tu non debba fare un sofisticato controllo di reazione
sulla corrente del motore non credo che ti serva più di tanto e
tanto meno una lettura non lineare per amplificare la lettura
nei valori bassi.
Per il rumore, la rete RC sull'OP-AMP fa da filtro a 1KHz che quindi
toglie sicuramente il PWM e anche qualche cosa in più. Inoltre
faccio una media di più letture. Non ricordo sulla versione 30F ma
con la 33F faccio una media di 32 letture in 10ms. Questo
inserisce
Post by Paolo Torda
Post by Guido Ottaviani
un ulteriore filtraggio del rumore.
Ovviamente ti devi rifare i conti con i tuoi valori ma parti da
questi
Post by Guido Ottaviani
dati per verificare. Misura la tensione all'uscita dell'OP-AMP con
un tester e poi verifica la lettura dell'ADC con una tensione
ottenuta
Post by Guido Ottaviani
da un potenziometro e verificata con il tester. Verifica un
pezzetto
Post by Paolo Torda
Post by Guido Ottaviani
per volta prima di cercare soluzioni più complicate.
ciao
Guido
Post by Stefano M.
Per misurare l'assorbimento dei motori ho seguito lo schema
elettronico di Guido che mi sembrava abbastanza corretto.
Lo schema è un amplificatore non invertente fatto con un opamp,
il
Post by Guido Ottaviani
Post by Stefano M.
valore in amplificazione è di 10x.
Però non conoscevo come il motore assorbisse la corrente, io
credevo
Post by Guido Ottaviani
Post by Stefano M.
che fosse in relazione allo sforzo e che i due motori che ho, una
volta messo a terra il robot, assorbissero qualcosa invece da
fermo
Post by Guido Ottaviani
Post by Stefano M.
assorbe circa 4-5 contro 6-7 alla massima velocità su 256, anzi
128
Post by Guido Ottaviani
Post by Stefano M.
dato che uso l'opamp ad alimentazione singola. :)
Invece l'assorbimento aumenta solo se cerco di fermare il BOT
(arriva
Post by Guido Ottaviani
Post by Stefano M.
a 66 il valore letto dall'AD), ed anche con un discreto PWM,
perchè
Post by Guido Ottaviani
Post by Stefano M.
se va pianissimo l'assorbimento quasi non si muove (passa da 4-
5
Post by Paolo Torda
a 5-
Post by Guido Ottaviani
Post by Stefano M.
6)......, quindi mi trovo in difficoltà a capire se tutto va ok.
Insomma non è inutile la lettura dell'assorbimento, ma quasi,
mentre
Post by Guido Ottaviani
Post by Stefano M.
io credevo permettesse di avere un maggior controllo del motore.
Ora mi faccio alcune domande, la prima è se usndo l'opamp come
amplificatore differenziale anche a basso regime si sarebbe
visto
Post by Paolo Torda
e
Post by Guido Ottaviani
Post by Stefano M.
meglio apprezzato l'assorbimento (del tipo avere una
amplificazione
Post by Guido Ottaviani
Post by Stefano M.
invece che lineare parabolica). Poi mi chiedo se per il peso
del
Post by Paolo Torda
bot
Post by Guido Ottaviani
Post by Stefano M.
ho usato due motori troppo potenti 2,5 kg/cm per cui non
assorbono
Post by Guido Ottaviani
Post by Stefano M.
nulla per spingerlo (in piano poi...), infine mi chiedo se
usando
Post by Paolo Torda
una
Post by Guido Ottaviani
Post by Stefano M.
lettura a 10 bit invece che a 8 bit, benchè ho del rumore di
fondo,
Post by Guido Ottaviani
Post by Stefano M.
migliorerei qualcosa.
Saluti Nonno
------------------------------------
www.roboteck.org
http://www.roboteck.org/faq/faq.htm
Link utili di Yahoo! Gruppi
------------------------------------
Marco d'Ambrosio
2009-01-05 11:24:18 UTC
Permalink
Post by Stefano M.
Io sono partito dal fatto che al massimo i ponti ad H 298 possono
dare 2,5 amper (anzi in questa situazione forse stanno già
cuocendo :),
Diciamo che i 298 a 2.5 A se non metti una generosa aletta di raffreddamento
li puoi usare come piastre per cuocere le bistecche :-)
Post by Stefano M.
ho messo una r da 0,1 ohm, quindi al massimo posso avere una caduta
di tensione di 0,25 volt, giusto?
Esatto.
Post by Stefano M.
Prendiamo un opamp con alimentazione singola, e invece di collegare
il meno a 1/2 di alimentazione l'ho collegato a massa. In questa
maniera avendo una lettura solo di valori positivi non perdo nulla
(insomma non ho un'onda che oscilla fra - qualcosa e + qualcosa ma
olo valori positivi).
Più o meno si, però devi tenere conto del drop out minimo dell'opamp, se non
è un rail to rail la tensione minima non è 0, ma svariati decimi di volt.
Post by Stefano M.
Ora se l'opamp amplifica di 10 volte avrò al massimo
dell'assorbimento 0,25 volt * 10 cioè 2,5 volt.
Ok.
Post by Stefano M.
Per recuperare linee AD non ho messo vref a 2,5 volt che mi avrebbe
permesso di fare una
lettura da 0 a 2,5 volt con una risoluzione di 256 step, così
ovviamente mi ritrovo a fare una lettura da 0 a 2,5 volt con una
risoluzione di soli 128 step. OK, sbaglio qualcosa?
Gli ADC sono da 10 bit quindi la lettura è su base 512, con 2.5 Volt, e non
256.
Post by Stefano M.
Con motori fermi (pwm attivo al 50%) leggo un valore che oscilla fra
4 e 5 (con una media dovrei normalizzare il valore ma non lo faccio
ancora) quindi 2,5/128*4 = 0,08 volt che corrispondono a 0,08 A.
Giusto?
80 mA a fermo sono troppi, ammesso che la lettura sia corretta, al massimo
ne devono passare 10-20.
Post by Stefano M.
con il motore alla massima velocità (PWM quasi pieno) leggo 42 (però
da verificare bene) quindi 2,5/128*42 = 0,82 A
Anche questo valore è troppo alto, con PWM pieno i tuoi motori, a vuoto,
consumano al massimo 250-300 mA.
Post by Stefano M.
Con il motore alla massima velocità e bot che gira per casa leggo 7-8
mettiamo 8, 2,5/128*8 = 0,16 A.
Anche questo valore non va bene, alla massima velocità di crociera, diciamo
circa 160 rpm out dal motore, l'assorbimento è attorno ai 400-450 mA con
robot pesante 2.5 kg, questi sono dati misurati su Gino.
Questi valori sono riferiti ai classici motoriduttori da 200 rpm 12 Volt, se
non mi ricordo male stai usando questi come motori, ovviamente a causa delle
tolleranze elettriche e meccaniche possono differire di un buon +/- 10% tra
motore e motore, ma i tuoi valori sono decisamente fuori da questa
tolleranza.
Post by Stefano M.
Insomma se becco un ostacolo imprevisto (ammesso che le ruote non
slittino) l'assorbimento aumenta consistentemente ma durante il
normale procedere avere valori che variano fra 4 e 8 (nel migliore
dei casi) non mi sembra sia il massimo.
Al massimo arrivi a 1.4 Ampere, cioè la corrente di stallo del motore
Post by Stefano M.
Leggendo quello che hai scritto tu mi veniva una domanda ma quanto
posso amplificare al max con un opamp?
Dipende dalla banda dell'opmap, il valore massimo di frequenza è riferito al
guadagno unitario, funzionamento come voltage follower, aumentando
l'amplificazione la banda diminusice proporzionalmente, p.e. l'opamo ha una
banda di 1 MHz, con guadango 10 questa cala a 100 kHz, con guadano 20 cala a
50 kHz.
Sarebbe sempre bene evitare di amplificare più di 30x con un singolo opamp,
l'ideale è non superare 10x, rimanendo con una banda che sia almeno il
doppio della massima frequenza da amplificare.
Esempio pratico, l'opamp è da 1 MHz, devo amplificare 10x pertanto la banda
massima teorica è 10 kHz, ma quella reale che è bene utilizzare sono solo 50
kHz.
Quanto sopra è un discorso semplificato e generalista, tocca vedere le
caratteristiche esatte dell'opamp in uso e le raccomandazioni del
produttore, ci sono opamp per strumentazione che fanno "miracoli", ma non
sono componenti che puoi comprare nel negozietto sotto casa.

Ciao

Marco "the robopedia" d'Ambrosio


------------------------------------
Stefano M.
2009-01-05 11:52:42 UTC
Permalink
Post by Marco d'Ambrosio
è un rail to rail la tensione minima non è 0, ma svariati decimi di volt.
E qui già capisco di più ...... c'è in uscita quello che chiamavo
rumore ma che in effetti era una certa tensione di base, dovrò
leggerla e depurarla dalle letture.
Post by Marco d'Ambrosio
Gli ADC sono da 10 bit quindi la lettura è su base 512, con 2.5 Volt, e non
256.
Si ma per semplificare facevo la lettura allineando a sinistra il
risultato e prendendo solo gli 8 bit piu significativi per
semplificarmi la vita :) credo che la prima prova sarà di portare da
8 a 10 bit la lettura.
Post by Marco d'Ambrosio
80 mA a fermo sono troppi, ammesso che la lettura sia corretta, al massimo
ne devono passare 10-20.
Magari è colpa del rail to rail ..... che mi mette un 3-4 punti di
tensione di base (devo provare a pwm spento quanto leggo e usare
questo valore per depurare la lettura)
Post by Marco d'Ambrosio
Post by Stefano M.
con il motore alla massima velocità (PWM quasi pieno) leggo 42 (però
da verificare bene) quindi 2,5/128*42 = 0,82 A
Anche questo valore è troppo alto, con PWM pieno i tuoi motori, a vuoto,
consumano al massimo 250-300 mA.
Scusa qui non sono a vuoto come erroneamente ho lasciato intendere ma
sono al massimo pwm e in stallo ...... quindi 800 mA in stallo
Post by Marco d'Ambrosio
Post by Stefano M.
Con il motore alla massima velocità e bot che gira per casa leggo 7-8
mettiamo 8, 2,5/128*8 = 0,16 A.
Anche questo valore non va bene, alla massima velocità di crociera, diciamo
circa 160 rpm out dal motore, l'assorbimento è attorno ai 400-450 mA con
robot pesante 2.5 kg, questi sono dati misurati su Gino.
Questi valori sono riferiti ai classici motoriduttori da 200 rpm 12 Volt, se
non mi ricordo male stai usando questi come motori, ovviamente a causa delle
tolleranze elettriche e meccaniche possono differire di un buon +/- 10% tra
motore e motore, ma i tuoi valori sono decisamente fuori da questa
tolleranza.
No sto usando i micromotors la seri 155 se non sbaglio (quelli di
robotitaly) però adesso mi hai fatto venire in mente di gurdarmi lo
sheet del motore e vedere che assorbimenti riporta visto che se non
ricordo male li da sia in stallo che a rotazione libera ..... azzz
non ci ho pensato prima.
Post by Marco d'Ambrosio
Dipende dalla banda dell'opmap, il valore massimo di frequenza è riferito al
guadagno unitario, funzionamento come voltage follower, aumentando
l'amplificazione la banda diminusice proporzionalmente, p.e.
l'opamo ha una
Post by Marco d'Ambrosio
banda di 1 MHz, con guadango 10 questa cala a 100 kHz, con guadano 20 cala a
50 kHz.
Sarebbe sempre bene evitare di amplificare più di 30x con un
singolo opamp,
Post by Marco d'Ambrosio
l'ideale è non superare 10x, rimanendo con una banda che sia almeno il
doppio della massima frequenza da amplificare.
Esempio pratico, l'opamp è da 1 MHz, devo amplificare 10x pertanto la banda
massima teorica è 10 kHz, ma quella reale che è bene utilizzare sono solo 50
kHz.
Quanto sopra è un discorso semplificato e generalista, tocca vedere le
caratteristiche esatte dell'opamp in uso e le raccomandazioni del
produttore, ci sono opamp per strumentazione che fanno "miracoli", ma non
sono componenti che puoi comprare nel negozietto sotto casa.
Capito. mi vado a riguardare anche lo sheet dell'opamp e cerco di
capire se eventualmente posso amplificare di più :)


Ciao e grazie Nonno



------------------------------------
Stefano M.
2009-01-05 13:08:37 UTC
Permalink
Post by Stefano M.
Magari è colpa del rail to rail ..... che mi mette un 3-4 punti di
tensione di base (devo provare a pwm spento quanto leggo e usare
questo valore per depurare la lettura)
Magari è colpa del drop out ...... che leggo come 3-4 punti di ....

Quando si scrive veloce si rischia di scrivere cavolate, ma sopratutto
di non farsi capire ....

Scusate Nonno



------------------------------------
Guido Ottaviani
2009-01-05 15:12:34 UTC
Permalink
Antico proverbio cinese dice: "non si può avere la botte piena e la
moglie ubriaca".

Questo è un classico problema di misure elettriche. Tu vuoi:
1 - risparmiare pin e quindi non mettere la Vref per ottimizzare il range di misura
2 - risparmiare SW e quindi usare solo un registro dell'ADC
3 - usare un OP-AMP non rail to rail
4 - avere un fondo scala di 2,5A con una misura di 3-400mA
5 - avere una R sense di soli 0,1Ohm
6 - ...

e poi ti lamenti che hai poca differenza tra il valore minimo e quello
massimo di assorbimento del motore? E' come usare un tester su
fondo scala 200V per misurare la tensione di una batteria.

Antico proverbio romano dice "e una fettina di (_!_) non ce la
mettiamo?" :-)))

Scherzi a parte. Con una banda passante di 1KHz puoi tranquillamente
aumentare il guadagno dell'OP-AMP, però metti un condensatore
in parallelo alla R di controreazione per evitare che entri in oscillazione.
Con correnti così basse puoi aumentare anche la R sense, io ho trovato
tutti i valori bassi su Distrelec. Altrimenti, se hail le R da 0.1 mettene
un paio in serie, così raddoppi anche la potenza dissipabile.

ciao
Guido
Post by Stefano M.
Allora ti spiego come ho fatto io.
Io sono partito dal fatto che al massimo i ponti ad H 298 possono
dare 2,5 amper (anzi in questa situazione forse stanno già
cuocendo :),
ho messo una r da 0,1 ohm, quindi al massimo posso avere una caduta
di tensione di 0,25 volt, giusto?
Prendiamo un opamp con alimentazione singola, e invece di collegare
il meno a 1/2 di alimentazione l'ho collegato a massa. In questa
maniera avendo una lettura solo di valori positivi non perdo nulla
(insomma non ho un'onda che oscilla fra - qualcosa e + qualcosa ma
solo valori positivi).
Ora se l'opamp amplifica di 10 volte avrò al massimo
dell'assorbimento 0,25 volt * 10 cioè 2,5 volt. Per recuperare linee
AD non ho messo vref a 2,5 volt che mi avrebbe permesso di fare una
lettura da 0 a 2,5 volt con una risoluzione di 256 step, così
ovviamente mi ritrovo a fare una lettura da 0 a 2,5 volt con una
risoluzione di soli 128 step. OK, sbaglio qualcosa?
Ora veniamo alle letture, che come h detto sono ancora nella fase
embrionale.
Con motori fermi (pwm attivo al 50%) leggo un valore che oscilla fra
4 e 5 (con una media dovrei normalizzare il valore ma non lo faccio
ancora) quindi 2,5/128*4 = 0,08 volt che corrispondono a 0,08 A.
Giusto?
con il motore alla massima velocità (PWM quasi pieno) leggo 42 (però
da verificare bene) quindi 2,5/128*42 = 0,82 A
Con il motore alla massima velocità e bot che gira per casa leggo 7-8
mettiamo 8, 2,5/128*8 = 0,16 A.
Mi rendo conto di essermi tenuto molto largo, la paura di bruciare
qualcosa era più forte della sicurezza dei calcoli ......
Insomma se becco un ostacolo imprevisto (ammesso che le ruote non
slittino) l'assorbimento aumenta consistentemente ma durante il
normale procedere avere valori che variano fra 4 e 8 (nel migliore
dei casi) non mi sembra sia il massimo.
Leggendo quello che hai scritto tu mi veniva una domanda ma quanto
posso amplificare al max con un opamp? insomma già se mettessi il
fondo scala ad 1-1,5 amper (amplificando di 20 volte) dovrei
recuperare in risoluzione o no? Oppure potrei aumentare la rsistenza
portandola come te da 0,1 a 0,22 ohm (se riuscissi a trovarla).
Vabbè dai questo non è il problema principale, per ora qualcosa
leggo, solo sono rimasto un pò deluso :o)
Ciao Nonno
Post by Guido Ottaviani
Non ho capito il discorso sull'alimentazione singola e i 128 bit.
Rifacciamoci i conti.
Io uso una R di sense da 0,27 Ohm, con un amplificazione di 10
significa che ho 2,7V con 1A di corrente sul motore.
Questa tensione rientra benissimo nel range dell'OP-AMP
alimentato a 5V e quindi tutto funziona fino a qui.
Ho messo la Vref dell'ADC a 2,7V (se fai riferimento allo schema
con i dsPIC30F). Questo significa che con 1A ho il fondo scala
della lettura dell'ADC.
Se hai una lettura a 8 bit hai una risoluzione di 1/256 = 3,9mA.
Devi sicuramente leggere qualcosa anche con i motori a vuoto,
non è possibile che consumino meno di 4mA.
Andando a 10 bit hai 1/1024 = 0,9mA di risoluzione, a meno
che tu non debba fare un sofisticato controllo di reazione
sulla corrente del motore non credo che ti serva più di tanto e
tanto meno una lettura non lineare per amplificare la lettura
nei valori bassi.
Per il rumore, la rete RC sull'OP-AMP fa da filtro a 1KHz che quindi
toglie sicuramente il PWM e anche qualche cosa in più. Inoltre
faccio una media di più letture. Non ricordo sulla versione 30F ma
con la 33F faccio una media di 32 letture in 10ms. Questo inserisce
un ulteriore filtraggio del rumore.
Ovviamente ti devi rifare i conti con i tuoi valori ma parti da
questi
Post by Guido Ottaviani
dati per verificare. Misura la tensione all'uscita dell'OP-AMP con
un tester e poi verifica la lettura dell'ADC con una tensione
ottenuta
Post by Guido Ottaviani
da un potenziometro e verificata con il tester. Verifica un pezzetto
per volta prima di cercare soluzioni più complicate.
ciao
Guido
Post by Stefano M.
Per misurare l'assorbimento dei motori ho seguito lo schema
elettronico di Guido che mi sembrava abbastanza corretto.
Lo schema è un amplificatore non invertente fatto con un opamp,
il
Post by Guido Ottaviani
Post by Stefano M.
valore in amplificazione è di 10x.
Però non conoscevo come il motore assorbisse la corrente, io
credevo
Post by Guido Ottaviani
Post by Stefano M.
che fosse in relazione allo sforzo e che i due motori che ho, una
volta messo a terra il robot, assorbissero qualcosa invece da
fermo
Post by Guido Ottaviani
Post by Stefano M.
assorbe circa 4-5 contro 6-7 alla massima velocità su 256, anzi
128
Post by Guido Ottaviani
Post by Stefano M.
dato che uso l'opamp ad alimentazione singola. :)
Invece l'assorbimento aumenta solo se cerco di fermare il BOT
(arriva
Post by Guido Ottaviani
Post by Stefano M.
a 66 il valore letto dall'AD), ed anche con un discreto PWM,
perchè
Post by Guido Ottaviani
Post by Stefano M.
se va pianissimo l'assorbimento quasi non si muove (passa da 4-5
a 5-
Post by Guido Ottaviani
Post by Stefano M.
6)......, quindi mi trovo in difficoltà a capire se tutto va ok.
Insomma non è inutile la lettura dell'assorbimento, ma quasi,
mentre
Post by Guido Ottaviani
Post by Stefano M.
io credevo permettesse di avere un maggior controllo del motore.
Ora mi faccio alcune domande, la prima è se usndo l'opamp come
amplificatore differenziale anche a basso regime si sarebbe visto
e
Post by Guido Ottaviani
Post by Stefano M.
meglio apprezzato l'assorbimento (del tipo avere una
amplificazione
Post by Guido Ottaviani
Post by Stefano M.
invece che lineare parabolica). Poi mi chiedo se per il peso del
bot
Post by Guido Ottaviani
Post by Stefano M.
ho usato due motori troppo potenti 2,5 kg/cm per cui non
assorbono
Post by Guido Ottaviani
Post by Stefano M.
nulla per spingerlo (in piano poi...), infine mi chiedo se usando
una
Post by Guido Ottaviani
Post by Stefano M.
lettura a 10 bit invece che a 8 bit, benchè ho del rumore di
fondo,
Post by Guido Ottaviani
Post by Stefano M.
migliorerei qualcosa.
Saluti Nonno
------------------------------------
Stefano M.
2009-01-05 16:04:13 UTC
Permalink
Hai colpito nel segno ... in effetti le mie origini non sono romane
ma sono un misto di genovese, cinese, scozzese etc....

Hai anche ragione, ma dovevo pure iniziare da qualche parte, ora ho
scoperto che esistono questi opamp rail to rail ..... cercherò,
trasformare da 8 a 10 bit non è poi così difficile, solo che credevo
alla fine bastassero anche 7 bit e invece mi rendo conto che avevo
sbagliato i conti. Non avendo indicazioni su quanto assorbivano i
motori in stallo mi sono tenuto alla larga da probabili
bruciature .... per la resistenza da 0,1 ohm stesso discorso, pensa
che qui si trovavano solo da 5 watt e il primo montaggio l'ho fatto
proprio con una di quelle, poi mi sono vergognato ..... e finalmente
sono arivate quelle da 1 watt.

Insomma non sono proprio un rabino certe complicazioni mi sembravano
inutili,ma quello che mi ha sconvolto di più e che proprio non
sapevo, è il tipo di assorbimento che ha il motore, in pratica anche
con un certo carico i motori non è che poi consumino tutta questa
corrente.

Io mi aspettavo che a piena velocità e con un certo peso sopra,
l'assorbimento aumentasse vistosamente, per questo avevo risparmiato
così tanto. Invece no, i motori consumano poco anche sotto carico,
diverso sarà (credo) nel caso che il bot faccia delle salite in cui
il peso lo devono proprio sollevare e non solo trascinare.

Comunque ho capito che qualche strada per migliore le cose ce l'ho e
questo mi basta, adesso devo solo lavorare .....

Ultima considerazione, meglio passare per rabino che per cuoco [=:o) .

Ciao Nonno
Post by Guido Ottaviani
Antico proverbio cinese dice: "non si può avere la botte piena e la
moglie ubriaca".
1 - risparmiare pin e quindi non mettere la Vref per ottimizzare il range di misura
2 - risparmiare SW e quindi usare solo un registro dell'ADC
3 - usare un OP-AMP non rail to rail
4 - avere un fondo scala di 2,5A con una misura di 3-400mA
5 - avere una R sense di soli 0,1Ohm
6 - ...
e poi ti lamenti che hai poca differenza tra il valore minimo e quello
massimo di assorbimento del motore? E' come usare un tester su
fondo scala 200V per misurare la tensione di una batteria.
Antico proverbio romano dice "e una fettina di (_!_) non ce la
mettiamo?" :-)))
Scherzi a parte. Con una banda passante di 1KHz puoi tranquillamente
aumentare il guadagno dell'OP-AMP, però metti un condensatore
in parallelo alla R di controreazione per evitare che entri in
oscillazione.
Post by Guido Ottaviani
Con correnti così basse puoi aumentare anche la R sense, io ho trovato
tutti i valori bassi su Distrelec. Altrimenti, se hail le R da 0.1 mettene
un paio in serie, così raddoppi anche la potenza dissipabile.
ciao
Guido
Post by Stefano M.
Allora ti spiego come ho fatto io.
Io sono partito dal fatto che al massimo i ponti ad H 298 possono
dare 2,5 amper (anzi in questa situazione forse stanno già
cuocendo :),
ho messo una r da 0,1 ohm, quindi al massimo posso avere una
caduta
Post by Guido Ottaviani
Post by Stefano M.
di tensione di 0,25 volt, giusto?
Prendiamo un opamp con alimentazione singola, e invece di
collegare
Post by Guido Ottaviani
Post by Stefano M.
il meno a 1/2 di alimentazione l'ho collegato a massa. In questa
maniera avendo una lettura solo di valori positivi non perdo
nulla
Post by Guido Ottaviani
Post by Stefano M.
(insomma non ho un'onda che oscilla fra - qualcosa e + qualcosa ma
solo valori positivi).
Ora se l'opamp amplifica di 10 volte avrò al massimo
dell'assorbimento 0,25 volt * 10 cioè 2,5 volt. Per recuperare linee
AD non ho messo vref a 2,5 volt che mi avrebbe permesso di fare una
lettura da 0 a 2,5 volt con una risoluzione di 256 step, così
ovviamente mi ritrovo a fare una lettura da 0 a 2,5 volt con una
risoluzione di soli 128 step. OK, sbaglio qualcosa?
Ora veniamo alle letture, che come h detto sono ancora nella fase
embrionale.
Con motori fermi (pwm attivo al 50%) leggo un valore che oscilla fra
4 e 5 (con una media dovrei normalizzare il valore ma non lo
faccio
Post by Guido Ottaviani
Post by Stefano M.
ancora) quindi 2,5/128*4 = 0,08 volt che corrispondono a 0,08 A.
Giusto?
con il motore alla massima velocità (PWM quasi pieno) leggo 42 (però
da verificare bene) quindi 2,5/128*42 = 0,82 A
Con il motore alla massima velocità e bot che gira per casa leggo 7-8
mettiamo 8, 2,5/128*8 = 0,16 A.
Mi rendo conto di essermi tenuto molto largo, la paura di
bruciare
Post by Guido Ottaviani
Post by Stefano M.
qualcosa era più forte della sicurezza dei calcoli ......
Insomma se becco un ostacolo imprevisto (ammesso che le ruote non
slittino) l'assorbimento aumenta consistentemente ma durante il
normale procedere avere valori che variano fra 4 e 8 (nel
migliore
Post by Guido Ottaviani
Post by Stefano M.
dei casi) non mi sembra sia il massimo.
Leggendo quello che hai scritto tu mi veniva una domanda ma
quanto
Post by Guido Ottaviani
Post by Stefano M.
posso amplificare al max con un opamp? insomma già se mettessi il
fondo scala ad 1-1,5 amper (amplificando di 20 volte) dovrei
recuperare in risoluzione o no? Oppure potrei aumentare la
rsistenza
Post by Guido Ottaviani
Post by Stefano M.
portandola come te da 0,1 a 0,22 ohm (se riuscissi a trovarla).
Vabbè dai questo non è il problema principale, per ora qualcosa
leggo, solo sono rimasto un pò deluso :o)
Ciao Nonno
Post by Guido Ottaviani
Non ho capito il discorso sull'alimentazione singola e i 128 bit.
Rifacciamoci i conti.
Io uso una R di sense da 0,27 Ohm, con un amplificazione di 10
significa che ho 2,7V con 1A di corrente sul motore.
Questa tensione rientra benissimo nel range dell'OP-AMP
alimentato a 5V e quindi tutto funziona fino a qui.
Ho messo la Vref dell'ADC a 2,7V (se fai riferimento allo
schema
Post by Guido Ottaviani
Post by Stefano M.
Post by Guido Ottaviani
con i dsPIC30F). Questo significa che con 1A ho il fondo scala
della lettura dell'ADC.
Se hai una lettura a 8 bit hai una risoluzione di 1/256 = 3,9mA.
Devi sicuramente leggere qualcosa anche con i motori a vuoto,
non è possibile che consumino meno di 4mA.
Andando a 10 bit hai 1/1024 = 0,9mA di risoluzione, a meno
che tu non debba fare un sofisticato controllo di reazione
sulla corrente del motore non credo che ti serva più di tanto e
tanto meno una lettura non lineare per amplificare la lettura
nei valori bassi.
Per il rumore, la rete RC sull'OP-AMP fa da filtro a 1KHz che quindi
toglie sicuramente il PWM e anche qualche cosa in più. Inoltre
faccio una media di più letture. Non ricordo sulla versione 30F ma
con la 33F faccio una media di 32 letture in 10ms. Questo
inserisce
Post by Guido Ottaviani
Post by Stefano M.
Post by Guido Ottaviani
un ulteriore filtraggio del rumore.
Ovviamente ti devi rifare i conti con i tuoi valori ma parti da
questi
Post by Guido Ottaviani
dati per verificare. Misura la tensione all'uscita dell'OP-AMP con
un tester e poi verifica la lettura dell'ADC con una tensione
ottenuta
Post by Guido Ottaviani
da un potenziometro e verificata con il tester. Verifica un pezzetto
per volta prima di cercare soluzioni più complicate.
ciao
Guido
Post by Stefano M.
Per misurare l'assorbimento dei motori ho seguito lo schema
elettronico di Guido che mi sembrava abbastanza corretto.
Lo schema è un amplificatore non invertente fatto con un opamp,
il
Post by Guido Ottaviani
Post by Stefano M.
valore in amplificazione è di 10x.
Però non conoscevo come il motore assorbisse la corrente, io
credevo
Post by Guido Ottaviani
Post by Stefano M.
che fosse in relazione allo sforzo e che i due motori che ho, una
volta messo a terra il robot, assorbissero qualcosa invece da
fermo
Post by Guido Ottaviani
Post by Stefano M.
assorbe circa 4-5 contro 6-7 alla massima velocità su 256, anzi
128
Post by Guido Ottaviani
Post by Stefano M.
dato che uso l'opamp ad alimentazione singola. :)
Invece l'assorbimento aumenta solo se cerco di fermare il BOT
(arriva
Post by Guido Ottaviani
Post by Stefano M.
a 66 il valore letto dall'AD), ed anche con un discreto PWM,
perchè
Post by Guido Ottaviani
Post by Stefano M.
se va pianissimo l'assorbimento quasi non si muove (passa da 4-5
a 5-
Post by Guido Ottaviani
Post by Stefano M.
6)......, quindi mi trovo in difficoltà a capire se tutto va ok.
Insomma non è inutile la lettura dell'assorbimento, ma quasi,
mentre
Post by Guido Ottaviani
Post by Stefano M.
io credevo permettesse di avere un maggior controllo del
motore.
Post by Guido Ottaviani
Post by Stefano M.
Post by Guido Ottaviani
Post by Stefano M.
Ora mi faccio alcune domande, la prima è se usndo l'opamp come
amplificatore differenziale anche a basso regime si sarebbe visto
e
Post by Guido Ottaviani
Post by Stefano M.
meglio apprezzato l'assorbimento (del tipo avere una
amplificazione
Post by Guido Ottaviani
Post by Stefano M.
invece che lineare parabolica). Poi mi chiedo se per il peso del
bot
Post by Guido Ottaviani
Post by Stefano M.
ho usato due motori troppo potenti 2,5 kg/cm per cui non
assorbono
Post by Guido Ottaviani
Post by Stefano M.
nulla per spingerlo (in piano poi...), infine mi chiedo se usando
una
Post by Guido Ottaviani
Post by Stefano M.
lettura a 10 bit invece che a 8 bit, benchè ho del rumore di
fondo,
Post by Guido Ottaviani
Post by Stefano M.
migliorerei qualcosa.
Saluti Nonno
------------------------------------
John Fischetti
2009-01-06 01:35:12 UTC
Permalink
Io di solito uso questo componente:

LMC6482 - CMOS Dual Rail-to-Rail Input and Output Operational Amplifier

Tecnologia CMOS: corrente in ingresso 20 femtoampere.

Ha il vantaggio di essere rail to rail sia in ingresso che in uscita.

E' un po' permaloso, nel senso che se non curi bene le masse e il
bypass di alimentazione tende ad autooscillare.

Lo trovi da RS a circa 1,5 euro in formato dil.

Buoni robot.

John



------------------------------------
Marco d'Ambrosio
2009-01-06 08:17:23 UTC
Permalink
Post by John Fischetti
LMC6482 - CMOS Dual Rail-to-Rail Input and Output Operational Amplifier
Tecnologia CMOS: corrente in ingresso 20 femtoampere.
Ottimo consiglio, lo conosco e confermo che è "stronzetto" come opamp ed è
facile che autooscilli.
Comunque il classico LM358, che si trova pure dal fornaio, scende fino a
0.05 - 0.1 Volt, il problema è la tensione alta che tipicamente è Vdd - 1.5
Volt, il che significa che è lecito aspettarsi uno swing complessivo di 3.4
Volt con alimentazione singola a 5 Volt, se si usa il Vref+ degli ADC è
possibile ottenere tutti i 1024 count.
Colgo l'occasione per rammentare che quando sui micro è prevista
l'alimetazione separata per gli ADC questa è bene che sia disaccoppiata e
filtrata rispetto all'alimentazione principale, basta mettere una R da 100
ohm in serie al + 5 e il classico condensatore da 100 nf in parallelo al pin
per l'alimentazione degli ADC, stesso concetto per Vref.
Comunque per la misura della corrente assorbita dai motori non è il caso di
farsi troppe "pippe mentali" perchè è un segnale sporchissimo e se non
abbiamo l'esigenza di implementare un preciso controllo della coppia basta
dargli una pulita con un filtro passa basso e sovracampionarlo in modo da
ottenere una lettura reale 50-100 volte al secondo se ci serve anche per
limitare la coppia massima e/o per rilevare eventuali differenze di coppia
tra le due ruote, 10-20 al secondo se ci serve solo a fini telemetrici e/o
per rilevare condizioni di stallo.


Ciao

Marco "the robopedia" d'Ambrosio


------------------------------------
Paolo Torda
2009-01-06 13:03:19 UTC
Permalink
LM6132 e compagni funzionano abbastanza bene per me e non sono impossibili
da trovare anche nei negozi.

-----Messaggio originale-----
Da: roboteck-***@public.gmane.org [mailto:roboteck-***@public.gmane.org] Per conto di
Marco d'Ambrosio
Inviato: martedì 6 gennaio 2009 09:17
A: roboteck-***@public.gmane.org
Oggetto: Re: [roboteck] Ogg: Assorbimento motori
Post by John Fischetti
LMC6482 - CMOS Dual Rail-to-Rail Input and Output Operational Amplifier
Tecnologia CMOS: corrente in ingresso 20 femtoampere.
Ottimo consiglio, lo conosco e confermo che è "stronzetto" come opamp ed è
facile che autooscilli.
Comunque il classico LM358, che si trova pure dal fornaio, scende fino a
0.05 - 0.1 Volt, il problema è la tensione alta che tipicamente è Vdd - 1.5
Volt, il che significa che è lecito aspettarsi uno swing complessivo di 3.4
Volt con alimentazione singola a 5 Volt, se si usa il Vref+ degli ADC è
possibile ottenere tutti i 1024 count.
Colgo l'occasione per rammentare che quando sui micro è prevista
l'alimetazione separata per gli ADC questa è bene che sia disaccoppiata e
filtrata rispetto all'alimentazione principale, basta mettere una R da 100
ohm in serie al + 5 e il classico condensatore da 100 nf in parallelo al pin

per l'alimentazione degli ADC, stesso concetto per Vref.
Comunque per la misura della corrente assorbita dai motori non è il caso di
farsi troppe "pippe mentali" perchè è un segnale sporchissimo e se non
abbiamo l'esigenza di implementare un preciso controllo della coppia basta
dargli una pulita con un filtro passa basso e sovracampionarlo in modo da
ottenere una lettura reale 50-100 volte al secondo se ci serve anche per
limitare la coppia massima e/o per rilevare eventuali differenze di coppia
tra le due ruote, 10-20 al secondo se ci serve solo a fini telemetrici e/o
per rilevare condizioni di stallo.


Ciao

Marco "the robopedia" d'Ambrosio


------------------------------------

Sito ufficiale della mail list:
www.roboteck.org

Per consultare le F.A.Q. della ML:
http://www.roboteck.org/faq/faq.htm

Link utili di Yahoo! Gruppi





------------------------------------
John Fischetti
2009-01-06 13:55:22 UTC
Permalink
Post by Paolo Torda
LM6132 e compagni funzionano abbastanza bene per me e non sono
impossibili da trovare anche nei negozi.
Interessante. Ho visto che su RS costa da 3 a 4 euro e che è solo in
package per smd. Si trova facilmente anche in dil? Dove?

Bye.

John



------------------------------------
John Fischetti
2009-01-06 13:59:28 UTC
Permalink
Mi rispondo da solo :)

LM6132 DIL presso Distrelec: 2,85 euro cd/1 per una stecca da 50 pezzi.

Proverò.

Grassie.

John



------------------------------------
Marco d'Ambrosio
2009-01-06 15:25:47 UTC
Permalink
Post by John Fischetti
LM6132 DIL presso Distrelec: 2,85 euro cd/1 per una stecca da 50 pezzi.
MCP6021 (-2-3-4) di Microchip, ha caratteristiche praticamente identiche e
contiene 1-2-3-4 opamp, costa 77 cent (case dil) per la versione a 1 opamp e
1.25 Euro per la versione a 4 opamp.

Ciao

Marco "the robopedia" d'Ambrosio


------------------------------------
Stefano M.
2009-01-06 16:15:20 UTC
Permalink
Post by Marco d'Ambrosio
Comunque il classico LM358, che si trova pure dal fornaio, scende fino a
0.05 - 0.1 Volt, il problema è la tensione alta che tipicamente è Vdd - 1.5
Volt, il che significa che è lecito aspettarsi uno swing
complessivo di 3.4
Post by Marco d'Ambrosio
Volt con alimentazione singola a 5 Volt, se si usa il Vref+ degli ADC è
possibile ottenere tutti i 1024 count.
Vabbè io lo sto usando a mezzo servizio :) quindi dovrebbe andare
bene lo stesso.
Post by Marco d'Ambrosio
l'alimetazione separata per gli ADC
filtrata rispetto all'alimentazione principale, basta mettere una R da 100
ohm in serie al + 5 e il classico condensatore da 100 nf in
parallelo al pin
Post by Marco d'Ambrosio
per l'alimentazione degli ADC, stesso concetto per Vref.
OK qui ho sbagliato, il condensatore c'è ma la resistenza di
disaccoppiamento no ..... questa è un'altra cosa da provare e
soprattutto da ricordare :)
La nostra mailing list è veramente una miniera di informazioni, sono
proprio contento ??!?!?!?!?!!!!
Post by Marco d'Ambrosio
Comunque per la misura della corrente assorbita dai motori non è il caso di
farsi troppe "pippe mentali" perchè è un segnale sporchissimo e se non
abbiamo l'esigenza di implementare un preciso controllo della
coppia basta
Post by Marco d'Ambrosio
dargli una pulita con un filtro passa basso e sovracampionarlo in modo da
ottenere una lettura reale 50-100 volte al secondo se ci serve
anche per
Post by Marco d'Ambrosio
limitare la coppia massima e/o per rilevare eventuali differenze di coppia
tra le due ruote, 10-20 al secondo se ci serve solo a fini
telemetrici e/o
Post by Marco d'Ambrosio
per rilevare condizioni di stallo.
Hai sicuramente ragione, io infatti non è che ho aperto il discorso
per avere delle letture precise al millivolt, altrimenti sarei
partito da altri presupposti e non come ho fatto dal punto di vista
di un genovese :o)) (chiedo venia ai genovesi)

Però visto che il bot l'ho fatto anche per sperimentare soluzioni da
esprtare sul bot futuro, queste sono tutte notizie utili che metto
nella mia sacchetta della conoscenza e che appena preparate le
routine più importanti per l'rtc proverò senza dubbio.

Saluti e grazie Nonno




------------------------------------
Stefano M.
2009-01-06 16:18:06 UTC
Permalink
Post by John Fischetti
LMC6482
E' un po' permaloso, nel senso che se non curi bene le masse e il
bypass di alimentazione tende ad autooscillare.
Cosa vuol dire? Io nei PCB riempio tutto lo spazio vuoto con piani di
massa, inoltre metto i famosi condensatorini attaccati al positivo di
alimentazione, a volte anche troppi :)

Guido diceva che per evitare autoscillazioni bisognava mettere un
condensatore in parallelo alla resistenza di reazione.

Il Bypass cosa è?

Scusate l'ignoranza, ho letto qualche doc che mi aveva consigliato
Guido ma senza esperienza pratica è stato come bere un bicchiere di
acqua fresca .... una volta bevuta rimane poco, proprio perchè non
capisco i risvolti pratici.

Saluti Nonno




------------------------------------
Guido Ottaviani
2009-01-06 18:39:18 UTC
Permalink
Post by Stefano M.
Guido diceva che per evitare autoscillazioni bisognava mettere un
condensatore in parallelo alla resistenza di reazione.
Il Bypass cosa è?
Quello coronarico ovviamente :-)
Diciamo una scorciatoia per le alte frequenze.
In pratica il solito 0.1uF che metti vicino al pin di alimentazione.

Se hai un guadagno alto c'è il rischio che qualche segnale ad alta
frequenza riesca a passare tramite qualche capacità parassita e si
riporti all'ingresso provocando un'autoscillazione.
Se metti un condensatore in parallelo alla R di controreazione diminuisci
il guadagno alle alte frequenze (da calcolare in base alla massima
banda passante che desideri) quindi eviti questo tipo di oscillazioni.

ciao
Guido


------------------------------------
John Fischetti
2009-01-07 00:37:04 UTC
Permalink
Grazie a Marco per la dritta sull'opamp della Microchip.

Riguardo la prevenzione di fenomeni di autooscillazione: se guardi
il datasheet trovi indicazioni sui casi nei quali è bene prevedere
una spira di cortocircuito attorno ai pin degli ingressi; i piani di
massa estesi possono dare più fastidio che altro se le masse non
sono disegnate in modo da evitare anelli che possono raccogliere
campo elettromagnetico e se non sono equipotenziali, nel senso di
far confluire le masse in un unico punto di riferimento e non di far
girare la pista come capita.

Infatti le masse possono raccogliere rumore se per esempio si
collega il gnd dell'operazionale a una pista di massa su cui scorre
una corrente notevole e i pin di ingresso vengono riferiti al gnd in
un punto a monte o a valle. Sembra una connessione a resistenza zero
e invece funge da resistenza di shunt ai cui capi si legge il valore
di corrente che scorre nella pista :)

Il Bypass è proprio il condensatore ceramico posto tra Vcc e Gnd. Se
hai a che fare con basse frequenze consiglio di aggiungere un
condensatore al tantalio da 1 o 2 uF in parallelo al ceramico da 0,1
uF.

L'inserimento di un piccolo condensatore in parallelo alla
resistenza di controreazione è utile. Ovviamente occorre calcolarne
il valore per fare in modo che non ti limiti la banda perché quel
condensatore fa diventare tutto il circuito un filtro passa basso.

Ottima anche l'indicazione di non esagerare con l'amplificazione e
semmai ripartirla su più amplificatori.

Infine, e qui conta molto l'esperienza, sapere che vi sono
componenti più sensibili ai disturbi e soggetti a maggiore
instabilità rispetto ad altri. Non sempre il prezzo è un valido
indicatore di qualità.

Bye.

John




------------------------------------
Stefano M.
2009-01-07 20:00:57 UTC
Permalink
Grazie John, ho capito un pò di più insieme anche all'indicazione di
Guido. Sicuramente adesso saprò anche leggere meglio .... e
soprattutto ho capito anche il problema dei piani di massa che
pensavo invece servissero proprio per evitare problemi e invece se
non ben fatti diventano deleteri. Però ho capito il concetto e
ovviamente ne faccio tesoro per la progettazione di future schede.

Ciao Nonno
Post by John Fischetti
Grazie a Marco per la dritta sull'opamp della Microchip.
Riguardo la prevenzione di fenomeni di autooscillazione: se guardi
il datasheet trovi indicazioni sui casi nei quali è bene prevedere
una spira di cortocircuito attorno ai pin degli ingressi; i piani di
massa estesi possono dare più fastidio che altro se le masse non
sono disegnate in modo da evitare anelli che possono raccogliere
campo elettromagnetico e se non sono equipotenziali, nel senso di
far confluire le masse in un unico punto di riferimento e non di far
girare la pista come capita.
Infatti le masse possono raccogliere rumore se per esempio si
collega il gnd dell'operazionale a una pista di massa su cui scorre
una corrente notevole e i pin di ingresso vengono riferiti al gnd in
un punto a monte o a valle. Sembra una connessione a resistenza zero
e invece funge da resistenza di shunt ai cui capi si legge il
valore
Post by John Fischetti
di corrente che scorre nella pista :)
Il Bypass è proprio il condensatore ceramico posto tra Vcc e Gnd. Se
hai a che fare con basse frequenze consiglio di aggiungere un
condensatore al tantalio da 1 o 2 uF in parallelo al ceramico da 0,1
uF.
L'inserimento di un piccolo condensatore in parallelo alla
resistenza di controreazione è utile. Ovviamente occorre calcolarne
il valore per fare in modo che non ti limiti la banda perché quel
condensatore fa diventare tutto il circuito un filtro passa basso.
Ottima anche l'indicazione di non esagerare con l'amplificazione e
semmai ripartirla su più amplificatori.
Infine, e qui conta molto l'esperienza, sapere che vi sono
componenti più sensibili ai disturbi e soggetti a maggiore
instabilità rispetto ad altri. Non sempre il prezzo è un valido
indicatore di qualità.
Bye.
John
------------------------------------

Marco d'Ambrosio
2009-01-06 11:22:44 UTC
Permalink
Post by Stefano M.
Io mi aspettavo che a piena velocità e con un certo peso sopra,
l'assorbimento aumentasse vistosamente, per questo avevo risparmiato
così tanto. Invece no, i motori consumano poco anche sotto carico,
L'assorbimento dipende dalla coppia erogata che a sua volta dipende dagli
attriti e dall'accelerazione/decelerazione richiesta, in pratica avrai
l'assorbimento che sale rapidamente verso il massimo durante i cambi di
velocità mentre rimane basso mentre il robot si muove a velocità costante
perchè serve solo la coppia per vincere l'attrito, solo quest'ultimo è
influenzato dal peso del robot.
Ovviamente stiamo parlando di avanzamento in piano, se siamo in salita tocca
vettorizzare la spinta dei motri con l'effetto della gravità che trasforma
il peso del robot in una forza che si oppone alla marcia.
Tieni presente che al crescere della velocità diminuisce la coppia
disponibile e diminuisce anche la corrente massima richiesta perchè il gap
massimo possibile tra f.e.m. e f.c.e.m. si riduce con l'incremento della
velocità di rotazione, per questo motivo anche la corrente massima che può
fluire nel motore.
Da notare un dettaglio molto importante, che poi è il punto che fa la
differenza tra un controllo ad anello aperto e uno ad anello chiuso, per
ottenere la massima coppia disponibile ad un certo numero di giri è
necessario aumentare la tensione ai capi del motore in modo da poter fornire
allo stesso una maggiore corrente senza far abbassare i giri, cosa che non
avviene fornendo semplicemente una tensione costante al motore, in questo
caso al variare del carico diminuiscono i giri in modo da aumentare la
differenza tra fem e fecm e permettere al motore di assorbire più corrente e
di conseguenza aumentare la coppia erogata.
Se dai una sbirciatina ai data sheet dei motori Lynxmotion puoi vedere le
varie curve caratteristiche e come variano in funzione dei giri, anche se
non sono quelle del tuo motore il comportamente è praticamente lo stesso e
ti da un'idea di come variano le grandezze fisiche in gioco.

Ciao

Marco "the robopedia" d'Ambrosio


------------------------------------
Loading...