RS-485 Idle Failsafe ¿Es realmente necesario?

3

Estoy planeando configurar una red de sensores en mi casa usando un cable Cat5 como fuente de alimentación y como línea de señal para los sensores, planeo usar transceptores RS-485 y Arduino para los sensores.

Después de leer muchas notas de aplicación y otras cosas de TI y Maxim, todos hablan de tener un dispositivo a prueba de fallos, por lo que un Bus inactivo pasa a un estado conocido.

Si uso una configuración maestro / esclavo, ¿por qué es necesario? Si el maestro supone que ningún esclavo transmitirá a menos que se le solicite, y los esclavos están constantemente escuchando su propia dirección. Parece que esto podría expandirse por un poco de redundancia, sin preocuparse por el estado de la línea cuando está encendida.

¿Hay algo que me falta?

    
pregunta HilarieAK

1 respuesta

3

Normalmente, el dispositivo maestro controla el bus y tiene su controlador de salida habilitado para que pueda conducir el bus a un estado "inactivo" cuando no hay tráfico. Cuando el maestro envía una solicitud a un esclavo, debe liberar inmediatamente el bus (apagando su controlador de salida) para que el esclavo pueda responder. Le tomará al esclavo un tiempo finito antes de que pueda habilitar su controlador de salida, que puede ser solo de microsegundos o milisegundos. Durante este tiempo, el bus podría flotar a niveles que parecen un 0 lógico, es decir, un bit de inicio, que puede confundir al maestro que está buscando un bit de inicio. Al tener un sesgo a prueba de fallas en el bus, se elimina esta posibilidad, ya que el bus siempre se lleva a voltajes que representan una condición de inactividad.

Nota: muchos de los transceptores RS485 más nuevos tienen la polarización a prueba de fallos incorporada.

    
respondido por el Steve G

Lea otras preguntas en las etiquetas