Max232 dando valores incorrectos en los pines

Fondo:

Estoy tratando de conectar un Compact Logix PLC -> MAX232CPE Maxium chip -> arduino. Actualmente mi PLC comunica modbus RS232 con una solicitud de datos del arduino. Puedo ver esto tocando la conexión en serie y leyendo la salida de un programa C personalizado. El arduino tiene una biblioteca RS232 que debe manejar la solicitud y enviar la respuesta al PLC. El chip MAX232CPE está diseñado para convertir la señal RS232 del logix compacto al formato de señal serial TTL para el arduino cambiando los voltajes. El chip MAX232 recibe una fuente de 5V del Arduino Uno con capacitores electrolíticos de aluminio de 1uF (me aseguré de que la polaridad sea correcta). Además, tengo otro chip MAX232 configurado con condensadores cerámicos de .1uF. Ambos condensadores están clasificados para 50V. Mi configuración sigue la imagen a continuación:

Pinout y diagrama del MAX232

Enlace de la hoja de datos de Max232: http://datasheets.maximintegrated.com/en/ds/MAX220-MAX249.pdf

Problema:

Los niveles de voltaje para la configuración del capacitor de 1uF son los siguientes

 1uF capacitor voltages                       .1uF capacitor voltages
 Pin 1: 5.56V             Pin 16: 5.00V       Pin 1: 6.48V             Pin 16: 5.00V
 Pin 2: 6.16V             Pin 15: 0.00V       Pin 2: 7.67V             Pin 15: 0.00V
 Pin 3: 4.36V                                 Pin 3: 3.72V 
 Pin 4: 4.78V                                 Pin 4: 4.43V            
 Pin 5: 2.42V                                 Pin 5: -1.12V
 Pin 6: .937V                                 Pin 6: -3.65V            

 Expected Values for pins 2 and pins 6
 pin 2: 10.00V
 pin 6: -10.00V

Mientras que el PLC envía modbus RS232, la señal parece perderse en el chip MAX232. Intenté ir directamente al Arduino, pero una vez que se dirige a través de la Terminal Rx en el Arduino, los valores que ingresan cambian por completo. Cambié todos mis condensadores, cambié las polaridades e intenté cambiar el chip MAX232 con los otros 2 que tengo, así que esto no es un problema de una parte mala. Además, cuando conecto el PLC y Arduino a la configuración de .1uF, el Pin 2 a veces cambia a 4.06V y el Pin 6 cambia a 3.64V. Esto sucede al enviar y recibir datos. La configuración para el .1uF se muestra a continuacióningrese la descripción de la imagen aquí

El cable rojo es una fuente de 5V producida por Arduino Uno. - en el tablero es mi terreno común.

Preguntas:

¿Cómo hago para acercar los pines 2 y 6 a los niveles de voltaje correctos?

¿Hay alguna manera más fácil que usar el chip MAX232 que sea económico y efectivo para este proyecto?

Incluso con la configuración de .1uF como la señal más cercana, se cae por completo en el chip MAX232

EDITAR/SOLUCIÓN: en lugar de usar un LED, conecté el pin 15 directamente a tierra, pero esto creó otro problema de sobrecalentamiento del chip. Este sobrecalentamiento hace que el pin 2 disminuya mientras que el pin 6 se vuelve positivo en voltaje. Para aliviar este problema, agregué una resistencia de 200k a los pines 10 y 8 como resistencias desplegables. Esto hizo que el voltaje en los pines 2 y 6 fuera el valor esperado y evitó que el chip se freíra.

¿ Está conectado exactamente como en la hoja de datos?
Un error común es no darse cuenta de que el capacitor en el pin 6 debe estar "al revés" :)
Ya verifiqué las polaridades para el Pin 6 y lo revisé varias veces para asegurarme de que sigo la hoja de datos. Con los Capacitores Cerámicos no tienen polaridad.
¿Es un LED instalado entre el pin 15 y tierra?
Sí, lo usé para probar y asegurarme de que la energía llegue al chip.

Respuestas (1)

El problema principal es que el duplicador de voltaje V+ parece que no funciona de manera eficiente en su configuración. He usado MAX232 durante muchos años (de hecho, trabajo en Maxim) y definitivamente debería ver alrededor de 9,5 V en V+ en condiciones inactivas y sin carga. El inversor de voltaje V- se alimenta del duplicador de voltaje V+, por lo tanto, haga que V+ funcione primero.

  • ¿Hay algo más conectado a V+ además del capacitor? Estoy mirando la página 4 "Voltaje de salida frente a corriente de carga". Se necesitaría una carga de alrededor de 25 mA para bajar el V+ a 6 voltios.

  • ¿Hizo estas mediciones mientras se transmiten los datos o cuando estaba inactivo?

  • ¿Dónde compró su MAX232CPE+? ¿De Maxim, o de una segunda fuente como TI, de un distribuidor o de ebay/baidu?

  • Usted mencionó que cambió el chip y las tapas, ¿este circuito está construido sobre un ensamblaje de placa de circuito impreso o sobre un prototipo de placa de prueba sin soldadura? ¿Puede proporcionar fotos?

  • ¿Puedes intentar usar valores de condensador cerámico más grandes? La cerámica de 4.7uF sería ideal, valdría la pena probar la cerámica de 1uF.

