Recibiendo información del RS232 y leyéndolo con la placa Arduino

0

Permítanme comenzar diciendo que no tengo mucha experiencia en proyectos relacionados con hardware.

Necesito obtener información de una máquina que emite sus datos desde un cable RS232. enlace

Mi objetivo es luego tomar estos datos y enviarlos a un servidor. Por lo tanto, planeo usar una placa Arduino Uno, conectada con la placa Arduino Ethernet, y escribo un programa de bucle que enviará los datos cada pocos segundos.

¿Qué dispositivo debo usar para recopilar la información de la máquina? ¿Puedo simplemente usar un convertidor de RS232 a USB y enchufarlo directamente en la placa UNO, o hay placas RS232 para esto?

Y, finalmente, ¿hay mejores alternativas a mi problema actual?

Con mucho gusto aclararé cualquier cosa que no sea lo suficientemente clara, gracias.

    
pregunta juliensaad

3 respuestas

3

Un escudo RS232 ya hecho para la UNO como el El enlace sería la forma más rápida de comenzar a recopilar datos (fue el primer éxito de búsqueda; no tengo experiencia con el producto o proveedor en particular).

Si aprender y hacer son más importantes, podrías inventar algo de RS232 < - > Los desplazadores de nivel lógicos de 5 V escriben o encuentran un software UART para leer el flujo de bits.

    
respondido por el JRobert
1

Haber sido entrenado como técnico en electrónica industrial, especializado en sistemas informáticos de mediados de los 80 (personalmente he actualizado más de 200 PC de IBM a IBM XT con 20 MB (sí, eso es Mega-Bytes)) y he trabajado con puerto serie Módems (200 baudios y más!). Sugiero una vieja computadora portátil con Windows y el software Hyperterminal. Probaría un cable directo y una caja con leds. Los leds de la unidad terminal parpadearán a medida que pase. Una vez que seleccione el número de puerto serial y la velocidad de transmisión aplicable, arranque / parada y bits de datos (9600, n, 8,1, por ejemplo). Luego puede "leer" los datos de salida y guardarlos en un archivo de datos.

    
respondido por el Ricky
1

Esto es bastante sencillo. He hecho esto cuando tuve que recibir datos de uart de 8051 a TI LM3S3748. Sin embargo para esta TTL los niveles eran suficientes. Entre, sé que llego un poco tarde para responder esta pregunta, sin embargo, enseñé a agregarle un poco más de detalles.

Ahora vengo a tu pregunta:

1º - Dado que Tx Machine está dando salida de datos en formato RS232, necesitará un convertidor Rs232 en su extremo Arduino para recibir estos datos correctamente. Necesitamos este convertidor RS232 en el extremo del receptor (Arduino), para que pueda convertir los niveles RS232 a niveles TTL, que pueden ser interpretados por los microcontroladores. Las conexiones de hardware para esto son simples:

|Machine| Tx pin----(Data-Rs232)--->Rx pin |MAX232/RS232 Board| Tx pin----(Data-TTL)---> UART Rx pin |Arduino|

Lo anterior muestra la secuencia de conexión. Mientras recibe los datos de MAX232, asegúrese de que la base de Arduino y MAX232 sea una referencia común en el extremo receptor.

2º - Para el conjunto anterior, otra cosa importante a tener en cuenta es la velocidad en baudios. Asegúrese de que su dispositivo receptor, es decir, la velocidad en baudios de Arduino coincida con la de la máquina transmisora. Por ejemplo Si la velocidad en baudios de su máquina Tx es de 9600 bps, entonces su Arduino debería estar programado para recibir los datos con una velocidad en baudios de 9600 bps.

Tercero: para preguntas sobre si puede conectarse directamente a su Arduino USB, sí, siempre y cuando tenga un chip USB incorporado, como un FTDI.

Espero que esto ayude. ¡Buenos días!

~ VD

    
respondido por el PsychedGuy

Lea otras preguntas en las etiquetas