Ruido aislado de tierra y UART de Modbus (RS485)

Construí una placa de interfaz RS485 (Modbus) aislada para un sensor. Uso ADM2682 como transceptor y VAQE6W-Q24-S12-D como convertidor DC-DC aislado. Todo está gestionado por un STM32L412 . Hay 2 terminales de tornillo interesantes:

  • "Potencia" (CN6): con "+" y "-" (tierra de alimentación)
  • "Modbus" (CN4): Con "Señales" (x4) y "común" (tierra de señales)

Aquí están las partes esquemáticas relevantes:

RS485 aislado y alimentación

De hecho, uso un suministro de laboratorio a 12 V y un convertidor USB a RS485 en modo de dos cables, con un par trenzado corto de ~20 cm (con 3 cables: D0, D1 y GND) a 19200 baudios. La tierra de USB a RS485 está conectada a mi COMÚN en CN6. El USB a RS485 está conectado a mi PC a través de un HUB con su propia fuente de alimentación. Todos están en la misma regleta. Todo el puente de par, polarización y resistencia de terminación están en su lugar.

Mi placa puede transmitir datos a la PC sin problemas, pero cuando la PC envía datos, STM32L412 genera una interrupción de "Error de ruido". (El byte recibido todavía está bien)

Cuando conecto "tierra de señal" (CMN) y "tierra de alimentación" (VPWR-), todo está bien, no se producen más errores de ruido...

Leí esta respuesta , pero no entiendo por qué necesito romper mi aislamiento entre el transceptor y la tierra de alimentación, creo que me falta algo importante, ¿pueden ayudarme a entender? (¿Hay un caso en el que no necesito conectar la tierra de la señal y la tierra de la fuente de alimentación?)

gracias de antemano

EDICIÓN 1: LA FUENTE DE ALIMENTACIÓN

No hay información sobre el "aislamiento" en la documentación de la fuente de alimentación del laboratorio . Acabo de encontrar un esquema básico aquí:

Esquema básico de la fuente de alimentación

Abrí la caja y encontré un transformador, el cable de alimentación va directamente al primario del transformador (a través del fusible y el interruptor principal) por lo que la fuente de alimentación parece estar aislada.

Fuente de alimentación interna

EDICIÓN 2: SOLUCIONADO

Muchísimas GRACIAS a Frank, aplico su procedimiento de "regreso a lo básico".

Consejo general: use un osciloscopio, coloque la abrazadera de tierra de su sonda en algún potencial de tierra que considere confiable e intente medir/probar otros "potenciales de tierra aislados" en su topología de bus RS485 (mientras que la tierra del bus no está conectada todavía). De esta manera usted debe encontrar a su culpable. Comience con el 'alcance establecido para la base de tiempo más rápida, luego reduzca gradualmente la velocidad si encuentra algo interesante.

Toda la fuente de alimentación parece muy limpia y plana en su propia referencia, pero encuentro una señal de 55kHz 400mVPP entre la tierra de la fuente de alimentación del laboratorio y la tierra de USB-RS485. De hecho encuentro esta señal entre tierra y PE. No sé cómo no vi esto antes.

Después de desconectar todo mi equipo de la regleta de enchufes encuentro al culpable. Desde hace 2 semanas compro un generador de señal TENMA 72-14111 . Hay un interruptor de encendido "táctil" frontal (de hecho, es un interruptor de espera) y un interruptor de encendido real en la parte posterior (lo acabo de descubrir). Cuando el interruptor de encendido está encendido, el generador de señal produce mucho ruido (especialmente los grandes 55kHz y los armónicos) en toda mi línea de alimentación y PE.

Cuando el generador de señal está realmente apagado o desenchufado, mi interfaz modbus aislada funciona muy bien, sin derivación a tierra. (Incluso puedo quitar la tierra y la resistencia de polarización del bus solo para probar).

Ahora no tengo mucha confianza en mi generador de señales, pero me siento aliviado. Muchas, muchas, muchas gracias a @Justme y @frr por tomarse su tiempo para ayudarme y apoyarme psicológicamente.

Animo a todos a leer la respuesta de Frank aquí sobre el suelo y el acoplamiento, realmente útil e instructivo.