Los pines de la tapa voladora (C1+, C1-, C2+, C2-) son nodos de conmutación, por lo que un DVM no podrá mostrarle lo que realmente está sucediendo allí. Un osciloscopio sería más útil para ver la forma de onda de conmutación en esos puntos. Pero la lectura de DVM en V+ muestra que el duplicador de voltaje no funciona de manera eficiente en ambas configuraciones.

Usted menciona bajo algunas condiciones que midió V+ = 4.06V y V- = -3.46V; Yo estaría preocupado por eso. Creo que está fuera de las especificaciones de operación, puede que no haya suficiente margen de ruido para una comunicación confiable en esas condiciones.

Las bombas de carga tienden a tener una fuente de impedancia relativamente alta, por lo que les resulta difícil proporcionar una gran cantidad de corriente de salida. El funcionamiento a altas velocidades de datos (altas velocidades en baudios) requiere cambiar la salida con más frecuencia, y eso provoca picos de demanda de corriente de carga. Y al correr un cable largo, hay una capacitancia parásita distribuida a lo largo entre los cables; más capacitancia de carga requiere más corriente para cargarla. Por lo tanto, el V+ estará en su mejor momento cuando no haya nada conectado a la salida de transmisión y no se envíen datos. Me doy cuenta de que eso no es realista para el funcionamiento normal, pero lo sugiero como diagnóstico. Si mide V+ hasta alrededor de 9V sin conexión de cable y transmisores inactivos, entonces puede haber un problema con las condiciones de operación. Pero si V+ nunca llega tan alto, incluso en reposo/sin carga,

Por cierto, si estuviera creando un prototipo de esto, definitivamente usaría capacitores cerámicos: MAX232 se lanzó por primera vez cuando los capacitores cerámicos de 1uF eran raros y costosos, por lo que la hoja de datos original asumía electrolíticos de aluminio de 4.7uF.

Solo miré la hoja de datos anterior de 1989 (cuando los libros de datos se imprimían en papel, je) y los condensadores recomendados para MAX232 eran 4.7uF, pero notaron que reducir C1 y C2 a 1uF "aumentará ligeramente la impedancia de la carga pump", y la disminución de C3 y C4 aumenta la ondulación en V+ y V-. Es difícil decir con solo una medición de DVM si hay una ondulación significativa o no. Una vez más, un osciloscopio sería más útil.

Sus datos sugieren que la cerámica funciona mejor, incluso para el valor de capacitancia nominal más bajo. Y también funcionará mejor si usa condensadores cerámicos de tipo X7R o X5R. Si todo lo que puede obtener es algo más suelto como Y5U, eso aún puede funcionar si va a un valor nominal más alto como 1uF o 10uF de cerámica.

En realidad, pensándolo bien, solo usaría el MAX233 (versión de condensador interno) en lugar del MAX232. Pero puede tener sus razones, como querer disponibilidad de piezas de segunda fuente.

+ Nada más está conectado a la terminal V+ excepto el capacitor de .1uF. + Compré el chip Maxim de un distribuidor local. + Estoy usando una placa de prueba. + Tenía algunos capacitores de tantalio de 4.7uF clasificados para 25V y producen resultados similares a los capacitores electrolíticos de 1uF. El tipo de capacitor no debería hacer una diferencia
Desafortunadamente, no tengo un osciloscopio a mano a menos que el Fluke 789 Procesesmeter tenga uno incorporado. Eso es lo que estoy usando para medir el voltaje y la corriente de CC/CA.
Además, verifiqué la mayoría de mis valores mientras estaba inactivo. Sin embargo, después de agregar la serie de entrada y salida, fue cuando ocurrió la extraña caída de voltaje en el pin 2. La velocidad en baudios utilizada tanto en PLC como en Arduino es 9600
Ahora que veo la foto de la placa de prueba sin soldadura, estoy confundido: ¿está fluyendo el retorno a tierra del pin 15 del MAX232 a través de ese LED rojo? El pin 15 necesita conectarse directamente al retorno a tierra.
Cometí un error tonto, tienes razón. Cambié el LED por un cable directamente a tierra y ahora obtengo un voltaje de CC en el pin 2 de alrededor de 9,2 V.
El único problema ahora es que mi chip se está calentando mucho y el voltaje cae en el pin 2. ¿Qué podría estar causando esto?