domande su libreria <Stepper.h>

sto facendo delle prove con uno stepper EM-483 di una stampante epson (bipolare 4 fili, 3ohm x 2 bobine)

lo comando con un L293D (sottodimensionato ma per prove al momento mi basta)

nel codice c'e' un #define STEPS 100 ovvero io dico che lo stepper e' da 100 step, pero' se io gli faccio fare 100 step quello fa solo mezzo giro
1-quindi da quanti step sarebbe il mio?

poi ho notato che a bassa velocita' l'L293D non scalda, ad alte velocita' la temperatura sale velocemente
2-volevo sapere se gli impulsi che comandano lo stepper son sempre uguali in ampiezza o si modificano con la velocita' che gli definisco?

perche' in questo caso posso farlo andare molto lentamente, l'L293D non si scalda/brucia ed evito di dover comperare un L298...

  1. 200 passi
  2. dovrebbe essere in contrario. Se il motore va veloce dato l'induttanza del motore la corrente dovrebbe essere piú bassa e eprcui il L293 riscaldare di meno.
    Ciao Uwe

uwe, il fatto che l' L293D si scalda puo' dipendere anche dai diodi interni piu' che dal ponte H in se stesso? piu' impulsi sono maggiori sovracorrenti che si scaricano sui diodi??

ora provo i 200 step

grazie :wink:

uwe, ho risolto semplicemente il problema del surriscaldamento dell'L293D
quando lo stepper e' fermo a me non serve che mantenga la posizione semplicemente perche' le meccanica la mantiene da sola, quindi abilito l' L293D mettendo high i pin 1 e 9 (enable), poi terminato il movimento lo disabilito, quindi rimane freddo

#include <Stepper.h>
//
//http://www.gioblu.com/tutorials/azionamenti/75-motori-stepper
//http://arduino.cc/en/Tutorial/MotorKnob
//
//definisce il numero di step dello stepper
#define STEPS 200

Stepper stepper(STEPS, 10, 9);
void setup()
{
// setta la velocità a max 100 RPMs
stepper.setSpeed(100);
pinMode(13, OUTPUT);
}
void loop()
{

digitalWrite(13, HIGH);   // set l293d on
delay(50);
stepper.step(200);        //lo stepper farà 200 step in un senso
digitalWrite(13, LOW);    // set l293d off
delay(50); 
delay(1000);

digitalWrite(13, HIGH);   // set l293d on
delay(50);
stepper.step(-200);       //lo stepper farà 200 step nell'altro senso
digitalWrite(13, LOW);    // set l293d off
delay(50);
delay(20000);
}

Sí potrebbero essere anche i diodi interni, ma non ho esperienza per poterlo determinare. Se vuoi fare una verifica monta 8 diodi Schottky esterni.
Anche spegnere il L293 risolve il problema
Ciao Uwe