L'alimentazione ausiliaria arriva da uno switching 12V - 2.1A PU025-12
Dopo pochi secondi di lavoro l'integrato L298P diventa rovente e non riesce più a far girare il motore.
Dove ho sbagliato?
Grazie per l'aiuto
Di seguito i codice usato:
#include <Stepper.h>
const int stepsPerRevolution = 200; // change this to fit the number of steps per revolution
// for your motor
// initialize the stepper library on the motor shield
Stepper myStepper(stepsPerRevolution, 12,13);
// give the motor control pins names:
const int pwmA = 3;
const int pwmB = 11;
const int brakeA = 9;
const int brakeB = 8;
const int dirA = 12;
const int dirB = 13;
int x = 0;
void setup () {
Serial.begin(9600);
// set the PWM and brake pins so that the direction pins // can be used to control the motor:
pinMode(pwmA, OUTPUT);
pinMode(pwmB, OUTPUT);
pinMode(brakeA, OUTPUT);
pinMode(brakeB, OUTPUT);
digitalWrite(pwmA, HIGH);
digitalWrite(pwmB, HIGH);
digitalWrite(brakeA, LOW);
digitalWrite(brakeB, LOW);
// initialize the serial port:
Serial.begin(9600);
// set the motor speed (for multiple steps only):
myStepper.setSpeed(200);
}
void loop () {
myStepper.step(100);
delay(1000);
myStepper.step(100);
delay(1000);
myStepper.step(100);
delay(1000);
myStepper.step(100);
delay(1000);
myStepper.step(-400);
delay(1000);
}
il L398 é un integrato di vecchia generazione. Usa dei transistori BJT come ponte H ha ca 3V a 2A di perdite sui finali.
I dati del Motore dicono:
Inominle = 2,5A per fase.
R = 1,3Ohm Resistenza di un avvolgimento.
Da questo si calcola la tensione nominale di U = I * R = 2,5A * 1,3 Ohm = 3,25V
La tensione suggerita é 12V. Questo vuol dire che é consigliato di alimentare il driver del motore con 12V. Sottinteso é che il driver é uno che pilota il motore in corrente e non in tensione.
Se prendiamo un driver in corrente, quello pilota il motore (somma delle due fasi) con ca 1,4* Iimpostata. se lo piloti a 2,5A l'alimentatore deve poter dare 3,5A.
ma c'e' qualcosa che non mi quadra, se la resistenza di un avvolgimento e' 1,3, applicandogli 12V siamo a 9A di assorbimento :o
Se i dati sono corretti e' normale che il 298 non gliela fa
Su robot italy ho trovato questo PoStep 25-32 cosa ne dite?
Secondo quello che mi avete spiegato riuscirebbe a pilotare il motore correttamente, o sbaglio?
Grazie ancora
io inizierei a fare delle misure, misura i due avvolgimenti e vedi quanti Ohm sono, poi misurati anche la corrente che assorbono per confermare che stiano usando tutti i 2A del tuo alimentatore
uwefed:
Il A4988 del Pololu_stepper_driver_board o del StepStick é un driver in corrente che eroga fino a 2A. Questo vuol dire che limita attivamente la corrente che circola nei avvolgimenti del motore. Il motore non avrá la coppia come se fosse pilotato con 2,5A nominali
Ciao Uwe
uwefed:
...
Puoi usare un A4988 con dissipatore e limitare la corrente sotto i 2A. Il motore funzionerá senza problemi ma non avrá la coppia nominale...
Ciao Uwe
Testato:
io inizierei a fare delle misure, misura i due avvolgimenti e vedi quanti Ohm sono, poi misurati anche la corrente che assorbono per confermare che stiano usando tutti i 2A del tuo alimentatore
Ciao
Ho ancora bisogno di voi
Torno sul drive PoStep 25-32
Il PoStep ha la stessa gestione del A4988 DIR e STEP quindi facile da adattare.
e arriva fino a 2.5A Fase
inoltre ha una limitazione di corrente integrata da selezionare con i jumper.
Vorrei dei chiarimenti su cosa significa 2.5A per fase
(è la corrente erogabile in ogni avvolgimento?)
E se è quello che necessita per il mio motore.
PS: non mi serve avere tutta la coppia possibile del motore
Grazie dei chiarimenti
Roby
Ciao Uwe
Usando ad esempio il Driver configurato a 2A
Con l'alimentatore da 2.1A
Avrei solo un calo di coppia ma non ci sarebbe nessun componente in crisi, come mi succedeva per L'L298P.
Vero?
Nel caso avessi bisogno della coppia completa basterebbe cambiare l'alimentatore e spostare il jumperino. Giusto?
La corrente per fase aumenta nel caso usassi i microstep?
Grazie
Saluti
Sono un po' confuso
Eppure il L298P era rovente e dopo pochi secondi non funzionava più, fin che non lo facevo raffreddare.
In teoria l'alimentatore da tutto quello che ha e basta.
Se limito la corrente a 2A con il secondo Jumper, l'alimentatore ha 0.1 di margine e
Il motore non ha la coppia massima, che per ora non mi serve.
(Alla fine credo che prenderò un alimentatore più grosso.)
Ma volevo comunque capire
se gli ampere per fase devono essere comparati agli ampere massimi del motore
se l'A4988 limita anche lui la corrente come credo faccia il PoStep
se quando alimento più avvolgimenti per microstep o altro la corrente necessari aumenta o si divide
Uwe Testato non lasciatemi con questi dubbi.
Grazie
Anche se lo piloti in half step la corrente assorbita resta uguale,
Per le altre risposte ho già detto la mia a partire dal primo intervento
Quello che non mi quadra è proprio il valore della resistenza degli avvolgimenti
l' A4988 arriva appunto a circa 2A ed è giusto collegarlo ad una alimentazione da 2A, come è giusto sapere che tutti i valori massimi di un datasheet sono da dividere per due quando erogano e moltiplicarli per 1.5 quando assorbono.
Quindi se sul datasheet il tuo motore assorbe 2A devi considerare un assorbimento massimo di 3A e una erogazione massima del tuo integrato di 1A, ovvio che brucia!
I casi speciali sono speciali, il tuo motore vorrà anche più di 3A di spunto ma poi subito dopo cala a 2A e quindi ci vorrebbe tutto il controller da almeno 3A in su.
Certo che siete proprio bravi a fare disinformazione
Prima di tutto gli stepper, tutti quanti, vanno pilotati in corrente tramite appositi driver, l'L298, o il 293, è solo metà del driver, specificamente la parte di potenza sotto forma di doppio ponte H, serve anche l'L297 che è la parte che genera le sequenze di attivazione delle fasi, full step o half step, e si occupa di mantenere costante la corrente sfruttando il chopped mode sul 298.
Se uno stepper di targa riporta tot ampere di fase quella è la corrente massima da fornire per ottenere la prestazioni nominali descritte sul datasheet, è possibile alimentarli con meno corrente se non serve tutta la coppia, però si perde anche in velocità massima, per contro non bisogna mai superare la corrente massima.
Con gli stepper non esiste lo spunto per il semplice motivo che è il driver a limitare la corrente al valore prestabilito, lo fa regolando opportunamente la tensione sulle fasi.
La tensione di alimentazione del driver deve essere almeno quattro volte la tensione nominale dello stepper, se non è indicata è data dal prodotto della corrente e la resistenza della fase, p.e. un motore da 3V richiede almeno 12V sul driver.
La tensione sul driver deve essere molto maggiore di quella di fase per due motivi, primo perché in questo modo c'è meno ripple sulla corrente, tensione maggiore = rampa di salita della corrente più ripida, inoltre quando il motore gira tocca fare i conti con la f.c.e.m. e per poter mantenere costante la corrente serve una tensione maggiore rispetto a quella nominale a motore a fermo.