Bus para interconectar dispositivos.

Hola a todos, mi nombre es Juan y escribo puesto que tengo una dudilla que no se como resolverla ni por donde empezar.

Imaginemos que tengo 40 bombillas que necesito evaluar si están encendidas, para ello creo 40 dispositivos numerados por ejemplo del 1 al 40, todos ellos conectados en un bus de 2 hilos y que envíen el número de dispositivo, que llegada a una placa central o conectado a un PC, determine a través de dicho número, que dispositivo está conectado o no.

Independientemente del proyecto, mi pregunta es si existe algún tipo de bus de 2 hilos, en los que pueda conectar ciento de placas numeradas (con un switch) y enviar el estado de dichas placas por el bus.

Por cierto, y que la implementación de dichas placas sea de bajo coste, sin hablar de la principal.

Muchas gracias a todos por orientarme y saludos.
 
Te sirve cualquier protocolo serial... RS232, RS485, USB etc... dependiendo de las caracteristicas (distancias, potencias, topologia, numero de maestros y esclavos) se escoge el adecuado..

La que describes me suena mas a RS485
 
¿Pero el protocolo RS485 usa más de dos cables no?

Por cierto, usb lo descarto porque dicha implementación saldría muy cara, además de tener que reprograma cada dispositivo con su número. En el ejemplo señalé 40 bombillas, pero era un ejemplo. Se trata en realidad de 2000 bombillas en grupos de 20, siendo un total de 100 cabeceras.

Me explico, imagínate que tienes que instalarle a cada bombilla una placa diseñada pero que además de ser de bajo coste, por eso lo de que no interesa programar cada placa, tiene que ser una línea compuesta por un cable de 2 hilos.

El coneccionado sería 20 bombillas de la 1 a la 20, que luego iría a una cabecera y así con todas la cabeceras, para finalmente también unir estas. La unión de las cabeceras no importa que sea mediante usb o con más hilos, pero el resto no porque se encarecería enormemente.

No se si me explico, pero cualquier duda, escríbeme.

Por cierto, muchas gracias por la rapidéz de la respuesta y saludos.
 
Bueno... si la tierra en total serian 3 cables... y con esos puedes conectar hasta 32 dispositivos, pero uno de ellos puede ser un repetidor permitiendote conectar otros 32 dispositivos, lo que te da una red muy grande

Ahora, al ser una red serial cada dispositivo debe tener un numero individual, o de lo contrario no sabras con que dispositivo te vas a querer conectar, ese numero de identificacion lo puedes asignar automaticamente o individualmente, pero eso ya es de tu lado o del lado de los adaptadores que consigas...

Si tu problema es iluminacion revisa este tema:

https://www.forosdeelectronica.com/...n-efectos-roboticas-algo-dmx-mucho-diy-16886/
 
HOLA, yo tambien necesito usar una red rs485 para comunicarme bidirecionalmente con 5 DAQ, y para ello usare un convertidor rs485<>USB ya que mi laptop no posee puerto serial, mi problema seria saber que tipo de señal usb me manda el convertidor para saber que libreria usaria en el uC y en la HMI que planeo realizar con LABVIEW. tengo pensado usar este convertidor que esta en el data del ft232.
 

Adjuntos

  • rs485-usb.jpg
    rs485-usb.jpg
    38.5 KB · Visitas: 13
Y porque no usas las normas electricas de RS232 "+-15V" y luego a cada lampara le colocas un micro chiquito un pic12c508 y le programas un codigo para que respondan como lo hacen los dispositivos en el bus I2C, donde cada dispositivo tiene su direccion, y pueden haber 127 dispositivos, si necesitas mas pues tendrias que rediseñar el "protocolo", y no creo que salga muy caro, bueno dependiendo de cuanto presupuesto nos van a dar cosa que seria bueno que publicaras

Ha y serian dos cables "SCL y SDA" tierra pues imagino que cada lampara lleva tierra y corriente asi que tierra no cuenta, y solo son dos hilos jejejeje
 
Última edición:
Lo normal sería usar algo que ya sea bus; rs485 o CAN o algo semejante, el 232 es punto a punto aunque hay inventos para "busearlo" .
No Lo se seguro, pero pienso que el conversor aparecerá en el pc como un puerto COM.
 
creo que lo que tu buscas es I2C, son 2 hilos, hasta 400Khz de velocidad, y admite 128 dispositivos (7 bits de direcciones) o bien 10bits (1024 dispositivos).

El unico problema es que para usar este protocolo necesitas un dispositivo que convierta tus datos (en este caso estados on/off de bombillas) al bus I2C. Si estas bombillas estan juntas puedes poner un pic con 40 pines o mas y todos los pines que puedas como entrada, y este pic le envie los datos a traves del bus I2C a otro pic
 
cierto, si tienes mucha distancia el i2c y spi no te valen, aun asi te queda el RS485 que son 2 hilos tambien, y puedes conectar muchos dispositivos, desde 32 (el mas basico) hasta 255 creo que eran (se que 128 si).

Aun asi nos deberias explicar mas como es tu proyecto porque si quieres poner 20 lamparas distanciadas una de otra le tendrias que poner algun tipo de control a cada lampara para que estas envien su estado.
 
Para cada grupo de 20 lamparas creas un controlador, ejemplo un PIC (o mas, con mas PICs) y los comunicas localmente entre ellos (controlador) via i2c, spi... Al PIC (o a uno de ellos) le proporcionas conectividad ethernet (ej ENC26J80 o un Digi Connect) y lo conectas a una red con un switch, wifi o como prefieras, luego el "principal" interroga a cada controlador por su estado via su IP mediante socket.
 
el problema esta en que no sabemos la distancia, si son 20 bombillas con distancia de 3m entre bombillas no se puede poner un controlador para 20 lamparas a no ser que quiera poblar todo de cables porque tendrian que salir 20 cables del controlador hacia cada bombilla.

Y mejor que liarse a crear una red ethernet con las complicaciones que tiene, es mucho mejor utilizar el rs485 el cual puede alcanzar +1km de cable sin problemas a una buena velocidad (250kbps). Ademas no deja de ser igual de sencillo que un rs232, incluso mas sencillo que este ya que el max485 es mas sencillo que el max232., sin contar que es mucho mas barato que una red ethernet.
 
Atrás
Arriba