despues de leer las normas del foro hago un mejor post
arme una impresora 3d casera, con materiales reciclados (con resultados muy satisfactorios, la menos estructuralmente), motores reciclados de impresoras tiradas ala basura que funcionan bien
la parte de electronica y software esta todo online, use un arduino mega, con merlin configurado para uan ramps 1.4 y uso pronterface o cura para la imrpesion
compre mis a4988 y la primera vez que lo conecte usando una bateria de 9v fucnionaba perfectamente con un scketch de txapu cnc
#define VELOCIDAD 1600
int steps = 8;
int direccion = 9;
int reset = 10;
//int pasos = 3500;
int pasos = 3500;
// the setup routine runs once when you press reset:
void setup() {
// initialize the digital pin as an output.
pinMode(steps, OUTPUT);
pinMode(direccion, OUTPUT);
pinMode(reset, OUTPUT);
}
// the loop routine runs over and over again forever:
void loop() {
digitalWrite(reset, LOW); //Mientras reset este en LOW el motor permanecerá apagado y no sufrirá. El chip apagará todos los puertos y no leerá comandos.
delay(100);
digitalWrite(reset, HIGH); //Cuando reset se encuentre en HIGH el motor arrancará y leerá los comandos enviados.
digitalWrite(direccion, HIGH);
for (int i = 0; i<pasos; i++) //Equivale al numero de vueltas (200 es 360º grados) o micropasos
{
digitalWrite(steps, HIGH); // This LOW to HIGH change is what creates the
digitalWrite(steps, LOW); // al A4988 de avanzar una vez por cada pulso de energia.
delayMicroseconds(VELOCIDAD); // Regula la velocidad, cuanto mas bajo mas velocidad.
}
digitalWrite(reset, LOW); //Mientras reset este en LOW el motor permanecerá apagado y no sufrirá. El chip apagará todos los puertos y no leerá comandos.
delay(100);
digitalWrite(reset, HIGH); //Cuando reset se encuentre en HIGH el motor arrancará y leerá los comandos enviados.
digitalWrite(direccion, LOW);
for (int i = 0; i<pasos; i++) //Equivale al numero de vueltas (200 es 360º grados) o micropasos
{
digitalWrite(steps, LOW); // LOW to HIGH hace que el motor avance ya que da la orden
digitalWrite(steps, HIGH); // al A4988 de avanzar una vez por cada pulso de energia.
delayMicroseconds(VELOCIDAD); // Regula la velocidad, cuanto mas bajo mas velocidad.
}
}
al otro dia intento usar una fuente de 25v de una impresora reciclada tambien... se me quemo un a4988 (salio humito y todo)... lo cual me llevo a pensar que uno de 2 miente, o el datasheet del a4988 que dice soportar hasta 35v o mi multimetro que decia la fuente era de 25v DC
pruebo otro a4988 (compre lo justo 4) y lo pruebo con bateria de 9v y el firmware de marlin... el motor no gira y solamente se queda duro temblando o silbando, noto que mi cableado sobre mi protoboar esta "flojo" estan hechos de cables atados a alfileres de acero y cubiertos ocn cinta aislante y que mi arduino me ve como un cable a tierra, xq patea cualquier terminal que toco incluso sus pines por donde manda los pulsos patean
disculpen el link no conozco otro servidos para alojar imagenes
*** en fin mis motores no giran en esta 2da prueba
... ahora por fin consigo un transformador de 12 y 5v ,lo rectifico...
uso el arduino solo para mandar los pulsos y sincronizo las tierras... los motores ni silban
verifico la corriente en los pines de los chips y si... les llega 5v a los pines ENABLE, VCC y señal de 5v a SEPT Y DIR segun el scketch lo manda, y 12v a VMOT , puente SLEEP Y RESET ambos arrojan un pequeño voltaje
le puse alfileres para eliminar los cables flojos... pero lo mismo detecto voltaje en todos los terminales ya mencionados ....EXCEPTO LOS A1A2B1B2
alli no arroja nada, es como si ENABLE no estuviera recibiendo nada, pero si lo hace... la unica hipotesis que me queda es que las tierras no esteen funcionando bien
xfavor estoy desesperado :_(