Autor Tema: Interfaz RS-232  (Leído 5130 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: Interfaz RS-232
« Respuesta #15 en: 31 de Marzo de 2009, 16:55:38 »
Creo que deberias inclinarte por el BUS CAN.
Tiene opciones mucho mas solidas en cuanto a comunicacion que cualquier bus de campo, y ademas hay modulos como el MCP25050 con 8 I/O incorporadas que permiten hacer un manejo rapido de salidas a buen precio.
En cuanto a robustez seguramente supera a RS485, donde hay que escribir un protocolo o usar algun otro, mientras CAN lo tiene implementado en el hardware...

Si quieres saber mas, date una vuelta en Proyectos >> Mis experiencias con el BUS CAN y podras ver si te sirve o no.
Como dato, los aros olimpicos de los juegos de Beijin y los manejos de fuegos de artificio (en el que los Chinos son maestros), fueron hechos con este tipo de buses de campo. :mrgreen:
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Interfaz RS-232
« Respuesta #16 en: 31 de Marzo de 2009, 23:55:52 »
Hola.

Pues si ya esta el del slave, el del master es tan solo enviar los comandos con un printf(); tal como te lo indique en el anterior post.

La trama a enviar podria ser: S11! en donde S indicaria que el mensaje es para algun Slave, 1 que es para el Slave1 (por si hay mas), 1 para indicar que debe encender el switch y ! para indicar el final de la trama.

Como te digo, si los slaves ya saben que hacer con los comandos que reciben, el Master solo debe enviarlos en funcion del pulsador que se persione.

Saludos.
El papel lo aguanta todo

Desconectado dawaherjesus

  • PIC12
  • **
  • Mensajes: 59
Re: Interfaz RS-232
« Respuesta #17 en: 02 de Abril de 2009, 00:08:58 »
lo del BUS CAN esta muy bueno, MGLSOFT me gusto esa placa de desarrollo podrías pasarme los planos si no es mucha molestia.

con respecto a mi proyecto de verdad prefiero hacerlo en rs 485 porque ya medio lo conozco, con lo de la programación a ver si es así:

Código: [Seleccionar]
if(input(pin_a1))//Suponiendo que el pulsador esta en RA1
{
delay_ms(50);//antirrebotes
if(input(pin_a1))
{
printf(USART_activa_tx());//Aqui colocas el comando que tu has definido para que los SLAVES lo entiendan
}
}

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Interfaz RS-232
« Respuesta #18 en: 02 de Abril de 2009, 00:15:42 »
Hola.

No, no es asi como te decia. Seria mas o menos asi:

Código: C#
  1. if(input(pin_a1))
  2. {
  3.  delay_ms(50);
  4.  if(input(pin_a1))
  5.  {
  6.   printf("S11!");//Envio el comando
  7.  }
  8. }

El modulo esclavo va a recibir esa trama: S11! y la procesará adecuadamente asi:
S: Reciben los modulos Slaves
1: Recibe el modulo Salve1 -si hay mas, los otros ya no podran procesar el comando siguiente-.
1: Enciende el switch -esto solo lo hace el modulo Slave 1.
!: Final de la trama.

Saludos
El papel lo aguanta todo

Desconectado dawaherjesus

  • PIC12
  • **
  • Mensajes: 59
Re: Interfaz RS-232
« Respuesta #19 en: 02 de Abril de 2009, 01:08:54 »
disculpa pero nada mas con el printf() comienza la transmisión de datos por el rs485 o tengo que colocar algo mas en el programa
no entiendo muy bien :(

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Interfaz RS-232
« Respuesta #20 en: 02 de Abril de 2009, 01:18:15 »
Hola.

No. Logicamente los Slaves deben tener habilitada la recepcion y el Master la transmision. Pero supongo que en tu caso la comunicacion es en modo simplex.
El papel lo aguanta todo

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: Interfaz RS-232
« Respuesta #21 en: 02 de Abril de 2009, 16:50:59 »
lo del BUS CAN esta muy bueno, MGLSOFT me gusto esa placa de desarrollo podrías pasarme los planos si no es mucha molestia.

con respecto a mi proyecto de verdad prefiero hacerlo en rs 485 porque ya medio lo conozco, con lo de la programación a ver si es así:

Código: [Seleccionar]
if(input(pin_a1))//Suponiendo que el pulsador esta en RA1
{
delay_ms(50);//antirrebotes
if(input(pin_a1))
{
printf(USART_activa_tx());//Aqui colocas el comando que tu has definido para que los SLAVES lo entiendan
}
}


Esta todo publicado en el hilo.
Igual puedes encontrar el archivo en :
http://rs258.rapidshare.com/files/75629129/Placa_CAN_ETH.pdf

Suerte y saludos!! :mrgreen:
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado dawaherjesus

  • PIC12
  • **
  • Mensajes: 59
Re: Interfaz RS-232
« Respuesta #22 en: 03 de Abril de 2009, 01:43:41 »
de verdad estoy medio tapado con la programación del rs 485 no entiendo como hacerlo :(

MGLSOFT esta medio complicado de armar pero voy a hacerla pero primero quiero terminar con este proyecto rl tuyo lo hiciste en eagle o en que programa

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: Interfaz RS-232
« Respuesta #23 en: 03 de Abril de 2009, 08:30:12 »
En realidad al nodo A podrias quitarle todo lo de ethernet y se simplifica mucho.
Esta hecho en Protel99
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado dawaherjesus

  • PIC12
  • **
  • Mensajes: 59
Re: Interfaz RS-232
« Respuesta #24 en: 31 de Mayo de 2009, 17:36:36 »
Como están amigo ya e logrado resolver muchas cosas en este tema pero aun tengo una duda como hago para que el pic Slave reciba varios comandos osea cuando reciba S11 active RA1 cuando reciba S12 active RA2 me entienden?


 

anything