¿Seguro que es ruido? La interrupción Err O los errores de Ruido, Overrun y Frame. Cualquiera de ellos establecerá la bandera.
¿La tierra RS485 está conectada a la tierra de la PC?
@pgvoorhees, este es el único bit en 1 después de que se activa la interrupción.
@Justme, creo que el convertidor USB-TO-RS485 está conectado a un HUB con su propia fuente de alimentación. Toda la PC, el HUB, el convertidor de USB a RS485 y la fuente de alimentación están todos en la misma regleta de alimentación. La conexión a tierra del convertidor USB-TO-RS485 parece realizarse mediante un cable USB.
@ rom1nux En realidad, lo que quise decir es que si ha conectado tierra desde su dispositivo CN4 a tierra del convertidor RS485, además de los pines de datos RS485.
Lo siento, no entendí la pregunta, SÍ, el COMÚN en CN6 (CMN) está conectado a la tierra USB-TO-RS485. En otras palabras, tengo 3 cables entre mi placa y el USB-TO-RS485: D0, D1 y GND(CMN)
@ rom1nux Una cosa más, ¿la salida de la fuente de alimentación del laboratorio está aislada de la tierra o conectada a tierra? Veo que tiene dos enchufes de banana pero no sé lo suficiente francés.
@Justme Primero, muchas gracias por tomarse el tiempo para ayudarme, no encontré ninguna información sobre el aislamiento en la hoja de datos de la fuente de alimentación, así que abrí el gabinete. Veo un transformador, la fuente de alimentación parece estar aislada, ¿verdad? (Edito la pregunta para la foto)
@ rom1nux Pero parece que hay un cable de tierra verde-amarillo que sale del cable de alimentación. Podrías haber verificado el enchufe de alimentación si tiene un pin de tierra, y si lo hay, usa un multímetro para verificar si está conectado a la terminal banana negra. No es necesario abrir la fuente de alimentación.
@justme No hay conexión entre la banana negra y el pin de tierra en el cable de alimentación cuando la alimentación está APAGADA y el valor fluctuante> 1Mohms cuando la alimentación está ENCENDIDA.
Oh, ya resolvió el problema :-) Así que mi última edición sobre "ejecutar una computadora portátil con batería" estuvo fuera de lugar, pero podría ayudar a otros que están en una situación similar. Felicidades por tu búsqueda de errores. Sospecho que si su generador de señal tiene una fuente de alimentación aislada de tierra y se atreve a mirar debajo del capó, encontrará un lugar en la fuente de alimentación donde podría agregar algunos condensadores para silenciar un poco el ruido, a costa de perjudicar el aislamiento de tierra. Por cierto, los trafos de red clásicos con núcleo de hierro no están plagados de este "problema de capacidad parasitaria" (prácticamente). Sí, son pesados ​​e ineficientes :-(

Respuestas (1)

Intente colocar un capacitor pequeño (unidades a cientos de nF) entre la tierra primaria y secundaria debajo de su convertidor CC/CC aislado.

EDITAR: está bien, no entendí bien su esquema ... el ADM2682 aparentemente suministra su propia energía para la interfaz de línea. Pero el consejo sobre la puesta a tierra es genérico. Podría ser un DC/DC en su dongle estándar 485, o en el ADM2682, o algo así. Consejo general: use un osciloscopio, coloque la abrazadera de tierra de su sonda en algún potencial de tierra que considere confiable e intente medir/probar otros "potenciales de tierra aislados" en su topología de bus RS485 (mientras que la tierra del bus no está conectada todavía). De esta manera usted debe encontrar a su culpable. Comience con el 'alcance establecido para la base de tiempo más rápida, luego reduzca gradualmente la velocidad si encuentra algo interesante.

EDITAR: otra idea de qué medir: conecte la abrazadera de tierra de la sonda de su osciloscopio a la GND de alimentación de su STM32. Mantenga su bus RS485 conectado a tierra entre su "interfaz de línea aislada" ADM2682 y el dongle USB/485 en la computadora (volveré a eso más adelante). Entonces, tiene su sonda de alcance conectada al STM32; ahora toque la punta de la sonda de alcance con la línea de tierra aislada ADM2862 ("CMN" en su esquema). ¿Hay algo interesante entre esos dos terrenos?

Otra sugerencia: en la configuración donde su STM32 informa "ruido", conecte su 'tierra de alcance a la GND de alimentación de STM32 y observe lo que sucede en el cable TTL RX del ADM2682 al STM32. Si tiene un osciloscopio de doble trazo, puede ver el CMN aislado y el RX al mismo tiempo (= los dos últimos párrafos combinados).

Otra pregunta que aún no he notado... ese dongle USB/485, supongo que sus conexiones a tierra no están aisladas (intente medir entre la conexión a tierra del USB a 485 CMN con un ohmímetro). ¿A qué tipo de computadora está conectado? ¿Es una PC de escritorio con una fuente de alimentación ATX? ¿O es un cuaderno por casualidad? Si se trata de una computadora portátil, ¿su adaptador tiene la conexión a tierra secundaria (también conocida como CC-) conectada a la conexión a tierra protectora en el enchufe de la pared? De lo contrario, es probable que el adaptador pierda un poco de EMI. Corriente baja (< 1 mA) pero voltaje potencialmente alto. Si se trata de una computadora portátil, la prueba más simple para este problema es ejecutar la batería por un momento (= tierra flotante) y asegurarse de que no tiene ningún dispositivo periférico en el sistema que tenga su propia fuente de alimentación conmutada. adaptador (unidad de disco externa o algo similar).

Hay un tema que debe comprender, y es por qué las fuentes de alimentación conmutadas aisladas filtran EMI a la salida. Puede ser un voltaje suave de 50 Hz para fuentes de alimentación de CA/CC, y también puede ser RF puro en convertidores de CC/CC (mismo principio = acoplamiento capacitivo parásito entre los devanados del transformador de RF). He pronunciado una respuesta relevante, con esquemas , en un tema anterior aquí en stackexchange.

Muchas gracias, Frank, por tomarte el tiempo de echar un vistazo. Voy a investigar sobre la forma en que lo describes. Actualizaré mi publicación y volveré.
Volver al procedimiento básico con osciloscopio y verificación de tierra es el camino, muchas gracias por empujarme a investigar más, edito mi publicación para explicar