USB a RS485: ¿Puedo conectar A a Common Ground?

Compré un dongle USB a RS485 muy barato para conectarlo a una placa experimental propia.

Especificaciones (pueden diferir de la que usé pero externamente similares): - Cualquier tasa de baudios de 1200 bps a 115 kbps - Corriente: corriente de 100 mA a 5 V CC tomada del puerto USB de la PC - Modos: RS-485 Half Duplex (2 hilos) - Resistencia de terminal incorporada de 120R Ohm - El cable USB-RS485 es un cable convertidor UART serial de niveles USB a RS485 que incorpora el dispositivo IC de interfaz USB a UART serial FT232RQ de FTDI que maneja todos los protocolos y señalización USB. El cable proporciona una forma rápida y sencilla de conectar dispositivos con una interfaz RS485 a USB.

  • Cualquier tasa de baudios de 1200 bps a 115 kbps
  • Corriente: corriente de 100 mA a 5 V CC tomada del puerto USB de la PC
  • Modos: RS-485 Half Duplex (2 hilos)
  • Resistencia terminal incorporada de 120R Ohm
  • La longitud máxima del cable de par trenzado puede ser de 1,2 Km (Kilómetro) Máximo
  • Tipo de cable para un rango óptimo: dos núcleos, tipo blindado de par trenzado, D+ y D- (en realidad, A y B) deben trenzarse entre sí para obtener un rango óptimo

Este dongle solo tenía salidas A y B. Sin pin GND. Mi placa experimental tiene su entrada de datos conectada a la entrada de un disparador schmitt. Para leer los datos con el gatillo schmitt, conecté la salida B del dongle a la entrada del gatillo schmitt (línea B) y la salida A a la tierra de mi placa. Entre la salida USB a RS485 B y el disparador schmitt BUF1, hay una resistencia R1 de 470 ohmios, un diodo schottky D1 de tierra a la cal B, un zener z1 de 5 V entre tierra a la línea B y una segunda resistencia de 140 ohmios R2.ingrese la descripción de la imagen aquí

El bit "0" estaba a 3,2 V y el bit "1" a 0 V. Agregué el diodo schottky de tierra para borrar una caída de voltaje negativa muy corta en cada borde descendente entre un "0" y un "1". El diodo zener de 5V es solo una protección elemental (por si acaso). Las resistencias ayudan a reducir el ruido, aunque no totalmente, y aumentan la protección. Hay mucho ruido en la línea B, pero funcionó perfectamente. ...Hasta que después de algunas pruebas, el dongle comenzó a calentarse y dejó de responder. La cubierta de plástico incluso se termodeforma. Transferí datos muy cortos, a la velocidad de transmisión predeterminada de 19200. No se usó de forma intensiva.

Ahora estoy usando un dongle menos barato pero todavía bastante barato que tiene un GND y pines de +5V en la parte superior de A y B. También funciona muy bien. Pero me temo que será destruido de la misma manera si cometí un error.

No intenté conectar la conexión a tierra del USB a la conexión a tierra común porque la diferencia de voltaje no encajaría para detectar datos con el gatillo Schmitt. En la salida B, el bit "0" está a 5 V en relación con la conexión a tierra del USB y el bit "1" está a 2,5 V en relación con la conexión a tierra del USB. En la salida A, el bit "0" está a 0 V y el bit "1" a 2,5 V.

Mi pregunta es: El dongle baratísimo se fundió porque era baratísimo o porque me equivoqué en el circuito?

Hoja de datos para el dongle derretido. Me refiero a una hoja de datos, no a un enlace de eBay o Amazon.
Dos temas: 1ro. el dongle no proporciona GND además de que no está aislado. 2º: necesita un transceptor RS485, no un disparador Schmidt.
@Andy alias Nadie parece tener una hoja de datos en pdf. Solo pude encontrar estas informaciones adicionales (ver pregunta editada)
En mi opinión, la mejor inversión en el dongle USB RS485 es el anunciado como FT232 + ADM2587 en el mismo sitio web. No es tan barato como los dispositivos propuestos por usted, pero supongo que funciona y no puede quemar la PC o la placa MCU.
Marko Buršič Tal vez debería usar un USB a TTL (muchas opciones) pero teóricamente necesitaría RS485 para largas distancias. Estaba pensando en usar un transceptor RS485 en mi placa, y eventualmente lo haría si fuera necesario en algunas redes. Pero para una versión económica, no usar un transceptor RS485 hace una gran diferencia de costos. Funciona perfectamente (con ambos dongles). Es extraño por qué se quemó el primer dongle. No puedo ver lo que está mal con mi circuito.
La salida RS485 es diferencial. Ambas salidas A y B alternarán, básicamente deberían ser salidas complementarias de 3 V o 5 V con respecto a la GND del chasis de la PC, y para evitar salir del rango de modo común de los chips RS485, su otro dispositivo debe tener la misma referencia de tierra que la tierra de la PC . El uso de fuentes de alimentación flotantes o un tomacorriente sin conexión a tierra para PC no es correcto si no hay un cable de referencia a tierra separado. Conectar a tierra el cable A directamente tampoco es una buena idea.

Respuestas (1)

Fue un error. Al conectar el GND del dongle al GND común en mi placa, en lugar de la salida B, no solo desapareció por completo el fuerte ruido (lo que significa que había una tensión conflictiva entre A y B), sino que un indicador LED en el dongle dejó de brillar. Debido a que venden estas cosas sin ninguna instrucción seria, no sabía que este LED significa que hay algún problema con la red. Pense que era normal.

Estoy muy sorprendido de que mi experimento haya funcionado porque pensé que la diferencia entre 2.3V y 4V no sería interpretada correctamente por el gatillo Schmitt, pero así fue. La buena sorpresa fue ver una pequeña caída a cerca de 0V, durante unos 2us. Esta caída permite que el disparador schmitt baje y regrese a alto solo después de que su entrada cruce el umbral de nivel alto.

Sin embargo, el umbral de alto nivel del disparador Schmitt (tipo 2,4 V a 4,5 V Vcc) está muy cerca del voltaje de estado bajo de la salida A (2,3 V) e incluso podría estar por debajo si es más bajo que el típico o si Vcc es inferior a 5 V. Entonces no es muy confiable en mi opinión. nuevo esquemaEsta es la señal con el circuito corregido: La línea amarilla es una salida del dongle. La línea rosa es la señal después del gatillo schmitt.captura

La razón por la que marcó la diferencia es probablemente porque la conexión a tierra no estaba desconectada. El dongle estaba tratando de dejar corriente en la línea B para tratar de elevarla a un cierto voltaje, pero no importaba cuánta corriente dejara salir, la corriente seguía fluyendo de regreso a tierra a lo largo de algún camino y el voltaje se mantuvo en 0.