Controlar dos motores por puerto serial

#1
Hola a todos, vengo con una dudota que espero puedan solucionar.

Tengo como tarea controlar dos motores utilizando el puerto serial, de manera que giren en dos direcciones. Analizando un poco el problema, me di cuenta que no es tan sencillo como imaginaba, ya que el puerto serial solo tiene una linea de salida (o dos a lo mucho), entonces no me imagino como poder hacer esta tarea, mediante el puerto paralelo me lo imagino facil, pues hay 8 salidas que pudiera manipular, pero en el serial..:confused::confused: no entiendo como sería, y si lo pongo en este foro es porque quisiera armar un circuito que realice todo esto sin utilizar microchips.

Espero que puedan ayudarme,
 
#2
Hola.
Desafortunadamente no puedes lograr tu comerido solo con el puerto serial y sin ayuda de circuiteria externa. lo mas recomendable es que uses un microcontrolador u el respectivo max 232 como interface entre PC y "micro", de otro tu tarea estaria encaminado fracaso...
Un saludo.
 
#3
a traves de un registro de dezplazamiento puedes pasar de serie a paralelo, claro necesitar llevar los voltajes del puerto a valores ttl, hay un circuito que hace esta conversion, aparte esta el max-232 como dice Saint. dejame ver si te consigo el adaptador de voltajes del puerto serie para empezar.saludosss

ok edito...

encontre este


y traduje de la pagina origiral...

En la imagen de TX y RX están TTL el transmisor y el receptor, mientras que T:LOL:, R:LOL: y Gnd son el transmisor RS232 receptor, y las señales de tierra.

Hay otras soluciones para la adaptación y los niveles TTL RS232 como el CI MAX232 o MAX233, pero este adaptador es fácil de construir y utilizar bajo costo y fácil de conseguir las piezas, tal vez las piezas que tiene alrededor de su mesa de trabajo.

evalualo y si estas interesado te ayudo a mi me gustaria armarlo y probrarlo ya que ahorita me encuentro con un proyecto que tiene que ver con el puerto serie y me combendria hacer este...saludosss
 
Última edición:
#4
Orale, gracias por las ayudas... estuve investigando, y efectivamente, no hay de otra, tengo que utilizar un micro para pasar de serie a paralelo, leyendo por ahi me tope con un micro pero que necesitaba ser programado y cuanta cosa, hasta ahorita me a interesado mas el max.232, parece sencillo, y al parecer no se tiene que programar verdad?
Y reyvilla el circuito que me haz mostrado para que serviria? haz dicho que es para pasar a paralelo, pero no le veo las 8 salidas...y no le entiendo mucho...explicate, puedes?
 
#5
no, el circuito es un adaptador de voltajes que maneja el puerto serial, es similar al max-232 el cual por cierto no se programa, entonces siguiendo con el circuito que coloque, lo que hace es adaptar las señales que envias por el puerto serial ya que el mismo manejas voltajes muy altos +13 y -13 por ejemplo, entonces ese circuito lo que se hace es llevarlo a 5volt. para transformar la salida de serial a paralelo con un registro de desplazamiento por ejemplo 74ls198, podemos lograr controlar 8 dispositivos distintos con el...saludos
 
#8
mmmm... nop, la verdad es que no comprendo mucho (y pensaran que soy muy tonto, pero esque mi carrera es ingenieria en sistemas, no es justificarme, pero de verdad que no estoy muy enfocado a creacion de circuitos) a ver, paso a paso (y a bajarse un poco a mi nivel porfa) utilizando el max-232, entonces podre enviar datos por el puerto serial y en las salidas del micro utilizarlo como paralelo???o necesito algo mas aparte del micro max 232??
 
#9
no el max232 mas que un decodificador yo lo veo como un adaptador de voltajes, fijate es esta imagen el conexionado no hay ningun pin libre lo unico que hace es pasar las señales que salen del puerto seria a valores logicos ttl.



y sigue siendo serial a la salidad RX RECIVE, TX ENVIA, RS232 = +13 y -13 y otros... TTL 5VOLT.
 
#10
. . . y pensaran que soy muy tonto, pero esque mi carrera es ingenieria en sistemas . . .
Nadie piensa que usted sea tonto (usted lo hubiera especificado en el primer mensaje), la idea es sencilla: usted envia un codigo, el registro de desplazamiento lo convierte en paralelo y un decodificador hace lo que esta programado.

Hasta luego, ustedes quieren complicarse la vida.

:cool:
 
Última edición:
#11
ya veo, sigue teniendo 1 salida, cuando yo necesito 4, y existe algun micro que haga lo q yo quiero? es decir, que yo mande un determinado byte por el serial, y q lo represente como el paralelo con 8 salidas diferentes?

usted envia un codigo, el registro de desplazamiento lo convierte en paralelo y un decodificador hace lo que esta programado.
:cool:
ya veo... entonces... como seria el circuito decodificador?
 
Última edición:
#12
puede ser un microcontrolador si es para motores dc puede ser uno de los pequeños 12fxx o 12cxx, hay tambien otra forma que es haciendo todo por software, codificando un registro de desplazamiento se ahorraria un microcontrolador, pero el programa seria un poco mas largo...todo depende de que se le haga mas facil.
 
#13
umm..ok ok, el problema esque lo necesito manipular en lenguaje ensamblador, que no es nada facil, asi que hacerlo por software me resultaria complicado, no tienes por ahi la serie del micro indicado para esto?
 
#14
si manejas lenguaje basic se te va hacer facil con picbasic pro, y el micro puede ser 16f628A que es uno de los basicos y tiene para comunicacion serial.
 
#15
Definitivamente no me complicaria la vida. Usaria un AVR o un pic de la familia 18F programado en C con su max232. Por la salida de un puerto controlaria dos puentes H, o usaria un puerto por cada puente H si no se quieren complicar codificando a un solo puerto.

Es sumamente sencillo, solamente hechenle la mano para configurar el serial. A mi ahorita la verdad me da pega ponerme a esculcar en mis codigos.
 
#16
si va ser lo mejor ya que de la otra forma es mas complicado me di cuenta que a juro es por protocolo, yo realice uno con un pic12f675 y picbasic pro, con serin y serout y todo lo de mas es facil.
 
#17
Aquí encuentras algo que te puede servir (sabia que se podía hacer, así que lo busque por la web hasta que encontré algo igual a lo que pensaba). Ahora dices que necesita que tu motores giren en ambos sentidos??? Con esto solo podrías controlar 1 motor, a menos que los motores estén SIEMPRE girando y solo necesites cambiar su dirección, en otras palabras, no podrás detener los motores, solo podrás cambiar la dirección de giro (sabiendo que son 2 motores lo que hay que hacer girar en ambas direcciones y con solo 2 lineas de datos).

Si te interesa o te sirve esto ultimo, me dices y te lo explico de mejor forma.

Saludos!!
 
#18
umm...no´me sirve, tengo que apagar los motores en algun momento :S
pero bueno, creo q al final de cuentas me inclinare por comprar el max232 y el pic que me convierta de serial a paralelo..
pero a ver si entendi:
Saco los datos del puerto serial al chip, el cual conectare al max 232 para ajustar voltajes y todo eso, y de ahi lo saco al pic f1684 lo que me convertira la salida que venia como un bytea 8 salidas de un bit, estoy en lo correcto?
 
Arriba