# Control de motor DC con encoder



## papelito81 (Feb 24, 2006)

hola!!    estoy haciendo un proyecto con un motor DC que tiene dentro instalado un encoder optico les estaria agradecido si me pueden ayudar en lo siguiente, yo nesecito controlar la posicion de un carro que se mueve en linea recta sobre un riel y lo quiero hacer con este motor contando los pulsos que me entrega el encoder y posicionar de esa manera el carro, quisiera que me den alguna sugerencia sobre como tengo que manejar el motor ya sea en la parte de potencia y en lo que respecta al encoder.

Muchas gracias!! ah y el foro esta buenisimo!!!


----------



## Marcelo (Feb 26, 2006)

Hola papelito81,

Lo más eficaz es usar un microcontrolador y un puente H. El puente H tiene dos terminales que según esten polarizados hacen que el motor gire para un lado o para el otro. También suponemos que no vas a tener control de velocidad, lo cual complicaría un poco el diseño, sin embargo con el mismo diseño circuital puedes hacer el control de velocidad por software aplicando señales PWM a los terminales del puente H.
Cuando el motor gira hace que también gire el encoder. El encoder manda un pulso cada vez que el haz entre el par fototransmisor/fotoreceptor se interrumpe y se vuelve a permitir su paso.  Ese pulso lo utilizarías como una entrada de interrupción del microcontrolador, la cual por software capturarias y usarías para contar esos pulsos y actuar en consecuencia.

Esta sería la idea general.

Saludos,
Marcelo.


----------



## lalosoft (Feb 26, 2006)

¿El encoder interno del motor es del tipo que informaciónrma velocidad y sentido de giro?

Haslo saber para poder darte ayuda mas precisa.


----------



## papelito81 (Feb 26, 2006)

hola gracias por la ayuda me servira muchisimo la verdad que aun no se muy bien las caracteristicas del encoder interno por que todavia no he encontrado la hoja de datos del motor o algun documento referente estuve buscandola pero aun no la encuentro, hay alguna forma de saber que tipo de encoder lleva?


----------



## M.a.R.c.K (Abr 4, 2010)

Hola papelito81 solo quiero saber donde conseguiste tus  motores o de que maquina los puedo sacar y mas omenos que pprecio tienen gracias...


----------



## Fogonazo (Abr 4, 2010)

M.a.R.c.K dijo:


> Hola papelito81 solo quiero saber donde conseguiste tus  motores o de que maquina los puedo sacar y mas omenos que pprecio tienen gracias...



Si estás en Argentina esta podría ser una opción:
witronica.com/tabla_surplus

Algunos modelos de fotocopiadoras emplean un motor DC con encoder para el movimiento del sistema de óptica, habrá que buscar un "Chatarrero" que tenga algo.

Otra opción, agregarle a un motor común de DC un disco ranurado para "Leer" los pulsos que genera al moverse y con esto mas un switch de "Fin de Recorrido" tienes la posición de tu motor.


----------



## cleidy (Abr 20, 2010)

hola, soy nueva en foro de electronica, soy estudiante de electronica y tengo un proyecto por hacer, control PI o PD de velocidad de un motor Dc.

Tengomi primera entrega que es la caracterizacion de la planta ampliada Driver+motor +sensor . 
Para el driver estaba pensanso en un PWM y no se como trabajarla parte del sensor del encoder talvez una rueda ranurada con emisor y receptor y como convertir esos datos a salidas digitales?
Alguien me puede indicar si voy por buen camino y como hacer la parte del encoder?
gracias....


----------



## Fogonazo (Abr 20, 2010)

cleidy dijo:


> ... parte del sensor del encoder talvez una rueda ranurada con emisor y receptor y como convertir esos datos a salidas digitales?


Los datos provenientes del encoder, ya son digitales.



> Alguien me puede indicar si voy por buen camino y como hacer la parte del encoder?...


La idea del encoder con un disco ranurado está bien.
La idea del PWM, también.

Solo te falta "acoplar" la secuencia de pulsos del encoder con el PWM para controlar la velocidad, para esto debes resolver de que forma controlar el PWM en función de la frecuencia que te entrega el encoder.

*!! Bienvenida a la Comunidad ¡¡*


----------



## Darwyn Jose (May 2, 2010)

hola que tal como estan. sou estudiante del quinto semestre de electronica industrial y me mandaron un diseño con un encoder para encender duatro motores. pero no tengo ni idea de que es un encoder. tambien quisiera saber si se puede adquirir en el mercado y a que precio


----------



## Fogonazo (May 2, 2010)

Darwyn Jose dijo:


> hola que tal como estan. sou estudiante del quinto semestre de electronica industrial y me mandaron un diseño con un encoder para encender duatro motores. pero no tengo ni idea de que es un encoder. tambien quisiera saber si se puede adquirir en el mercado y a que precio



http://en.wikipedia.org/wiki/Rotary_encoder
http://it.wikipedia.org/wiki/Encoder_(elettronica)

witronica.com/tabla_proveedores


----------



## gonzaloz17 (Sep 8, 2015)

hola , necesito ayuda de los mas entendidos en el tema de programacion de pic
les adjunto la simulacion y programa en ccs , tambien adjunto una imagen de mi duda , como podria reemplazar todos los botones y switch que estan encerrados en el circulo rojo por un teclado matricial 4x3 o 4x4 , osea que realize lo mismo pero desde un teclado , y ademas no se porque las RPS ( revoluciones por segundo) siempre estan en cero y no cambian ...



aca el rar con los archivos , ojala puedan ayudarme ¡¡¡


----------



## gonzaloz17 (Sep 25, 2015)

como que deberia modificar en el programa y simulacion para que haga lo mismo pero con un pic 18f4550 ?? ayuda por favor


----------



## D@rkbytes (Sep 25, 2015)

¿Y para qué usar un PIC más grande si con el que estás usando ya te queda sobrado?

Para sustituir los pulsadores por un teclado matricial, puedes usar la librería KBD.C
Y si no tienes lectura de las R.P.M, debe ser porque la rutina no funciona.

Entra en modo de depuración para que verifiques el funcionamiento de cada rutina.


----------



## gonzaloz17 (Sep 25, 2015)

quiero cambiarlo al 18f4550 porque debo comunicar el pic con pc via usb
usando el codigo que ya tengo como base


----------



## D@rkbytes (Sep 25, 2015)

OK. Eso ya es otra historia.
Vete despacio, primero haz que tu programa funcione y después realiza la comunicación por USB.


----------

