Comunicacion Serial RS 232 - Andreaguzmt/Comunicaciones GitHub Wiki

Comunicación serial Protocolo RS-232

Descripción

En el presente se ve evidenciado el desarollo de la guia uno del laboratorio correspondiente a, "Portocolo de comunicación", la cual planteaba como objetico el desarrollo un protocolo que permitiera la comunicación entre dos sistemas para el intercambio de datos de manera ordenada entre un computador y un sistema embebido, para poder realizar el intercambio de datos desde un microcontrolador a un computador se implementa el protocolo de comunicacion RS-232, por otra parte como sistema embebido se tarbajo el modulo ESP32 y para la visualizacionde datos en el computador se implemento una interfaz grafica realizada en Matlab. Para la parte de adquisicion de datos se implemento el uso de tres sensores analogicos, un sensor de posición "potenciometro", un sensor de distancia "sensor ultrasonico" y un sensor de temperatura "sensor LM35", los cuales envian las lecturas relizadas al embebido (ESP32) y estas son procesadas, y por ultimo en la ingterfaz grafica se evidencia tanto el valor de lectura promedio de una muestra de datos segun el sensor, en un valor fijo, como el comportamiento del sensor, es decir la variacion de lecturas en un determinado instante de tiempo mediante graficas.

Esquematico y Materiales

A continuacion se encuentra el esquematico fisico implementado para el la comunicaion serial entre el embebido y el computador, donde se evidencia las conexiones en el embebido tanto de los sensores utilizados (potenciometro, sensor LM35 y sensor YL69), como el modulo de conexion RS-232, este ultimo se evidencia como un conector tipo VGA, aunque en la implementación este fue reemplazado por un conector USB, tambien se encuentran las especificaciones de los sensores utilizados, y del conector, al ser la primera idea de implementación, esta tuvo ciertas modificaciones.

Para la implementacion final se tuvo en cuenta el siguiente diagrama de cinexion, con el cambio tanto del conector del potocolo, y los pines utilizados para la conexion en el embebido.

Pines de conexión:

  1. Conector RS-232: USB:
  2. Potenciometro: D36
  3. Sensor de temperatura: D39
  4. Sensor de humedad YL69: D34

Conceptos

Transmision de datos.

La transmision de datos es el procesamiento de informacion la cual se puede transferir entre dos o mas puntos[6], esta informacion puede ser representada mediante una señal de tension electrica, ondas radioelectricas, infrarojos, signos electromagneticos entre otros, este proceso es el envio y recepcion de datos entre varios puntos, siendo afectada este proceso por el bando de banda de transmision, los cables utilizados o el espectro electromagnético, para el proceso de transmision de datos se tienen tres formas de comunicacion, Símplex, Dúplex o semi-dúplex y Full dúplex.[6]

El proceso de transferiri datos se realiza paar obtener ventajas en la transmision de informacion como la reduccion en el tiempo y esfuerzo de transmisión, el aumento de la velocidad de entrega de los datos, la disminucion de gastos de operación y el aumento tanto de la calidad, como de la cantidad y capacidad de tranmision de los datos.

La transmision de datos sepuede realizar por medios alambricos como por medios guiados (cables o alambres).

  1. Medios Guiados
    1. Pares trenzados
    2. Fue formado por dos alambres de bronce, entrelazados formando un helicoided. Este modelo tiene una ventaja para reducir el ruido eléctrico, este cable se puede usar tanto para transferir de manera digital o analoga.[6]
    3. Cable coaxial
    4. Empleado en redes de area local, para la transmision de latga distancia del sistema telefonico.
    5. Fibra óptica
    6. "Cormado por tres secciones concentricas, a del centro posee una o más hebras de cristal o plástico, la del medio tiene propiedades diferentes a la del centro y la más exterior es de un material opaco o resistente."[6] Compuesto de una fuente lumisoca micromatica y un fotodiodo el cual recontruye la señal electrica.
  2. Medios alambricos
    1. Radioenlaces VHF y UHF
    2. Cubre una banda entre 55 a 550 MHz, es omnidirecciones y tienen un alacance de una centena de kilometro, y su velocidad puede alcansar hats 9600 bps.
    3. Microondas
    4. Permite trnaferencias terrestres y satelitales, su frecuencia esta entre 1 a 10 GHz. siendo direccional y logrando una velocidad de transmision del orden de 10 Mbps.

