Autor Tema: Puerto Rs232  (Leído 10109 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado randux

  • PIC10
  • *
  • Mensajes: 11
Puerto Rs232
« en: 13 de Agosto de 2004, 11:05:00 »
Buenas Amigos..

Estoy tratando de acivar un rele de 12 voltion a travez del puerto serial, no se si el puerto serial me envia 5, 9 o 12 Voltios, y esa es precisamente mi duda.

Lo segundo es si alguin me puede indicar como activar un torniquete a travez del puerto serial.

estoy bien enrredado con esto si me puender dar luces acerca de esto se los gragradecería mucho

estoy programando en Vb 6 y estoy utilizando el control MSComm

Desconectado Modulay

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 2651
RE: Puerto Rs232
« Respuesta #1 en: 13 de Agosto de 2004, 16:07:00 »
El puerto serie entrega niveles rs232:
5 a 15V para el "0" lógico.
-5 a -15V para el "1" lógico.
El puerto serie no es capaz de entregar mucha corriente,por lo que
para activar un relé,yo utilizaría un transistor NPN cuya base excitaría con la salida del puerto serie a través de una resistencia;colocaría el relé entre positivo y colector con otra resistencia en serie,y el emisor a masa.
Saludos

Desconectado randux

  • PIC10
  • *
  • Mensajes: 11
RE: Puerto Rs232
« Respuesta #2 en: 16 de Agosto de 2004, 10:34:00 »
Gracias Modulay por atender mi pregunta

no conozco de transitores, pero me dices que

el puerto serie entrega niveles rs232:
5 a 15V para el "0" lógico.
-5 a -15V para el "1" lógico.

si esto es así,  puedo activar un relé de 6V directamente?

de ser afirmativa tu respuesta ¿como enviaria el 0 logico al puerto con programación?, si es en Visual Basic pues mejor o con cualquier otro lenguaje

de verdad muchas gracias.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Puerto Rs232
« Respuesta #3 en: 17 de Agosto de 2004, 04:34:00 »
Para mover el relé no sólo necesitas más de 6V, también necesitas una determinada intensidad de corriente (los mA del relé y por poca que sea, seguro que será mayor de la que puede entregarte el puerto serie.

Lo mejor va a ser lo que te comenta Modulay del transistor y alimentar el relé externamente.

Por otra parte, para manejar el puerto serie desde Visual Basic existe un objeto que facilita bastante las cosas. Se llama MSCOMM. Busca documentación sobre el mismo porque es fácil manejarlo.

Desconectado randux

  • PIC10
  • *
  • Mensajes: 11
RE: Puerto Rs232
« Respuesta #4 en: 17 de Agosto de 2004, 07:31:00 »
Amigos gracias por su atencion

Nocturno66 entiendo lo que me dices el MSComm ya lo he utilizado y realmente es muy sencillo, ahora bien amigo que transistor puedo usar porque no se nada de esto, el relé que tengo dice 12V y 10A, y como comento en al principiuo del tema lo requiero para activar un torniquete o molinete desde el puerto serial.

gracias nuevamente, aprecio su ayuda

Randux


Desconectado dannyman

  • PIC10
  • *
  • Mensajes: 17
RE: Puerto Rs232
« Respuesta #5 en: 22 de Octubre de 2004, 16:57:00 »
hola amigos soy nuevo en el foro...

Estuve revisando tu problema y lo que tienes que hecer es a tu salida conectar un transistor al cual tienes que hacerlo trabajar como amplificador. Si buscas en la web como aplicaciones de los transistores encontraras muchas aplicaciones de lo que te digo. Con esto podras controlar y activar el rele.

Oigan no se si me pueden ayudar mi problema es que tengo un circuito electronico el cual me manda una secuencia de 8 bits (5v para el 1log y 0v para el 0log) y quiero esta secuencia capturar en mi programa de visual basic 6 con el mscomm pero no lo logro. he estudiado el func de este control pero nunca me preocupe por los niveles de voltaje del puerto... nocturno66 tengo que cambiar los niveles de voltaje con los que trab en mi circuito o como lo hago para que me reconozca???
Gracias de antemano

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Puerto Rs232
« Respuesta #6 en: 22 de Octubre de 2004, 23:04:00 »
Un momento, un momento, ¿dices que quieres capturar una secuencia de +5V y 0V con el MSCOMM?

Esos niveles de tensión son adecuados para ingresarlos por el puerto paralelo, pero no para el puerto serie, y el MSCOMM es un control de VB exclusivo para el manejo del puerto serie.

Las tensiones con las que trabaja el puerto serie rondan los +12V para el 1 y -12V para el 0. Habitualmente, para adaptar ambos rangos de tensiones se suele usar un MAX232. Este chip y cuatro condesadores son los únicos componentes que necesitas añadir a tu circuito.

Una vez que hayas convertido la señal verás cómo empiezas a poder leer cosas desde el MSCOMM.

Desconectado dannyman

  • PIC10
  • *
  • Mensajes: 17
RE: Puerto Rs232
« Respuesta #7 en: 25 de Octubre de 2004, 15:29:00 »
Oye acabas de sacarme de un hueco pero profundo.. porque me hubiera pasado la vida probando pero nunca lo hubiera sacado..

Ok lo voy a probar y te aviso.. Pero de antemano muchas gracias por preocuparte..

Oye una duda para que son los condensadores..

Saludos desde Ecuador y una vez mas gracias....Rebotado

Desconectado dannyman

  • PIC10
  • *
  • Mensajes: 17
RE: Puerto Rs232
« Respuesta #8 en: 02 de Noviembre de 2004, 21:41:00 »
Hola una vez mas.. ya he avanzado con lo del diseño ya me consegui el max 232 ya lo adapte a mi circuito y ya me manda los niveles del voltaje requeridos 8voltios para 1 y -8 voltios para 0..

Pero no puedo leer todavia la secuencia de bits ya que siempre mi programa lee una secuencia 00000000. me su pongo que esta mal cierto....???

Bueno en resumen mi programa usa el mscomm de vb6.. la propiedad inputmode a 1 para recibir en binario.. me imagino que si estoy recibiendo por que se activa el oncomm,y

variable=mscomm.input
es una variabletipo byte

en variable caracteres raros que me imagino que son ascii, los paso a decimal con
for x=1 to 8 do
variabe2=mid(variable,x,1)
variable2=asc(variable2)
next i
y siemprre me devuelve 0 0 0 0 0 en variable 2.

Por favor quisiera que me ayudaran diciendome que puede estar mal o si tengo que usar otro tipo de variables o el inputmode a 0... ya que el tiempo del proyecto de mi fin de carrera se acaba....Llorica les juro que les voy a agradecer infinitamente

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Puerto Rs232
« Respuesta #9 en: 09 de Noviembre de 2004, 03:12:00 »
Te aconsejo que descompongas tu gran problema en problemas más pequeños.

Como no estás seguro si el fallo lo tienes en el circuito, en el cable o en el software, lo que yo haría es probar primero con Hyperterminal de Windows.

En él, que de sobra sabes que funciona, verás qué caracteres está enviando el PIC. Si no recibe nada, está claro que el problema lo tienes en el circuito y/o cable, por lo que al menos, sabrás que tienes que resolverlo antes que seguir con el software.

Si ya en hyperterminal estás recibiendo cosas, nos metemos con el programa, ¿ok?

Desconectado dannyman

  • PIC10
  • *
  • Mensajes: 17
RE: Puerto Rs232
« Respuesta #10 en: 09 de Noviembre de 2004, 07:36:00 »
Hola nocturno66 como estas ya crei que te perdiste...

Sabes que ya puedo leer el caracter y de ahi el numero decimal que me manda mi circuito a mi programa.. Pero tengo un problem, lo que pasa es que sino corto la alimentacion de mi circuito en el momento en que envia el octavo bit no me visualiza en el text de mi prog.. Me han dicho que tengo que usar un pic(pero no conozco sino lo bien basico de pics es por esto que no me atrevi a usar en mi proy), pero ahora que veo que lo necesito, tengo que hacerlo...

Nocturno he visto que tu eres un capo(maestro) en lo de los pics, quisiera si tu pudieras que me ayudes con mi problem... Has de cuenta que tienes una secuencia de 8 bits que se estan transmitiendo constantemente cada un segundo por ejemplo: si quiero tx un codigo102 tendria al final de mi circuito la secuencia 01100110 la misma que estaria tx asi: 0(1seg)1(1seg)1(1seg)0(1seg)0(1seg)1(1seg)1(1seg)0(1seg)0(1seg)1(1seg)1(1seg)0(1seg)0(1seg)1(1seg)1(1seg)0(1seg), y asi sucesivamente...

Te juro que si me ayudas con esto te lo agradecere y no te molestare en mucho tiempo, todo lo que me puedas decir o si me puedes enviar al go que ya lo hayas hecho similar, o para cambiar mi circuito te lo agradezco por que como ya te he dicho solo conozco lo bien basico de pics,....

Mi circuito empieza con un teclado, y al final tengo la secuencia que te comente que quiero ingresar al serial, como mi proyecto es un diseño de control ya use el paralelo y me funciono todo perfecto pero como mi director es un loco quiere que lo haga tambien en el serial...
Saludos y gracias te voy a estar esperando chau

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Puerto Rs232
« Respuesta #11 en: 09 de Noviembre de 2004, 15:04:00 »
Hola Dannyman, te habla el capo. Jamás me han llamado eso pero debo decirte que estoy empezando con los pics, por lo que no has acertado; pero bueno, me ha hecho gracia.Sonrisa Gigante

Me alegro que hayas conseguido ya interpretar la información que tu circuito envía, pero me resulta extraño lo que comentas de que no detecta el fin hasta que apagas el circuito.

Y más extraño todavía que estés enviando bit a bit con un segundo de diferencia.
Cuando hablas de tu circuito, ¿estás hablando de un circuito con microcontrolador en el que hay cargado un programa?, si es así tendríamos que echarle un vistazo. Si no difícilmente te puedo ayudar, porque me dejas totalmente fuera de juego. Las comunicaciones serie que yo conozco están basadas en el envío de bytes, no de bits, y llevan una velocidad estándar expresada en baudios o bit por segundo, 1200 bps, 2400 bps, 4800 bps, ... Como verás, la diferencia hasta 1bps que tú utilizas es bestial.

Además, en las comunicaciones serie estándar, según tengo entendido, para que el receptor sepa que el emisor ha terminado de transmitir, se envía un byte (digo bien un Byte, o sea 8 bits) de fin de línea, que suele ser el código 13 decimal (0x0D).

Joder macho, no sé si te ha ayudado mi mensaje porque parece que tu problema y mis pistas se parecen como un huevo a una castaña. Ya me contarás. Payaso


Desconectado dannyman

  • PIC10
  • *
  • Mensajes: 17
RE: Puerto Rs232
« Respuesta #12 en: 09 de Noviembre de 2004, 22:44:00 »
Hola capo lo de capo lo mantengo por que he leido algunas discuciones y siempre estas ayudando a los necesitados como yo.. espero que en tu pais no sea un insulto asi que te digo que me mantengo por que eres un maestro...

Bueno pasando con lo feo.. sigo en mi infierno y preocupacion, te comento que en mi circuito no ocupo ningun microcontrolador solo un oscilador con el 555 y chips ttl es por esto que te comentaba que al final del circito tenia 5 y 0 voltios.. Con tu ayuda pude adaptar lo niveles de voltaje, y ya conoces el resto, He leido que mandazn bits por el serial, como lo hacen por que con lo que me dices de 2400 bps dificil hacerlo serialmente, te comento que mi error fue lanzarme a hacer sin el estudio a fondo del serial y su foema de comunicacion, pero mi proyecto consistia en anejo del paralelo lo que si consegui pero mi director me aumento lo del serial y estoy con el tiempo que me apremia, es por esto que te molesto no se si tu tengas algun diagrama de como conectarle al pic con el max232, mas claro quisiera saber si tengo que usar un pic (veo que todos los del foro lo usan) y como debo conectarlo, si me sigues ayudando te juro que mando un mensaje declarandote como el CAPO de este y todos los foros...

Gracias nocturno y saludos

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Puerto Rs232
« Respuesta #13 en: 09 de Noviembre de 2004, 23:19:00 »
Jejeje, muchas gracias. Ayudo en lo que puedo, pero te garantizo que aquí sí que hay grandes Padrinos; yo humildemente hago lo que puedo.

Acerca de si hace falta o no un PIC: supongo que con puertas lógicas y mucha paciencia, conseguirás implementar a nivel hardware la lógica de una comunicación RS-232, pero no se me ocurre cómo, ni llego a imaginar la magnitud del circuito que te saldría. Con un PIC, o cualquier otro tipo de microcontrolador, el problema se reduce a programarlo adecuadamente.

Bueno, al tajo. El esquema de conexión de un PIC, un MAX232 y un PC es este:



puedes ampliar info en esta página:
http://www.iearobotics.com/proyectos/cuadernos/ct1/ct1.html

Con respecto al programa, te recomiendo acudas a un lenguaje de alto nivel con el que te encuentres cómodo, Basic o C. Finalmente tendrás que aprender o tener conocimientos de ASM, pero como andas con prisa, será mejor que te vayas a uno de estos. En los ejemplos que traen los compiladores, tanto el de Basic como el de C, encontrarás programas ya hechos que realizan una comunicación serie. Realmente es muy fácil, tres o cuatro líneas de programa y ya está.

La verdad es que es un cambio radical respecto a lo que tienes planteado, ¿cómo lo ves?

Desconectado dannyman

  • PIC10
  • *
  • Mensajes: 17
RE: Puerto Rs232
« Respuesta #14 en: 10 de Noviembre de 2004, 12:34:00 »
Que tal nocturno como estas...

SAbes que confio en ti y si me dices que use un pic lo voy a usar por que ya me imagino mi circuito si asi esta grande como va a quedar al final..

Te comento que hace unos tres semestres tome la materia de Electronica Aplicada en donde nos dieron el funcionamiento de los PICs pero como ya fue hace algun tiempo y ademas como fue algo sin profundizar te imaginaras que no estoy tan bien, pero vamos asi se te tiene que aprender cierto.... Payaso.. El pic que vimos en esta materia es el 16f84, podria usar este pic para la comunicacion seriaal que pretendo o cual otro me recomiendas..??????
Ademas construimos un cargador de pic, y tengo nociones basicas de programacion de este en lenguaje ensamblador.. lo de basic u otro lenguaje de alto nivel era para la prog del pic cierto?????

La duda que yo tengo es si puedo y si si como conectar la secuencia presionada (los bits) desde el teclado y si hay como en que pin del pic tengo que hacerlo???? O por el contrario no me va a servir de nada la secuencia que ya la tengo multiplexada cada un segundo, y empiezo desde el principio es decir desde la presion de las teclas en el teclado,, y si si esto vuelvo a preguntar en que pin o pines del pic.....

Te podria pedir un favor... Quisiera si puedes darme una pequeña explicacion de como se comunica el pic con el puerto serie... Usa interrupciones????, manda los bits uno a uno, o los manda en grupos, o manda bit a bit con bits de separacion....

quisiera que me safes esas dudas antes de empezar a conectar al pic por que ya no quiero que me pase lo mismo que antes ... conectar sin saber que voy a hacer..

Bueno CAPO cuidate mucho...Saludos y muchos agradecimientos de antemano  Rebotado