Comuniciones Seriadas

 

Debido a la estandarización del puerto serie en las PC´s, y su incremental uso en sistemas superivosores y controladores, los equipos de campo, tales como PLC, controladores, registradores, etc. han tenido que proveerse de puertos de comunicaciones para compartir datos entre ellos.

El puerto serie de la PC fue normalizado finalmente por la EIA y nomenclado RS-232-C, esta norma regula el protocolo de la transmisión de datos, el cableado, las señales eléctricas y los conectores en los que debe basarse una conexión RS-232. En las computadoras personales este dispositivo es programado a través de los registros de la UART, que no es mas que un chip (5058 o actualmente el 50u58) utilizado para la entrada y salida de caracteres y, sobre todo, para la conversión de palabras de datos en las correspondientes señales del puerto serie. Esto se debe a que la transmisión no es mas que un bus serie, todos los datos son transmitidos por un único hilo, por lo que alguien debe adminstrar esta conversión.

Para el uso industrial se dispone de otras normas mas sólidas, seguras, como: transmisión en TTL, RS-423 , RS-422, RS-449, RS-485, X.21, X.21 bis y Lazo de corriente.

Nuestro interés estará centralizado en las normas RS-232-C, RS-422 y RS-485 por ser las impuestas de facto en la industria en la actualidad.

La comunicación realizada con el puerto serie es una comunicación asincrónica. Para la sincronización de la comunicación se precisa siempre de una línea adicional a través de la cual el emisor y el receptor intercambian la señal del pulso. Pero en la transmisión serie a través de un cable de dos líneas esto no es posible ya que ambas están ocupadas por los datos y la masa. Por este motivo se intercalan antes y después de los datos informaciones de estado según el protocolo RS-232-C, RS-422 y RS-485. Esta información es determinada por el emisor y receptor al estructurar la conexión mediante la correspondiente programación de sus puertos serie (UART). Esta información puede ser la siguiente:

  1. Bit de paridad.- con este bit se pueden descubrir errores en la transmisión. Se puede dar paridad par, impar o sin paridad. En la paridad par, por ejemplo, la palabra de datos a transmitir se completa con el bit de paridad de manera que el número de bits 1 enviados se par.
  2. Bit de parada.- indica la finalización de la transmisión de una palabra de datos. El protocolo de transmisión de datos permite 1, 1.5 y 2 bits de parada.
  3. Word Length.- en es ancho de la palabra que se transmite, es decir que la cantidad de bit que componen los datos. Este parámetro puede programarse desde 5 hasta 8.
  4. Daud Rate.- es la velocidad de transmisión de bits. Este parámetro puede variar de 50 a 115200 bps.

 

La UART

La UART no es mas que un chip, que actualemente puede venir enbebido en el microprocesador (tanto en la PC como en equipamiento de campo), y nos posibilita en transferir datos desde-hacia la PC. En PC, en programación de bajo nivel se debe programar la misma a través de escribirle bytes codificados en ciertas direcciones de entrada salida, a partir de la dirección base de la misma (comúnmente 3F8H para el primer puerto y 2F8H para el segundo). A si mismo cada puerto tiene asociado una dirección de interrupción, que corresponden a IRQ 4 para el primer puerto e IRQ 3 para el segundo. En programación a alto nivel el programador no tiene necesidad de programarla, sencillamente existen objetos ( .vbx, .ocx, etc), que se encargan de hacerlo a través de propiedades configurables, donde se establecen los parámetros antes enunciados:

rs232-1.gif (10428 bytes)

Los parámetros comunmente utilizados para una comunicación asincrónica es 9600, N, 8, 1, lo que significa un baudrate de 9600, sin paridad, 8 bits de ancho de palabra y un bit de stop.

Existe una limitación para establecer la velocidad máxima de comunicación y está dada por herencia de compatibilidad de hardware, las PC, ....., . De todas maneras para una comunicación asincrónica en un medio industrial es difícil llegar a velocidades superiores a 19200 bps.

Una cuestión simple a tener en cuenta es que la comunicaión por ejemplo a 9600, O, 8, 1, significa que cada byte que se transmita estará compuesto por 11 bits, uno de inicio, uno de finalización, uno de paridad y 8 de datos, lo que se significa que la velocidad de transmisión de bytes de datos ideal es de 873.

RS-232

RS-422

RS-485

Comunicaciones Industriales

En el uso de comuniciones industriales se pueden dividir, aunque esta división se hace cada vez mas difusa, en una comunicación a nivel de campo, y una comunicación hacia el SCADA. En ambos casos la transmisión de datos se realiza en tiempo real, o por lo menos con una demora que no es significativa respecto de los tiempos del proceso, por lo que puede suponerse como tiempo real, siendo súmamente crítico para el primer nivel de enlace.

Para la comunicación a nivel de campo no existe una norma de comunicaciones para esta transmisión de datos en tiempo real que haya alcanzado un algo grado de difusión, esto hace que en algunos casos resulte técnicamente difícil integrar equipos de distintos fabricantes, mas aún, en algunos casos puede resultar técnico-económicamente desaconsejable. Varias normas intentan imponerse y actualmente existe una muy dura batalla entre las dos mas destacadas: Profibus y Fieldbus Foundation.

