El dispositivo RS-485 defectuoso tiene un efecto irregular en los dispositivos vecinos en la configuración del bus

5

Estoy tratando de entender el misterio de cómo un transceptor RS-485 defectuoso, en un bus de red con varios dispositivos, parece tener una influencia muy irregular en su propia transmisión y en la de sus vecinos.

CONFIGURACIÓN
La configuración consiste en una red de bus RS-485 con aproximadamente 20 dispositivos en la línea. Sparkfun RS-485 Breakout boards ( Sparkfun BOB-10124 ) se utilizan como transceptores. Las resistencias de terminación de 220 ohmios se han eliminado de las placas para permitir la configuración de múltiples dispositivos. Los cables de par trenzado entre los dispositivos tienen longitudes entre 14 y 30 metros. Para medidas de seguridad y cancelación de ruido repetidores RS-485 ( RPT-485_422-2 ) se han instalado entre 6 dispositivos cada uno.

PROBLEMA
Debidoaproblemasdesconocidos(posiblemente:aumentodepotenciaocortocircuitouotraformademanejoinadecuado),devezencuando,untransceptorsedaña.Elanálisisdetransmisiónmuestraquepareceexistirunproblemaconvariosdispositivosenlared.Noesobvioquétransceptorcausaelproblema.Unavezqueseencuentraeltransceptordefectuoso(ensumayoríaatravésdepruebasdeprueba+error)ysereemplaza,lavelocidaddetransmisióndetodoslosdemásdispositivosvuelvealanormalidad.

Cuandoeltransceptordefectuososepruebasolo(unoaunoenlugardeenunbus),parecefuncionar.Lasmedicionesderesistenciasimplesentrelospinesenlaplacadeltransceptornomuestranningunadiferenciaconrespectoaunaplacanuevasinusar.Nohaysignosdedañosvisibleseneltablero.

Laimagendeabajomuestraelanálisisdeéxitodetransmisióndeloquesucedecuandoseinsertaelmismotransceptordefectuosoendiferentesposicionesenelbusdered.Aveces,eléxitodetransmisióndelostransceptoresesdel0%(enlaposición#11o#12),avecesesdel100%(en#13o#15).Avecessusdispositivosvecinosestánen0%o100%oenvaloresintermedios.Tengaencuentaqueestosresultadossonconstantesynofluctúan.

Espero que alguien pueda ver un patrón en estos resultados, o tenga una idea de qué parte del transceptor podría haberse dañado. Tal vez alguien haya experimentado problemas similares con las redes RS-485 y pueda orientarme en algunas direcciones. Con esta publicación aquí, no estoy tratando de averiguar qué pudo haber causado el daño al transceptor, sino de entender cómo ese daño afecta a toda la red. Con el objetivo de poder diagnosticarlo más rápido en el futuro.

Aquí hay una imagen del transceptor utilizado en la configuración: Tablero de ruptura RS-485 de Sparkfun ( Sparkfun BOB-10124 ). Tenga en cuenta que la resistencia de terminación de 220 ohmios se ha eliminado para la configuración.

    
pregunta evsc

2 respuestas

2

Creo que para diagnosticar esto correctamente, deberá escuchar a escondidas algo como un convertidor de FTDI rs458 , Junto con un osciloscopio. Con el alcance se puede ver cuando un transceptor agarra y libera la línea. Es posible que tenga que sondear manualmente cada nodo y revisar cada respuesta. Si puede localizar el módulo que mantiene la línea "abajo", vea si su pin de habilitación correspondiente se mantiene alto. Si la línea no se mantiene presionada, podría significar que dos nodos intentan responder a la vez (problema de firmware de atmega).

Asegúrese de haber finalizado el sistema con dos resistencias de 120 ohmios según las instrucciones del repetidor.

    
respondido por el Erik Friesen
0

Muchos ingenieros ignoran la conexión a tierra cuando crean una red RS485 porque RS485 es conocido por la "comunicación de 2 hilos".

¿Conecta la señal a tierra así como las dos señales de datos?

Cuando no conecte la señal a tierra, el transceptor RS485 se dañará debido a las posibles diferencias de tierra.

Y es posible que necesites dos resistencias de polarización (algunas personas llaman a estas resistencias de extracción y extracción)

Hay dos señales en el RS485 - A y B (algunas personas las llaman TRX + y TRX-). Y el transceptor RS485 emite la señal al controlador UART de acuerdo con la diferencia entre A y B como sigue:

A-B > 150mV: salidas altas A-B < -150mV: salidas bajas Si el A-B está entre -150mV y + 150mV, el estado de salida es impredecible. Por lo tanto, las resistencias de polarización son necesarias en el circuito RS485.

Las resistencias de polarización en el circuito RS485 mantienen el nivel alto o bajo de las líneas de señal A y B en el estado inactivo RS485. (Ver abajo).

A: debe mantenerse en estado alto B: debe permanecer bajo en estado inactivo

Esto hace que la línea de señal sea alta cuando no hay datos. Cuando no hay resistencias de polarización, puede haber datos de basura cuando no hay datos de transmisión.

    
respondido por el Blue Cloud

Lea otras preguntas en las etiquetas