La transmision de los datos puede realizarse de manera paralela o en serie.

  1. Transmision paralela
  2. El envio de datos de realiza de byte en byte, sobre un minimo de 8 lineas paralelas a travez de una interfaz paralela.
  3. Transmision en serie
  4. El envio de datos bit en bit se realiza en una interfaz en serie. esta tambien se encuantra de modo asincronica y sincronica.
    1. Asincronica
    2. Es necesario una señal identificacion al inicio del caracter el cual se denomina bit de arranque, y una señal de paradaa la cual finaliza el caracter.
    3. Sincronica
    4. El transmisor y receptor utilian las misma frecuencia del reloj, ya que la transmision es realizada por bloques, se definen en dos grupos de bits, delimitadores uno para el inicio y otro para la finalizacion del bloque.

Protocolos de comunicación

La comunicacion serial se logra mediante el uso de dos principales protocolos, permitiendo la transferencia de datos asíncronicamente como sincronicamente.

  1. Transferencia Asincrónica: El emisor debe proporcionar una señal sincrónica antes de realizar la transferencia de caulquier dato. esto se realiza antes del envio de cada mensaje transmitido. Se caracteriza por:
    1. No es necesario una señal de reloj entre el remitente y el receptor.
    2. Transmision de datos a mayores distancias.
    3. Es mas confiable la transmision de datos.

    Algunos de los protocolos que usan la transmision de datos de manera asincronica son, RS-232,, RS-422 o RS-485

  2. Transferencia Sincronica: Tanto el emisor como el receptor utilizan la misma señal de reloj durante la transferncia de datos. Se caracteriza por:
    1. Esta admite una velocidad de transmision alta.
    2. Se debe tener la comunicacion de la señal de reloj entre emisor y receptor.
    3. Es requerido la configuracion maestro/esclavo para la implementacion de esta transmision de datos.

Algunos de los protocolos que usan la transmision de datos de manera sincronica son, I2C (circuito inter-integrado), SPI (interfaz periférica en serie), CAN, USB, o Microwire

Protocolo RS-232

El RS significa Estandar Recomendado, este protocolo de transferencia de datos es de manera asincronica, diseñado para controlar la comunicación serial. Utilizado para la organizacion de datos los cuales fluyen desde una terminar de datos[2] DTE (Data Terminal Equipment)[3], como un terminal o transmisor., y un receptor u otro equipo de comunicacion de datos DCE (Data Comunication Equipment)[3].La velocidad de comunicacion es afectada por la distancia existente entre los dispositivos involucrados, esta permite una longitud de cable de 50ft, y porporciona medios de implementacion para full-duplex con velocidad hasta de 1Mbps.

La comunicacion serial puede establecerse de dos modos, duplex o semiduplex.

  1. Duplex: permite que el en vio y recepcion de los datos se realice simultaneamente, mediante el uso de diferentes hilos para la transmision y la recepción.
    1. Half - Duplex: Cuando los datos circulan en una sola dirección por vez, la transmisión se denomina half-duplex. En la transmisión half-duplex, el canal de comunicaciones permite alternar la transmisión en dos direcciones, pero no en ambas direcciones simultáneamente.

      Un ejemplo so las radios bidireccionales, como las de emergencias o policias cuando xse presiona el botón del micrófono para transmitir, no se puede oír a la persona que se encuentra en el otro extremo. Si las personas en ambos extremos intentan hablar al mismo tiempo, no se establece ninguna de las transmisiones.

    2. Full - Duplex: Cuando los datos fluyen en ambas direcciones al mismo tiempo, la transmisión se denomina full-dúplex. Aunque los datos viajan en ambas direcciones, el ancho de banda se mide en una sola dirección. La tecnología de red dual mejora el rendimiento de la red al permitir envía y recibe datos al mismo tiempo.

      Un ejemplo de comunicación bidireccional es una conversación telefónica. En donde ambas partes pueden hablar y escuchar al mismo tiempo.

  2. Semiduplex: También denominado unidireccional, es una transmisión única, de una sola dirección. Esta utiliza solamente una linea tanto para la transmision y la recepcion de los datos, edando como resultado una operacion limitada, esta solo se puede configurar ya sea para la transmision o la recepcion de datos, mas no para la dos al tiempo.

    Un ejemplo de transmisión semiduplex es la señal que se envía de una estación de TVa la TV de su casa.