Mediante la ubicación de placas en el bus de la PC se puede integrar la misma, con su sistema SCADA contenido, en esta red de campo, y cualquier norma lo permite.

Sobre la red de control de procesos la seguridad viene dada no solo por el acceso a la variedad de datos que se manejan, como en las redes administrativas, sino que tambien se asocia con la disponibilidad de los datos en tiempo real, y la inmunidad del sistema a fallas de algún componente.

En las instalaciones que no constituyen un DCS se establece un nivel controlador y un nivel supervisor-controlador, donde este control no está asociado a variables rápidas desde el punto de vista de la velocidad de actualización entre ambos niveles. Es por eso que se recurre generalmente a comunicaciones seriadas en RS-XXX.

También se destaca que muchos equipos PLC, con módulos remotos utilizan este tipo de comunicaciones entre la CPU central y los módulos.

Las redes de comunicaciones con norma RS-XXX se entablecen en una configuración maestro-esclavo/s (a diferencia de los buses de campo que manejan una tecnología de token) cumpliendo el modelo ISO/OSI, aunque los distintos niveles pueden no verse nítidamente.

Así, la comunicación estará comandada por un equipo que se denomina maestro, y uno o varios equipos denominados esclavos. La función del maestro es organizar las comunicaciones y establecerlas. La función de los esclavos es contestarle al maestro cuando identifica que el mensaje va dirigido hacia el, en realidad se pueden distinguir dos tipos de comunicaciones entre el maestro y sus esclavos: Consulta/Respuesta y Broadcast/no response.

 

Existen básicamente dos formas de manejar una comunicación desde el punto de vista de la PC: por polling o por interrupción.

Polling:

La interfaz RS-232-C dispone de hasta 25 líneas que están orientadas a la comunicación de dos equipos PC (DTE) a través de módems (DCE) o hacia otra PC (DTE). En este caso se utilizarán para la conexión de los equipos PC prescindiendo de los módems. Para ello de las 25 líneas que posee se han utilizado sólo las siguientes:

  1. Línea de transmisión de datos (TxD).- línea por la que el DTE (PC) envía los datos.
  2. Línea de recepción de datos (RxD).- línea por la que el DTE (PC) recibe los datos.
  3. DTE preparado (DTR).- línea por la que el DTE (PC) indica al DCE (módem) que está activo para comunicarse con el módem.
  4. DCE preparado (DSR).- línea por la que el DCE (módem) indica al DTE (PC) que está activo para establecer la comunicación.
  5. Petición de envío (RTS).- con esta línea, el DTE (PC) indica al DCE (módem) que está preparado para transmitir datos.
  6. Preparado para enviar (CTS).- tras un RTS, el DCE (módem) pone esta línea en 1 lógico, tan pronto como está preparado para recibir datos.
  7. Masa.- necesaria para que tenga lugar la transmisión.

 

Conexión de las líneas.

Para hacer posible la comunicación entre dos equipos PC se han interconectado las descritas anteriormente. La conexión ha sido realizada de la siguiente manera:

(PC1) RxD <================== TxD (PC2)
(PC1) TxD
==================> RxD (PC2)
(PC1) DTR
==================> DSR (PC2)
(PC1) DSR
<================== DTR (PC2)
(PC1) RTS
==================> CTS (PC2)
(PC1) CTS
<================== RTS (PC2)
(PC1) MASA
=================== MASA (PC2)

 

9 PIN D-SUB Macho en el ordenador

Pin Nombre Descripción
1 CD Carrier Detect
2 RXD Receive Data
3 TXD Transmit Data
4 DTR Data Terminal Ready
5 GND System Ground
6 DSR Data Set Ready
7 RTS Request to Send
8 CTS Clear to Send
9 RI Ring Indicator

 

 

25 PIN D-SUB Macho en el  DTE (Computer).
25 PIN D-SUB Hembra en el  DCE (Modem).


Pin

Nombre

ITU-T

Descripción del pin

1

GND

101

Shield Ground

2

TXD

103

Transmit Data

3

RXD

104

Receive Data

4

RTS

105

Request to Send

5

CTS

106

Clear to Send

6

DSR

107

Data Set Ready

7

GND

102

System Ground

8

CD

109

Carrier Detect

9

-

 

RESERVED

10

-

 

RESERVED

11

STF

126

Select Transmit Channel

12

S.CD

?

Secondary Carrier Detect

13

S.CTS

?

Secondary Clear to Send

14

S.TXD

?

Secondary Transmit Data

15

TCK

114

Transmission Signal Element Timing

16

S.RXD

?

Secondary Receive Data

17

RCK

115

Receiver Signal Element Timing

18

LL

141

Local Loop Control

19

S.RTS

?

Secondary Request to Send

20

DTR

108

Data Terminal Ready

21

RL

140

Remote Loop Control

22

RI

125

Ring Indicator

23

DSR

111

Data Signal Rate Selector

24

XCK

113

Transmit Signal Element Timing

25

TI

142

Test Indicator

 

Nota: Dirección es del  DTE (Computer) relativa al DCE (Modem).