Montaje básico con un transistor para un motor pequeño de bajo consumo
Montaje utilizando en ULN2003.
Puente H con el L298 la señal de enable esta conectada a 5V para habilitar permanentemente el motor. Vdd que hace referencia al voltaje de alimentacion del motor también esta a 5V para este ejemplo, en caso de requerir otro voltaje para el motor Vdd se conectara el voltaje requerido.
Aqui el terminal de enable se controla con la señal PWM de pinguino, esto es para manipular la velocidad del motor.
Este montaje corresponde al puente H utilizando los integrados LM386.
Para todos los montajes que corresponden al puente H, el sentido de giro se controla con los terminales 0 y 1 de pinguino.
Código correspondiente a los montaje con el L298 y LM386
void setup(){ pinMode(0,OUTPUT); pinMode(1,OUTPUT); } void loop(){ //giro en un sentido digitalWrite(0,HIGH); digitalWrite(1,LOW); delay(2000); //gira en el otro sentido digitalWrite(0,LOW); digitalWrite(1,HIGH); delay(2000); //para el giro motor digitalWrite(0,LOW); digitalWrite(1,LOW); delay(2000); }
conecte los lm386 como muestra el cuadro y cree el codigo para q los pines 0 y 1 como salidas pero el motor solo gira en un sentido ,como debe ser el codigo para que el motor gire en ambas direcciones?
ResponderEliminargracias
Actualice la publicación agregando el código correspondiente.
EliminarLos lm386 son amplificadores utilizados en aplicaciones de audio, por eso son buenos manejando cargas inductivas como motores pequeños.
También puedes consultar otra publicación un poco mas detallada, este es el enlace
http://micropinguino.blogspot.com/2011/04/puente-h-con-el-lm386.html
me funciono muy bien,quisiera saber si puedo adaptarle un optoacoplador a la terjeta pinguino y esta a su vez un motor para q me lea las revoluciones a la cula gira ese motor?
ResponderEliminargracias
Si es posible, eso se hace con los temporizadores. En pinguino hay un ejemplo en la parte de la utilización de interrupciones.
EliminarVoy a revisar el código y de tener algo concreto lo publico.
q pena molestarte pero haz encontrado algo sobre el optoacoplador.
ResponderEliminarmuchas gracias
o si puedes decirme como hago el codigo para q la tarjeta lea las pulsaciones que le envie el optoacoplador
ResponderEliminargracias
De momento no he revisado, pero el codigo asociado a lo que tu necesitas es el que esta en los ejemplos pinguinoX3/examples/08.Interrupt/Counter.pde
Eliminar// Use timer 3 as a counter with external input
// Jean-Pierre Mandon 2010
// a 4,7k pull-up resistor is wired on pin 10
unsigned int counts=0;
void setup()
{
TMR3H=0; // reset the timer value
TMR3L=0;
T3CON=0b10000111; // configure timer 3 in 16 bits counter mode
// Pin 10 and 11 became input
// Signal need to be applied on Pin 10
// every rising edge increment the timer 3 register
Serial.begin(9600); // to debug
}
void loop()
{
counts=(TMR3H<<8)+TMR3L;
Serial.print(counts,DEC);
Serial.print("\n\r");
}
buena tarde.
ResponderEliminarcon la funcion milli puedo hacerlo?
Este comentario ha sido eliminado por el autor.
EliminarClaro que se pude hacer con millis, en la institución donde trabajo ya lo han hecho algunos estudiantes.
EliminarLo que se hace es contar el numero de transiciones de alto a bajo de encoder del motor y con la función millis medir el tiempo transcurrido desde que se empezó a contar las transiciones hasta que termina.
Aquí hay algo sobre la función millis
http://micropinguino.blogspot.com/2011/05/la-funcion-millis-en-pinguino.html
Hola.quiero alimentar el Pinguino 18f4550 por medio de una fuente de 5v 1,5a y le aplico +vcc al pin 32 y gnd al 31,y a la vez al l298 para un motor,pero el Pinguino no enciende(su led de power),ahora si lo alimento con USB y al puente H con esa fuente de 5v 1,5A, funciona.Podrían decirme si estoy en lo correcto y por qué no funciona?Gracias
ResponderEliminar