Resultados

Inicialmente se realiza la contruccion fisica del sistema descrito anteriormente para la adquiicion de las señales de cada sensor, y poder realizar el envio mediante un conctor RS-232

La programacion de adquisicion de los datos es realizada en arduino, establecinedo una velocidad de trabajo de 9600, este programa recibe una señal desde matlab, la cual especifica conque sensor se quiere trabajar, esta señal es enviada al seleccionar algunos de los botones en la interfaz grafica, el caracter enviado por el programa es de tipo char, este realiza una comparartiva en el microcontrolador y realiza la visualizacion de 1000 muestras en la interfaz grafica.

Para la comunicacion entre el microcontrolador y la interfaz grafica se utilia la funcion serial, en matlab, para la adquisisconde los datos, en la interfaz grafica tambien se especifica la velocidad de trabajo para que la comunicacion entre receptor y emisor sea correcta.

Acontinuacion se evidencia parte de codigo respecto a los botones de graficacion del comportamiento de los sensores, con su linealizacion, para poder realizar correctamente el analisis de las respuestas de las dierentes magnitudes que se estan midiendo.

Para la graficacion de los fenomenos en simultaneo se realiza un codigo en matlab enun archivo diferente, puesto que la graficacion enconjunto de las diferentes señales sufre algunas interferencias al realizarlo en conjunto mediante la interfaz grafica. En la presente se evidencia el sensado de los diferentes fenomenos medidos, al ser estos de diferentes magnitudes se decide realizar una relacion entre los valores de voltaje dados por los sensores a travez del tiempo, durante la toma de 1000 muestras para no prolongra mucho la graficación de estas. La grafica azul corresponde al sensor de temperatura, la naranja al sensor de humedad y la roja al sensor de posición potenciometro.

Acontinuacion se ve tanto la grafica que es obtenida en la implementacion del la lectura como la seccion de codigo implementada.

Por ulitmo se tienen la desconexion entre la comunicacion entre la interfaz grafica y el microcontrolador, esto mediante el uso de un boton en la interfaz grafica.

Conclusiones

El protocolo RS232 es uno de los protocolos más ulties para comunicación seríal de diferentes dispositivos pues este permite transmisión de datos tipo serial,y diferentes configuraciones como la velocidad de envío de datos y las posibles maneras de enviar y recibir datos, pues se puede realizar tan recibir como enviar con bits de paridad, de parada y inicio, entre otras. Este protocolo son de los más utilizados en diferentes dispositivos como el CP210x este es un dispositivo de comunicación serial y cuenta con diferentes funciones como el DTR el cual significa que el dato de transmisiónestá listo, quiere decir que se realiza un envío de un dato al sistema con el que se comunica, sin embargo existen difetes dispositivos y difetes modelos de dispositivos con los cuales transmitir informacion, este se escogio puesto que su tamaño y su fácil uso permitió la comunicación serial entre la ESP32 y el PC. Se debe tener en cunta en donde se realiza la interfaz gráfica, ya que cada aplicación maneja cierto tipo de tipaje de código que puede generar problemas con esta comunicación serial, para este laboratorio se realizó en matlab y se presentaron inconvenientes con la comunicación serial pues antes se realizó con la STM para posterior implementar la ESP32

Bibliografia

[1] Universidad Militar Nueva Granada , 2022. [Cajica-Cundinamarca]. Guia de Laboratorio, Protocolo de comunicación .

[2] Virtual Serial Port , 20 de octubre de 2020 Diferencia entre RS232 y RS485 - casos de uso y tecnología. . https://www.virtual-serial-port.org/es/article/what-is-serial-port/rs232-vs-rs485.html#RS232

[3] Schneider Electronic , 28 de Septiembre de 2021 . Cual es la diferencia entre dispositivos DTE y DCE . https://www.se.com/co/es/faqs/FA300859/

[4] Serial Port Monitor , 10 de febrero de 2020. Protocolos de comunicación. Principales tipos de transferencia serie . https://www.serial-port-monitor.org/es/articles/serial-communication/types-of-serial-protocols/

[5] Cisco . Transmisión de datos en la red . http://www.cca.org.mx/profesores/abc/pdfs/cisco/cisco_0.pdf

[6] Definición Transmision de datos. . https://definicion.xyz/transmision-de-datos/

⚠️ **GitHub.com Fallback** ⚠️