Sunteți pe pagina 1din 24

UNIVESIDAD Dr.

RAFAEL BELLOSO CHACIN


VICE RECTORADO ACADEMICO
DECANATO DE INVESTIGACION Y POSTGRADO
MAESTRIA “INGENIERIA DE CONTROL Y AUTOMATIZACION DE PROCESOS”

Instrumentación Industrial
Protocolos de comunicación de datos

Profesor:
Ing. Javier Bastidas

Realizado por:
Ing. Mendez Andres
Ing. Willy Hungers

Maracaibo 04 de Octubre de 2003.


En los años 60, cada fabricante usaba un interfaz diferente para comunicar un DTE (Data Terminal
Equipment) y un DCE (Data Communications Equipment). Cables, conectores y niveles de voltaje eran
diferentes e incompatibles, por lo tanto, la interconexión entre equipos de diferentes fabricantes requería
el uso de convertidores de los niveles de voltaje y la fabricación de cables y conectores especiales.

En 1969, el EIA junto con Bell Laboratories y otros fabricantes establecieron el estándar RS232-C
(Recommended Standard number 232, revision C), para la interfaz entre DTE's y DCE´s. El objetivo de
este estándar era simplificar la interconexión de equipos fabricados por diferentes firmas. Un estándar
similar fue desarrollado en Europa por el CCITT (Comite Consultatif Internatinale de Telegraphie et
Telephonie) conocido como V.24 (descripción funcional) y V.28 (especificaciones eléctricas).

En 1980 las grandes corporaciones adoptaron el estandar RS232, para las conexiones de los
perifericos a un DTE, Como este solamente soporta velocidades de transmisión hasta 20 kbps y
distancias hasta 16 metros, se adoptaron nuevos estándares por la EIA. El RS449 (descripción mecánica)
y RS423 (descripción eléctrica) son compatibles con el RS-232-C y se puede operar a velocidades de
hasta 10 Mbps y alcanzar distancias de hasta 1200 metros.  

NORMA RS-232

La interface de tipo serie RS-232, se caracteriza por el envío de la información bit a bit de manera
seriada o secuencial; ésta es la conexión entre un terminal DTE y un equipo de comunicaciones DCE,
utilizando el intercambio de datos binarios en serie. Esta interface esta definida por tres áreas muy
importantes que son: la características mecánicas; las características eléctricas; y las características
funcionales.
 Características mecánicas: la interface RS-232 define un conector de 25 pines, el macho es
asociado al DTE y la hembra al DCE. Típicamente se usa un DB-25, aunque no esta definido en el
estándar, algunos fabricantes usan uno diferente. Lo que si define perfectamente la norma es la
asignación de señales a los contactos del conector así como la longitud máxima recomendada,
determinada por la capacidad del mismo.
 Características eléctricas: parte fundamental, dentro de la recomendación RS-232 , es la
definición de las características de las señales que por él transitan; el nivel eléctrico cubre el margen de
tensiones y corrientes en cada pin, estando limitado el voltaje en ± 3 a ± 25 como máximo, ya que el
nominal del máximo es ± 15 y la intensidad a 3 miliamperios, de tal manera que aun en caso de corto
circuito entre pines no se cause daño alguno a los diversos componentes.
Dentro de estas características eléctricas, cabe destacar la impedancia de la interface, con una
resistencia de carga de 3 a 7 kiloohm, y la capacitancia del mismo, con un valor máximo de 2.5
nanofaradios. Teniendo en cuenta que la capacidad media por metro de los cables usados en
comunicaciones es del orden de160 picofaradio por metro; tenemos que la distancia máxima de los
cables usados debe ser 15 metros para poder garantizar la correcta transmisión de las señales digitales
sin distorsiones considerables.
 Características funcionales: son estas las más interesantes desde el punto de vista del usuario,
pues son las que deben conocer para poder realizar así su correcta aplicación; dentro de estas destacan
las siguientes: la transferencia de datos a través de la interface; el control de las diversas señales de la
interface; proporcionar las señales de sincronización que regulan la transferencia de bits; referencia de la
señal eléctrica.
 Circuito de intercambio de datos:
TD (Transmite Dato); RD (Receive Dato). Estos son los más importantes, en definitiva representan la
información que deseamos transmitir. Todos los demás circuitos están destinados a garantizar esta
correcta transmisión.
 Circuito de control de intercambio:
RTS (Request To Send); CTS (Clear To Send); DSR (Data Set Ready); DCD (Data Carrier Detect);
DTR (Data Transmite Ready); RI (Ring Indicator). Este circuito entre otros más, permite establecer y
controlar el enlace y la transferencia de información entre un equipo terminal de dato (DTE) y un equipo
de comunicación de dato (DCE), estableciendo la llamada y el control de la señal portadora en el medio
de enlace.
 Circuito de sincronización:
En una transmisión de modo sincrono, es necesario el uso de señales que regulen la cadencia de la
información; estas son las señales del reloj. TC (Transmiter Clock); RC (Receiver Clock); ETC (External
Transmiter Clock).
Estas señales se encargaran de tener perfectamente sincronizado al transmisor y el receptor,
permitiendo el correcto muestreo de la señal y evitando errores, además de temporizar las señales de
datos.
 Circuitos de referencia:
GND (Ground); SG (Signal Ground). Todas las señales tienen como referencia el pin 7 del conector,
por lo tanto este es fundamental, su ausencia impediría el correcto funcionamiento de las demás señales,
al alterar su significado.
El pin 1 conectado al chasis del equipo sirve de protección tanto eléctrica como electromagnética,
pues caso de utilizar cables apantallados minimizan las interferencias producidas en el exterior, si esta
conectada a una buena toma de tierra, (Huidobro J 1990, p.15).

El conector DB9 y El diagrama de pines de conexiones

Número de pin Señal


1 DCD (Data Carrier Detect)
2 RX
3 TX
4 DTR (Data Terminal Ready)
5 GND
6 DSR (Data Sheet Ready)
7 RTS (Request To Send)
8 CTS (Clear To Send)
9 RI (Ring Indicator)
Norma RS-232
Nombres oficiales: EIA-232D o ITU-T V.24
 EIA: Electronic Industries Alliance
 ITU: International Telecommunication Union
o Se compone de varias especificaciones:
 Mecánica: ISO 2110, Eléctrica: V.28, Funcional y procedural: V.24
o Permite transmisión sincrona y asíncrona

Características Mecánicas del Los Conectores DB25.


Especificación eléctrica V. 28

o El estándar define:
 Velocidad máx.: 20 kbps
 Distancia máx.: 15m
o 1 lógico = [-3,-15] voltios
1
o 0 lógico = [15,3] voltios
o Tx en modo COMÚN ð baja inmunidad al ruido.

Especificación Funcional V.24

Normas RS-422A y RS-423A.

Estas normas son relativamente nuevas y estan diseñadas para la comunicación serie a mayores
velocidades de transmisión y mayores distancias, estas se refieren a las características eléctricas de las
señales, la RS-422A operará a 100 Kbauds con un cable de 400 pies, (133 mts) y a 10 Mbauds con un
cable de 40 pies, esta norma RS-422A utiliza señales balanceadas y la RS-423A emplea señales no
balanceadas en los circuitos de interface.

Señales Balanceadas, modo de transmisión en líneas de conexiones mediante la norma RS422


Señal desbalanceada para la conexión de la norma RS423A

La norma RS-449 fue implantada en 1977 para substituir a la RS-232C, ella especifica las
características mecánicas de los conectores, las cuales establece conectores de 37 pines y las
descripciones funcionales de las señales, de forma tal que puede ser usada con diferentes normas
eléctricas, tales como la RS422A y la RS423A, dependiendo de los parámetros tales como, longitud del
canal, velocidad de transmisión y ruido en el canal, La norma RS423A, define las características
eléctricas mediante la cual se puede comunicar la norma RS449, en una red de datos o en la
comunicación serial de un DTE y un DCE. Es por ello que La Norma RS-449 puede utilizarse en
velocidades de hasta 2 Mbps, en cables de hasta 60 metros. Esta nueva norma se trata esencialmente de
una versión más rápida (hasta 2 Mbps) de RS-232C con capacidad de manejar cables más largos; en la
siguiente tabla se muestra una comparación entre las tres normas:

Tabla de comparación entre las normas RS232 – RS422 y RS423A

PARÁMETROS RS232C  RS422A RS423A

Longitud máxima de la línea 50 pies 4000 pies 4000 pies

Frecuencia 20 kbauds/50 pies  10 Mbauds/40 pies 100 k bauds/30 pies 

1 Mbauds/400 pies 10 k bauds/300 pies

100Kbauds/4000 pies 1 K bauds/4000 pies

Modo de transmisión Simple Diferencial Diferencial

Nivel lógico "0" +3Volts  "0"  +25 Volts  A<B +4.0 Volts  "0"  +6 Volts 

Nivel lógico "1" -3 Volts  "1"  -25 Volts A>B -4 Volts  "1"  -6 Volts

Número de receptores 1 10 10
permitidos en línea

Impedancia de entrada De 3 a 7 k en 2500 pF > 4 k  >4 k 

Impedancia de salida   <100   <50  

NORMA RS485
La norma RS485, establece las características eléctricas, que se deben emplear en la red de datos,
para poder establecer una conexión serial entre un terminal transmisor y un receptor, entre las
cualidades que esta presenta, se pueden mencionar las siguientes:
 Tensión de emisión: nivel «0»: +1,5 V a +5 V, nivel «1»: -1,5 V a -5 V;
 Nivel de recepción: nivel «0»: > +0,2 V, nivel «1»: < -0,2 V;
 Velocidad máxima: 10 Mbits/s;
 Enlace multipunto, en la práctica: 28 emisores/receptores como máximo;
 Longitud máxima: 1200 m
 Comunicación en modo Half Duplex

Conexión de la inetrface RS232 a RS485 y Viceversa.

Conexión Electrica de la interface RS485 en una red Multipuntos.

CIRCUITO INTEGRADO MAX485


Este circuito integrado de Dallas semiconductor, se adapta a la norma RS485 para conectar equipos DTE
y DCE a una red de datos para el intercambio y transferencia de los mismos.

Tabla comparativa entre las normas RS232, RS422 y RS485


RS232 RS422 RS485

single ended
Cabling single ended multi-drop
multi-drop

1 transmit 5 transmitters 32 transmitters


Number of Devices
1 receive 10 receivers 32 receivers

full duplex
Communication Mode full duplex half duplex
half duplex
Max. Distance 50 feet at 19.2 Kbps 4000 feet at 100 Kbps 4000 feet at 100 Kbps
Max. Data Rate 19.2 Kbps for 50 feet 10 Mpbs for 50 feet 10 Mpbs for 50 feet
Signaling unbalanced balanced balanced
-5 V min. 2 V min. (B>A) 1.5 V min. (B>A)
Mark (data 1)
-15 V max. 6 V max. (B>A) 5 V max. (B>A)

5 V min. 2 V min. (A>B) 1.5 V min. (A>B)


Space (data 0)
15 V max. 6 V max. (A>B) 5 V max. (A>B)
Input Level Min. +/- 3 V 0.2 V difference 0.2 V difference
500 mA
(Note that the driver ICs
Output Current 150 mA 250 mA
normally used in PCs are
limited to 10 mA)
EL MAX232

Este circuito integrado soluciona los problemas de niveles de voltajes cuando se requiere enviar
señales digitales sobre una línea RS232. el max232 se usa en aquellas aplicaciones donde no se dispone
de fuentes dobles de ± 12 voltios; como en aplicaciones alimentadas con baterías de una sola polaridad.
El max232 necesita solo una fuente de +5 voltios para su operación; el elevador de voltaje interno
convierte los +5v en un voltaje de doble polaridad de ± 12 voltios.
Con la mayoría de aplicaciones de RS-232, necesitan de un receptor y un emisor, el max232 incluye
en un solo empaque 2 parejas completas de emisor y receptor como se muestra en la figura 6,
(Electrónica Cekit (curso avanzado de microcontroladores pic), 1998, p.67).
Es decir, este circuito integrado es capas de suministrar los ± 12 voltios que se necesitan para
cumplir con la norma RS-232 con tan solo alimentarlo con una fuente sencilla de + 5 voltios, además
presenta un empaque de fácil manejo, con 2 parejas de trasmisor y receptor, lo cual lo hace más
interesante, ya que si se daña una etapa de transmisión o de recepción, se puede usar la otra sin
necesidad de reemplazar el circuito integrado en su totalidad.
Otra característica que hace que este circuito integrado sea el ideal es el poco uso de componentes
externos, lo cual hace que sea de fácil maniobralidad por el mínimo de componentes requeridos para
estar operativamente aceptado y cumpliendo con la norma de comunicación serial.

como se muestra en la figura anterior, el max232 tiene un doblador de voltaje de +5 voltios a +10
voltios y un inversor de voltaje para obtener el voltaje negativo de -10 voltios. El primer convertidor
utiliza el condensador C1 para doblar los +5v de entrada sobre a +10v sobre el condensador C3 en la
salida positiva. El segundo convertidor usa el condensador C2 para llevar de +10v a –10v en el
condensador C4 de salida negativa. En la figura 6, aparece un recuadro donde el fabricante especifica
las capacitancias que usan cada modelo de circuito integrado Max.

PROTOCOLOS DE COMUNICACIÓN O ENLACE

Los protocolos son reglas que rigen el comportamiento o cómo se debe comportar un equipo antes,
durante, y después de establecer una comunicación, (Tomasi W 1996, p.557), Por otra parte, dice que
los protocolos de una red de comunicación de datos, son un conjunto de reglas que gobierna el
intercambio ordenado de los datos.
Stolts K (1995, p.111) establece, que el término protocolo por extensión, se usa cuando se conectan
los estándares de una red. De allí que lo conceptualiza como un conjunto de reglas que especifica la
forma en la cual se efectúan las comunicaciones en la red, y la correcta secuencia e integridad de los
datos transmitidos entre computadoras o entre computadoras y terminales de red.
Asimismo González N (1994, p.2) dice que usando caracteres de controles definidos, el protocolo de
enlace proporciona una forma ordenada y precisa de asegurar que, entre otras cosas, una terminal
remota o un computador se encuentre pronto y que el dispositivo remoto envíe datos, reciba datos, y
notifique a la terminal o computador emisor cuando reciba datos erróneos. Dado que el mismo enlace
físico transporta tanto datos de textos como caracteres de control, el protocolo debe estar capacitado
para distinguir entre los datos y caracteres de control.
De la misma manera Huidobro (J 1990, p.75) comenta sobre las funciones de los protocolos; antes
definiéndolos como una serie de reglas para coordinar el flujo de información entre elementos diversos,
así como garantizar que este se realice correctamente, además, dice que las funciones básicas de los
protocolos son las siguientes: establecer el enlace (Punto de origen y destino), transferir la información,
detectar fallas en la transmisión, corregir errores.
 Establecer el enlace desde el punto origen hacia el punto destino: Entre las funciones de los
protocolos, esta juega gran importancia, ya que el protocolo debe proporcionar a la red de computadoras,
la confianza e integridad para realizar la conexión de puntos entre la red, para la correcta transmisión y
recepción de los datos que fluyen por las líneas del cableado en la conexión de la red. Si un protocolo no
es capas de asegurar el enlace entre dos o más puntos en una red de computadoras, éste no convendría
usarlo, ya que no se tendría la certeza ni la seguridad, de que exista un enlace para poder transmitir o
recibir dato, debido a que el protocolo que se usa no lo proporciona adecuadamente.
 Transferir la información: este punto también es importante, ya que si se desea transmitir
información, el protocolo debe coordinar y distinguir la información entre datos válidos y caracteres de
control. Además debe de proporcionar la seguridad de que los datos sean transferidos y que fluyan por
las líneas de conexión de la red para así llegar a los puntos destinos a los cuales se envió.

 Detectar fallas en la transmisión: cuando en una red de computadoras fluye información desde
un terminal transmisor hacia un terminal receptor, los datos transmitidos poseen un código de
validación, el cual esta incluido entre los datos transmitido. Entre los métodos de detección de errores
que usan los protocolos se encuentran, la redundancia, que involucra transmitir cada carácter dos
veces; la codificación de cuenta exacta, es que la cantidad de unos en cada carácter, es el mismo; la
paridad, que consiste en sumar los 1 (unos), que se encuentran en el mensaje, si la cantidad sumada
era impar o par, el protocolo se daría cuenta de un error en la transmisión, con este resultado y el código
de validación que le diría sí la sumatoria de los unos seria par o impar. Estos son algunos de los métodos
que usan los protocolos para la detección de errores.

 Corregir errores: esta es una ventaja que proporcionar los protocolos, luego de detectar el error, el
protocolo localiza el Bit errado usando uno de los métodos de detección y lo restaura automáticamente,
llevando la cuenta de los errores causados en la transmisión, para así tener el mensaje recibido igual al
mensaje transmitido y a su vez lleva la estadística de los errores de la transmisión, BER ( Bit Error
Rate), cuyo significado en español es Rata de Bits Errados, esta cuenta estadística proporcionará una
idea para verificar cómo esta la conexión de la red.
Estos cuatro puntos, que en un principio no entrañaban gran dificultad, pueden llegar a plantear
serios problemas si no respetamos las reglas establecidas por las organizaciones de estandarización,
entre otros la ISO; destacando así que la misión de los protocolos es conseguir la mayor eficiencia en la
realización de una determinada tarea, evitando la duplicación de funciones, rentabilizando el tiempo
empleado y asegurando la correcta realización de la misma.
En el proceso de transferencia de información de un terminal a otro donde intervienen los
protocolos para coordinar el flujo de la misma, ambas terminales deben coincidir con el mismo protocolo
para que el intercambio de datos sea efectivo, eficaz y perfecto.
Igualmente (Comer D 1997, p. 155), comenta sobre la necesidad de los protocolos para que el
hardware de comunicación pueda transferir información de un lugar a otro; así como el uso de un
software que interactúa como una interface de alto nivel para las aplicaciones en un computador. En una
red de computadoras el software maneja de manera automática casi todos los detalles y problemas de
comunicación de bajo nivel (mediante al hardware), lo que permite que las aplicaciones se comuniquen
con facilidad con el hardware, de esta manera los programa de aplicación se apoyan en un software de
red para comunicarse y no interactuar directamente con el hardware de red.
Todas las partes que están presentes en una comunicación mediante una red directa de
computadoras deben acordar reglas que se cumplirán durante el intercambio de mensajes. Estas reglas
se llaman protocolos de red o protocolo de comunicación de computadora.

TIPOS DE PROTOCOLOS

Entre los tipos de protocolos tenemos los siguientes:


 Protocolos orientados al carácter
 Protocolos orientados al bit.

De los protocolos orientados al carácter, él mas usado por las industrias es el


“Binary Synchronous Comunications” conocido como BSC o BYSYNC. Este es un
protocolo orientado al carácter, intrínsicamente semidúplex, aunque en muchas
ocasiones el medio de transmisión sea dúplex total, y presenta un formato como el
que se muestra en la figura # 4:
SYN SYN SOH CONTROL STX TEXTO EXT O ETB BCC
Figura 4. Formato de un protocolo Bsc. (Huidobro J 1990, p.83)
De los protocolos orientados al bit, (Huidobro J 1990, p.83), dice que conforme se fue ampliando el
uso de terminales interactivos, de enlaces full dúplex, se presentó la necesidad de realizar nuevos
protocolos que rentabilicen el uso de los medios disponibles, las necesidades básicas para este tipo de
protocolos eran las siguientes:
Poder transmitir datos en ambos sentidos simultáneamente; Posibilidad de transmitir varios
mensajes por el mismo canal; Protocolos válidos tanto para R.A.C, half dúplex y multipunto, así como
para líneas de punto a punto y full dúplex; Un método más potente y fiable para la detección de errores y
corrección de los mismos.
A partir de estas necesidades se fueron creando los protocolos orientados al Bit, de los cuales
surgieron el HDLC, SDLC, DDCMP. Creados por la compañía IBM los dos primeros.
Al principio de los años 70, se adopto como un estándar internacional por el ISO, el protocolo HDLC
(High Level Data Link Code), que se muestra en la figura 5.

FLAG DIRECCIÓN CONTROL INFORMACIÓN CHEQUEO FLAG


01111110 8 bit 8 bit 16 BIT 01111110
Figura 5.Formato de un protocolo HDLC (Huidobro J 1990, p.86)
Para los protocolos SDLC (Synchronous Data Link Control), se usó el protocolo HDLC pero con
ciertas modificaciones, tales como:
El campo de información debe ser múltiplo de 8; Contiene comandos adicionales, puesto que este
puede dar confirmación a varias tramas simultáneamente y además por ser full dúplex se consigue una
alta eficiencia en la línea, alcanzando lo que el usuario pretende.
En los protocolos DDCMP (Digital Data Comunications Message Protocol), desarrollados por la
industria DEC; la principal ventaja con respecto al HLDC y SDLC, es que podía usarse con los equipos
ya existentes y tanto en líneas asíncronas como síncronas. Esta fue una ventaja notable para la industria
DEC con la realización de este protocolo, lo que obligo a las empresas de comunicación de datos a
desarrollar o mejorar nuevos o protocolos ya existentes.

ESTÁNDARES DE LOS PROTOCOLOS.

A finales de los años 70, la organización internacional de normalización ISO, desarrolló una serie de
normas para la creación de un sistema de interconexión entre diferentes equipos y diferentes fabricantes,
lo suficientemente abierto que permita el cambio de información entre sistemas distribuidos. Este modelo
conocido como OSI (Open System Interconections), trata de normalizar los diversos y numerosos
elementos que existen en cualquier red de terminales, definiendo un modelo de 7 capas o niveles,
(Huidobro J 1990, p.183), (Sánchez R 1993, p. 228); ilustrado de la manera siguiente: Capa física; Capa
de conexión; Capa de red; Capa de transporte; Capa de sesión; Capa de presentación; Capa de
aplicación.
 Capa física: Esta capa asegura el transporte de la información. Son posibles un gran número de
técnicas de transmisión controlados por procedimientos normalizados como V.24, X.21, etc. Descrito por
CCITT como norma de la serie V, al igual la norma de la serie X, la cual dice o expresa la interconexión.
La unidad de información de esta capa es el Bit.
 Capa de conexión: Es la responsable del direccionamiento sin error de los bloques de información
en las conexiones de datos. En efecto los soportes de transmisión introducen errores en la información
transportada. El objetivo de esta capa es asegurar que la tasa de error sea despreciable. Los bloques de
información se denominan frecuentemente como “tramas” en los protocolos más comunes como el BSC,
HDLC, SDLC, etc.
 Capa de red: Esta capa se encarga de definir el direccionamiento de paquetes de datos que se
transmitirán por el interior del sistema y de su control. Caso de la norma X.25, incluso un control de
flujo podría ser incluido en esta capa para evitar pérdidas de paquetes de datos por atasco en ciertos
caminos. La norma X.25 se refiere a la interconexión para las terminales en funcionamiento modo
paquete.
 Capa de transporte: Responde del control del transporte de la información entre dos puntos a
través de la red. Esta capa debe asegurar que el mensaje de los usuarios conectados a una red
informática son correctamente transmitidos a sus destinatarios; por ejemplo, una de sus funciones es
reensamblar los mensajes que habían sido divididos en partes (paquetes), por comodidad de transporte.
 Capa de sesión: Es la responsable de la puesta a punto y del control de diálogos entre tareas
distintas.
Esta capa tiene por función activar y sincronizar ciertos acontecimientos; por ejemplo, en caso de
datos duplicados en varios puntos de una red, es importante que dos usuarios que quieran hacer la
actualización del mismo registro lo hagan en el mismo orden en el conjunto de base de datos. Es un
problema de sincronización.
 Capa de presentación: Se encarga de la presentación de los datos intercambiados por las
aplicaciones, es decir, para tener una compatibilidad entre todos los terminales conectados a la red.
Incluye la traducción del alfabeto así como la adaptación de formatos y control de la estructura de
registros y trabajos.
 Capa de aplicación: Esta capa no esta definida completamente por lo que presenta multitud de
opciones dependiente de cada usuario. Básicamente se encarga del entendimiento con las capas
inferiores, de soportar la transferencia de información y de proporcionar los elementos necesarios para
cada aplicación específica.
Esta arquitectura de 7 capas permite una buena comprensión de los diferentes elementos que van a
intervenir en la construcción de un sistema telemático distribuido, teniendo en cuenta que no siempre es
necesario utilizar todas las capas. El modelo de 7 capas esta representado en el orden desde la
adquisición de datos desde la pila de un computador; llámese computador 1, hacia la pila de un segundo
computador pasando por cada una de las capas que define la ISO, para los sistemas abiertos; véase la
figura 6.
Este estándar de la definición del modelo de 7 capas, da paso a la creación de nuevos modelos de
protocolos para las nuevas aplicaciones que día a día van surgiendo, dejando atrás la vieja rutina de los
protocolos anteriores que por su diseño son muy lentos para las aplicaciones que surgen hoy día; no
permitiendo que las nuevas aplicaciones obtengan un rendimiento optimo.
Ejemplo del uso de protocolos en el modelo de 7 capas de ISO.

Capa de aplicación (HTTP, SMTP, FTP, TELNET...)

Capa de transporte (UDP, TCP)

Capa de red (IP)

Capa de acceso a la red (Ethernet, Token Ring...)

Capa física (cable coaxial, par trenzado...)

PROTOCOLO DE TRANSPORTE UDP

El protocolo UDP (User Datagram Protocol, protocolo de datagrama de usuario) proporciona una
comunicación muy sencilla entre las aplicaciones de dos ordenadores. Al igual que el protocolo IP, UDP
es:

 No orientado a conexión. No se establece una conexión previa con el otro extremo para
transmitir un mensaje UDP. Los mensajes se envían sin más y éstos pueden duplicarse o llegar
desordenados al destino.
 No fiable. Los mensajes UDP se pueden perder o llegar dañados.

UDP utiliza el protocolo IP para transportar sus mensajes. Como vemos, no añade ninguna mejora
en la calidad de la transferencia; aunque sí incorpora los puertos origen y destino en su formato de
mensaje. Las aplicaciones (y no el protocolo UDP) deberán programarse teniendo en cuenta que la
información puede no llegar de forma correcta.  

Encabezad Área de datos


o UDP UDP

   
Encabezado del Área de datos del datagrama IP
datagrama

Encabezad   Final de la 


o de la Área de datos de la trama
trama
trama
Formato del mensaje UDP
 
Puerto UDP de origen (16 bits, opcional). Número de puerto de la máquina origen.

Puerto UDP de destino (16 bits). Número de puerto de la máquina destino.


Longitud del mensaje UDP (16 bits). Especifica la longitud medida en bytes del
mensaje UDP incluyendo la cabecera. La longitud mínima es de 8 bytes.

 Suma de verificación UDP (16 bits, opcional). Suma de comprobación de errores del
mensaje. Para su cálculo se utiliza una pseudo-cabecera que también incluye las direcciones IP
origen y destino. Para conocer estos datos, el protocolo UDP debe interactuar con el protocolo
IP.

 Datos. Aquí viajan los datos que se envían las aplicaciones. Los mismos datos que
envía la aplicación origen son recibidos por la aplicación destino después de atravesar toda la
Red de redes.

PROTOCOLO TCP

El protocolo TCP (Transmission Control Protocol, protocolo de control de transmisión) está basado
en IP que es no fiable y no orientado a conexión, y sin embargo es:

 Orientado a conexión. Es necesario establecer una conexión previa entre las dos
máquinas antes de poder transmitir ningún dato. A través de esta conexión los datos llegarán
siempre a la aplicación destino de forma ordenada y sin duplicados. Finalmente, es necesario
cerrar la conexión.
 Fiable. La información que envía el emisor llega de forma correcta al destino.

El protocolo TCP permite una comunicación fiable entre dos aplicaciones. De esta forma, las
aplicaciones que lo utilicen no tienen que preocuparse de la integridad de la información: dan por hecho
que todo lo que reciben es correcto.

El flujo de datos entre una aplicación y otra viajan por un circuito virtual. Sabemos que los
datagramas IP pueden seguir rutas distintas, dependiendo del estado de los encaminadores intermedios,
para llegar a un mismo sitio. Esto significa que los datagramas IP que transportan los mensajes siguen
rutas diferentes aunque el protocolo TCP logré la ilusión de que existe un único circuito por el que viajan
todos los bytes uno detrás de otro (algo así como una tubería entre el origen y el destino). Para que esta
comunicación pueda ser posible es necesario abrir previamente una conexión. Esta conexión garantiza
que los todos los datos lleguen correctamente de forma ordenada y sin duplicados. La unidad de datos
del protocolo es el byte, de tal forma que la aplicación origen envía bytes y la aplicación destino recibe
estos bytes.

Sin embargo, cada byte no se envía inmediatamente después de ser generado por la aplicación,
sino que se espera a que haya una cierta cantidad de bytes, se agrupan en un segmento y se envía el
segmento completo. Para ello son necesarias unas memorias intermedias o buffers. Cada uno de estos
segmentos viaja en el campo de datos de un datagrama IP. Si el segmento es muy grande será necesario
fragmentar el datagrama, con la consiguiente pérdida de rendimiento; y si es muy pequeño, se estarán
enviando más cabeceras que datos. Por consiguiente, es importante elegir el mayor tamaño de segmento
posible que no provoque fragmentación.
El protocolo TCP envía un flujo de información no estructurado. Esto significa que los datos no
tienen ningún formato, son únicamente los bytes que una aplicación envía a otra. Ambas aplicaciones
deberán ponerse de acuerdo para comprender la información que se están enviando.

Cada vez que se abre una conexión, se crea un canal de comunicación bidireccional en el que
ambas aplicaciones pueden enviar y recibir información, es decir, una conexión es full-dúplex.

FORMATO DEL SEGMENTO TCP

Ya hemos comentado que el flujo de bytes que produce una determinada aplicación se divide en uno
o más segmentos TCP para su transmisión. Cada uno de estos segmentos viaja en el campo de datos de
un datagrama IP. Para facilitar el control de flujo de la información los bytes de la aplicación se
numeran. De esta manera, cada segmento indica en su cabecera el primer byte que transporta. Las
confirmaciones o acuses de recibo (ACK) representan el siguiente byte que se espera recibir (y no el
número de segmento recibido, ya que éste no existe).

  

0 10 20 30

0 1 2 3 4 5 6 7 8 9 0 1 2 3 3 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Puerto TCP origen Puerto TCP destino

Número de secuencia

Número de acuse de recibo

HLEN Reservado Bits código Ventana

Suma de verificación Puntero de urgencia

Opciones (si las hay) Relleno

Datos

...

 Puerto fuente (16 bits). Puerto de la máquina origen. Al igual que el puerto destino es
necesario para identificar la conexión actual.
 Puerto destino (16 bits). Puerto de la máquina destino.

 Número de secuencia (32 bits). Indica el número de secuencia del primer byte que trasporta el
segmento.

 Número de acuse de recibo (32 bits). Indica el número de secuencia del siguiente byte que se
espera recibir. Con este campo se indica al otro extremo de la conexión que los bytes anteriores
se han recibido correctamente.

 HLEN (4 bits). Longitud de la cabecera medida en múltiplos de 32 bits (4 bytes). El valor


mínimo de este campo es 5, que corresponde a un segmento sin datos (20 bytes).
 Reservado (6 bits). Bits reservados para un posible uso futuro.

 Bits de código o indicadores (6 bits). Los bits de código determinan el propósito y contenido del
segmento. A continuación se explica el significado de cada uno de estos bits (mostrados de
izquierda a derecha) si está a 1.

 URG. El campo Puntero de urgencia contiene información válida.

 ACK. El campo Número de acuse de recibo contiene información válida, es decir, el segmento
actual lleva un ACK. Observemos que un mismo segmento puede transportar los datos de un
sentido y las confirmaciones del otro sentido de la comunicación.

 PSH. La aplicación ha solicitado una operación push (enviar los datos existentes en la memoria
temporal sin esperar a completar el segmento).

 RST. Interrupción de la conexión actual.

 SYN. Sincronización de los números de secuencia. Se utiliza al crear una conexión para indicar
al otro extremo cual va a ser el primer número de secuencia con el que va a comenzar a
transmitir (veremos que no tiene porqué ser el cero).

 FIN. Indica al otro extremo que la aplicación ya no tiene más datos para enviar. Se utiliza para
solicitar el cierre de la conexión actual.

 Ventana (16 bits). Número de bytes que el emisor del segmento está dispuesto a aceptar por
parte del destino.

 Suma de verificación (24 bits). Suma de comprobación de errores del segmento actual. Para su
cálculo se utiliza una pseudo-cabecera que también incluye las direcciones IP origen y destino.

 Puntero de urgencia (8 bits). Se utiliza cuando se están enviando datos urgentes que tienen
preferencia sobre todos los demás e indica el siguiente byte del campo Datos que sigue a los
datos urgentes. Esto le permite al destino identificar donde terminan los datos urgentes. Nótese
que un mismo segmento puede contener tanto datos urgentes (al principio) como normales
(después de los urgentes).

 Opciones (variable). Si está presente únicamente se define una opción: el tamaño máximo de
segmento que será aceptado.

 Relleno. Se utiliza para que la longitud de la cabecera sea múltiplo de 32 bits.

 Datos. Información que envía la aplicación.

FIABILIDAD

¿Cómo es posible enviar información fiable basándose en un protocolo no fiable? Es decir, si los
datagramas que transportan los segmentos TCP se pueden perder, ¿cómo pueden llegar los datos de las
aplicaciones de forma correcta al destino?
La respuesta a esta pregunta es sencilla: cada vez que llega un mensaje se devuelve una
confirmación (acknowledgement) para que el emisor sepa que ha llegado correctamente. Si no le llega
esta confirmación pasado un cierto tiempo, el emisor reenvía el mensaje.

Veamos a continuación la manera más sencilla (aunque ineficiente) de proporcionar una


comunicación fiable. El emisor envía un dato, arranca su temporizador y espera su confirmación (ACK).
Si recibe su ACK antes de agotar el temporizador, envía el siguiente dato. Si se agota el temporizador
antes de recibir el ACK, reenvía el mensaje. Los siguientes esquemas representan este comportamiento:

Este esquema es perfectamente válido aunque muy ineficiente debido a que sólo se utiliza un
sentido de la comunicación a la vez y el canal está desaprovechado la mayor parte del tiempo. Para
solucionar este problema se utiliza un protocolo de ventana deslizante, que se resume en el siguiente
esquema. Los mensajes y las confirmaciones van numerados y el emisor puede enviar más de un
mensaje antes de haber recibido todas las confirmaciones anteriores.

CONEXIONES EN TCP

Una conexión son dos pares dirección IP:puerto. No puede haber dos conexiones iguales en un
mismo instante en toda la Red. Aunque bien es posible que un mismo ordenador tenga dos conexiones
distintas y simultáneas utilizando un mismo puerto. El protocolo TCP utiliza el concepto de conexión
para identificar las transmisiones. En el siguiente ejemplo se han creado tres conexiones. Las dos
primeras son al mismo servidor Web (puerto 80) y la tercera a un servidor de FTP (puerto 21).

Host 1 Host 2
194.35.133.5:1256 135.22.8.165:80
184.42.15.16:1305 135.22.8.165:80
184.42.15.16:1323 135.22.10.15:21
Para que se pueda crear una conexión, el extremo del servidor debe hacer una apertura pasiva del
puerto (escuchar su puerto y quedar a la espera de conexiones) y el cliente, una apertura activa en el
puerto del servidor (conectarse con el puerto de un determinado servidor).

PROTOCOLO IP

IP es el principal protocolo de la capa de red. Este protocolo define la unidad básica de transferencia de
datos entre el origen y el destino, atravesando toda la red de redes. Además, el software IP es el
encargado de elegir la ruta más adecuada por la que los datos serán enviados. Se trata de un sistema de
entrega de paquetes (llamados datagramas IP) que tiene las siguientes características:

 Es no orientado a conexión debido a que cada uno de los paquetes puede seguir rutas distintas
entre el origen y el destino. Entonces pueden llegar duplicados o desordenados.
 Es no fiable porque los paquetes pueden perderse, dañarse o llegar retrasados.

FORMATO DEL DATAGRAMA IP

El datagrama IP es la unidad básica de transferencia de datos entre el origen y el destino. Viaja en el


campo de datos de las tramas físicas (recuérdese la trama Ethernet) de las distintas redes que va
atravesando. Cada vez que un datagrama tiene que atravesar un router, el datagrama saldrá de la trama
física de la red que abandona y se acomodará en el campo de datos de una trama física de la siguiente
red. Este mecanismo permite que un mismo datagrama IP pueda atravesar redes distintas: enlaces punto
a punto, redes ATM, redes Ethernet, redes Token Ring, etc. El propio datagrama IP tiene también un
campo de datos: será aquí donde viajen los paquetes de las capas superiores.

  Encabezado del
datagrama Área de datos del datagrama IP

Encabezado
Datagramadede Protocolo IP Final de la
la trama Área de datos de la trama trama

0 10 20 30

0 1 2 3 4 5 6 7 8 9 0 1 2 3 3 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

VERS HLEN Tipo de servicio Longitud total

Identificación Bandrs Desplazaiento de fragmento

TTL Protocolo CRC cabecera

Dirección IP origen

Dirección IP destino

Opciones IP (si las hay) Relleno

Datos

...
 Campos del datagrama IP:

 VERS (4 bits). Indica la versión del protocolo IP que se utilizó para crear el datagrama. Actualmente se utiliza la
versión 4 (IPv4) aunque ya se están preparando las especificaciones de la siguiente versión, la 6 (IPv6).
 HLEN (4 bits). Longitud de la cabecera expresada en múltiplos de 32 bits. El valor mínimo es 5, correspondiente a
160 bits = 20 bytes.

 Tipo de servicio (Type Of Service). Los 8 bits de este campo se dividen a su vez en:

o Prioridad (3 bits). Un valor de 0 indica baja prioridad y un valor de 7, prioridad máxima.

o Los siguientes tres bits indican cómo se prefiere que se transmita el mensaje, es decir, son sugerencias a
los encaminadores que se encuentren a su paso los cuales pueden tenerlas en cuenta o no.

o Bit D (Delay). Solicita retardos cortos (enviar rápido).

o Bit T (Throughput). Solicita un alto rendimiento (enviar mucho en el menor tiempo posible).

o Bit R (Reliability). Solicita que se minimice la probabilidad de que el datagrama se pierda o resulte
dañado (enviar bien).

o Los siguientes dos bits no tienen uso.

 Longitud total (16 bits). Indica la longitud total del datagrama expresada en bytes. Como el campo tiene 16 bits, la
máxima longitud posible de un datagrama será de 65535 bytes.

 Identificación (16 bits). Número de secuencia que junto a la dirección origen, dirección destino y el protocolo
utilizado identifica de manera única un datagrama en toda la red. Si se trata de un datagrama fragmentado, llevará la
misma identificación que el resto de fragmentos.

 Banderas o indicadores (3 bits). Sólo 2 bits de los 3 bits disponibles están actualmente utilizados. El bit de Más
fragmentos (MF) indica que no es el último datagrama. Y el bit de No fragmentar (NF) prohíbe la fragmentación del
datagrama. Si este bit está activado y en una determinada red se requiere fragmentar el datagrama, éste no se podrá
transmitir y se descartará.

 Desplazamiento de fragmentación (13 bits). Indica el lugar en el cual se insertará el fragmento actual dentro del
datagrama completo, medido en unidades de 64 bits. Por esta razón los campos de datos de todos los fragmentos
menos el último tienen una longitud múltiplo de 64 bits. Si el paquete no está fragmentado, este campo tiene el valor
de cero.

 Tiempo de vida o TTL (8 bits). Número máximo de segundos que puede estar un datagrama en la red de redes. Cada
vez que el datagrama atraviesa un router se resta 1 a este número. Cuando llegue a cero, el datagrama se descarta  y
se devuelve un mensaje ICMP de tipo "tiempo excedido" para informar al origen de la incidencia.

 Protocolo (8 bits). Indica el protocolo utilizado en el campo de datos: 1 para ICMP, 2 para IGMP, 6 para TCP y 17
para UDP.

 CRC cabecera (16 bits). Contiene la suma de comprobación de errores sólo para la cabecera del datagrama. La
verificación de errores de los datos corresponde a las capas superiores.
 Dirección origen (32 bits). Contiene la dirección IP del origen.

 Dirección destino (32 bits). Contiene la dirección IP del destino.

 Opciones IP. Este campo no es obligatorio y especifica las distintas opciones solicitadas por el usuario que envía los
datos (generalmente para pruebas de red y depuración).

 Relleno. Si las opciones IP (en caso de existir) no ocupan un múltiplo de 32 bits, se completa con bits adicionales
hasta alcanzar el siguiente múltiplo de 32 bits (recuérdese que la longitud de la cabecera tiene que ser múltiplo de 32
bits).

PROTOCOLO MODBUS.
Transacciones sobre Redes Modbus
Los puertos standard Modbus en controladores Modicon utilizan un interface serie compatible RS-
232C. La norma EIA RS-232C define patillas del conector, cableado, niveles de señal, velocidades de
transmisión y control de paridad. Los controladores pueden ser conectados en red directamente o vía
modems.
Los controladores comunican usando una técnica maestro – esclavo, en la cual sólo un dispositivo
(el maestro) puede iniciar transacciones (llamadas ‘peticiones’ – ‘queries’). Los otros dispositivos (los
esclavos) responden suministrando al maestro el dato solicitado, o realizando la acción solicitada en la
petición. Entre los dispositivos maestros típicos se incluyen los procesadores centrales y los paneles de
programación. Esclavos típicos son los PLC’s (controladores programables).
El maestro puede direccionar esclavos individualmente o puede generar un mensaje en modo
difusión a todos los esclavos. Los esclavos devuelven un mensaje (llamado ‘respuesta’) a las peticiones
que les son direccionadas individualmente. No se devuelven respuestas a peticiones en modo difusión
enviadas desde el maestro.
El protocolo Modbus establece el formato para la petición del maestro, colocando en ella la
dirección del dispositivo esclavo (0 en caso de ‘difusión’), un código de función que define la acción
solicitada, cualquier dato que haya de enviarse y un campo de comprobación de error. El mensaje de
respuesta del esclavo está también definido por el protocolo Modbus. Contiene campos confirmando la
acción tomada, cualquier dato que haya de devolverse y un campo de comprobación de error. Si el
mensaje recibido por el esclavo es defectuoso o el esclavo es incapaz de realizar la acción solicitada,
construirá un mensaje de error y lo enviará como respuesta.
Transacciones en otros tipos de redes
Además de sus capacidades Modbus standard, algunos modelos de controladores Modicon pueden
comunicar sobre Modbus Plus, utilizando puertos incorporados al efecto o adaptadores de red y sobre
MAP, utilizando adaptadores de red.
En estas redes, los controladores comunican usando una técnica ‘todos contra todos’ (‘peer-
topeer’) en la cual cualquier controlador puede iniciar transacciones con los otros controladores. Así un
controlador puede operar como maestro o como esclavo en diferentes transacciones. Con frecuencia se
proporcionan múltiples caminos internos para permitir procesamiento concurrente de transacciones
maestro y esclavo.
A nivel de mensaje, el protocolo Modbus todavía aplica el principio maestro-esclavo aunque el
método de comunicación en red sea ‘peer-to-peer’. Si un controlador origina un mensaje, lo hace como
un dispositivo maestro y espera una respuesta desde un dispositivo esclavo. De la misma forma, cuando
un controlador recibe un mensaje, construye una respuesta como esclavo y la envía al controlador que
originó la transacción.
La Petición: El código de función en la petición indica al dispositivo esclavo direccionado el tipo de
acción a realizar. Los bytes de datos contienen cualquier información adicional que elesclavo necesitará
para llevar a cabo la función. Por ejemplo el código de función 03 pedirá al esclavo que lea registros
mantenidos (holding regs.) y responda con sus contenidos. El campo de datos debe contener la
información que indique al esclavo en qué registro debe comenzar y cuántos ha de leer. El campo de
comprobación de error proporciona un método para que el esclavo valide la integridad del contenido del
mensaje recibido.
La Respuesta: Si el esclavo elabora una respuesta normal, el código de función contenido en la
respuesta es una réplica del código de función enviado en la petición. Los bytes de datos
contienen los datos recolectados por el esclavo, tales como valores de registros o estados. Si ocurre
un error, el código de función contenido en la respuesta es diferente al código de función enviado en la
petición, para indicar que la respuesta es una respuesta de error y los bytes de datos contienen un
código que describe el error. El campo de comprobación de error permite al maestro confirmar que los
contenidos del mensaje son válidos.
Para el control de una red de controladores, el protocolo modbus estándar esta definido por dos
modalidades, RTU y ASCII. Al utilizar este protocolo en controladores de campo, estos pueden ser
configurados para comunicar sobre redes standard Modbus utilizando cualquiera de los dos modos de
transmisión: ASCII o RTU. Los usuarios seleccionan el modo deseado, junto con los parámetros de
comunicación del puerto serie (velocidad, paridad, etc), durante la configuración de cada controlador. El
modo y los parámetros serie deben ser los mismos para todos los dispositivos conectados a una red
Modbus.
La selección del modo ASCII o RTU tiene que ver únicamente con redes Modbus standard. Define
los bits contenidos en los campos del mensaje transmitido en forma serie en esas redes. Determina cómo
debe ser empaquetada y decodificada, la información en los campos del mensaje.
En otras redes como MAP y Modbus Plus, los mensajes Modbus son situados en tramas sin
relación con la transmisión serie. Por ejemplo una solicitud para leer registros mantenidos (holding reg.)
puede ser manejada entre dos controladores en Modbus Plus, con independencia de la configuración
actual de los puertos serie Modbus de ambos controladores.
Modo ASCII
Cuando los controladores se configuran para comunicar en una red Modbus según el modo ASCII
(American Standard Code for Information Interchange), cada byte – 8 bits - en un mensaje se envía como
dos caracteres ASCII. La principal ventaja de este modo es que permite intervalos de tiempo de hasta un
segundo entre caracteres sin dar lugar a error.
El formato para cada byte en modo ASCII es:
Sistema de codificación: Hexadecimal, caracteres ASCII 0-9, A-F. Un carácter hexadecimal
contenido en cada carácter ASCII del mensaje.
Bits por byte: 1 bit de arranque. 7 bits de datos, el menos significativo se envía primero. 1 bit
para paridad Par o Impar; ningún bit para No paridad. 1 bit de paro si se usa paridad; 2 bits si no
Campo de Comprobación de error: se usa paridad. Comprobación Longitudinal Redundante
(LRC).

Trama del protocolo MODBUS en ASCII.

Modo RTU
Cuando los controladores son configurados para comunicar en una red Modbus usando el modo RTU
(Remote Terminal Unit), cada byte de 8 bits en un mensaje contiene dos digitos hexadecimales de 4 bits.
La principal ventaja de este modo es que su mayor densidad de carácter permite mejor rendimiento que
el modo ASCII para la misma velocidad. Cada mensaje debe ser transmitido en un flujo continuo.
El formato para cada byte en modo RTU es:
Sistema de codificación: Binario 8-bits, hexadecimal 0-9, A-F. Dos digitos hexadecimales contenidos en
cada campo de 8 bits del mensaje.
Bits por byte: 1 bit de arranque. 8 bits de datos, el menos significativo se envía primero. 1 bit para
paridad Par o Impar; ningún bit para No paridad. 1 bit de paro si se usa paridad; 2 bits si no se usa
paridad.
Campo de Comprobación de error: Comprobación Cíclica Redundante (CRC).
Trama del protocolo MODBUS en RTU.

PROTOCOLO LONWORK

LONWorks es un estándar propietario desarrollado por la empresa Echelon. El estándar ha sido


ratificado por la organización ANSI como oficial en Octubre de 1999 (ANSI/EIA 709.1-A-1999).

El estándar LONWork se basa en el esquema propuesto por LON(Local Operating Network). Este
consiste en un conjunto de dispositivos inteligentes, o nodos, que se conectan mediante uno o más
medios físicos y que se comunican utilizando un protocolo común. Por inteligente se entiende que cada
nodo es autónomo y proactivo, de forma que puede ser programado para enviar mensajes a cualquier
otro nodo como resultado de cumplirse ciertas condiciones, o llevar a cabo ciertas acciones en respuesta
a los mensajes recibidos.

Un nodo LON se puede ver como un objeto que responde a varias entradas y que produce unas
salidas. El funcionamiento completo de la red surge de las distintas interconexiones entre cada uno de
los nodos. Mientras que la función desarrollada por uno de los nodos puede ser muy simple, la
interacción entre todos puede dar lugar a implementar aplicaciones complejas. Uno de los beneficios
inmediatos de LON es que un pequeño número de nodos pueden realizar un gran número de distintas
funciones dependiendo de cómo estén interconectados.

LONWorks utiliza para el intercambio de información (ya sea de control o de estado) el protocolo
LonTalk. Este tiene que ser soportado por todos los nodos de la red. Toda la información del protocolo
está disponible para cualquier fabricante.

PROTOCOLO LONTALK

LonTalk ha sido creado dentro del marco del control industrial por lo que se enfoca a funciones de
monitorización y control de dispositivos. Dentro de este marco se han potenciado una serie de
características:

 Fiabilidad: El protocolo soporta acuso de recibo (acknowledgments) extremo a extremo con


reintentos automáticos.
 Variedad de medios de comunicación: tanto cableado como radio. Entre los que están
soportados: Par trenzado, red eléctrica, radio frecuencia, cable coaxial y fibra óptica.
 Tiempo de Respuesta: Se utiliza un algoritmo propietario para predicción de colisiones que
consigue evitar la degradación de prestaciones que se produce por tener un medio de acceso
compartido.
 Bajo coste de los productos: Muchos de los nodos LON son simples dispositivos como
interruptores o sensores. El protocolo ha sido diseñado para poder ser implementado en un
único chip de bajo coste.

Para simplificar el enrutamiento de mensajes, el protocolo define una jerarquía de direccionamiento que
incluye dirección de dominio, subred y nodo. Cada nodo está conectado físicamente a un canal. Un
dominio es una colección lógica de nodos que pertenecen a uno o más canales. Una subred es una
colección lógica de hasta 127 nodos dentro de un dominio. Se pueden definir hasta 255 subredes dentro
de un único dominio. Todos los nodos de una subred deben pertenecer al mismo canal, o los canales
tienen que estar conectados por puentes (bridges). Cada nodo tiene un identificador de 48-bits único,
asignado durante la fabricación, que se usa como dirección de red durante la instalación y configuración.
La tabla siguiente resume la jerarquía de red:

Subredes por dominio: 255

Nodos por subred: 127

Nodos por dominio: 32,385

Grupos por dominio: 255

Nodos por grupo: 63

Numero de dominios: 281,474,976,710,656

LonTalk es un estandar abierto que puede ser implementado por cualquier fabricante de circuitos
integrados. En la realidad el chip que se utiliza es el denominado Neuron, fabricado por Cypress, Toshiba
y Motorola.

Variables de Red (Network Variables):

La comunicación entre nodos se completa con las variables de red. Cada nodo define una serie de
variables de red que puede ser compartidas por los demás nodos. Cada nodo tiene variables de entrada y
de salida, que son definidas por el desarrollador.

Siempre que el programa que se ejecuta en un nodo escribe un nuevo valor en una de sus variables
de salida, este se propaga a través de la red a todos los nodos cuyas variables de entrada estén
conectadas a esta variable de salida. Todas estas acciones están implementadas dentro del protocolo.
Sólo se podrán ligar variables de red que sean del mismo tipo.

Esta forma de comunicación es orientada a datos(eventos), encontraste a la comunicación orientada


a comandos.
Para guardar la interoperatibilidad entre productos de distintos fabricantes, se definen las variables
a partir de una definición de tipos estándar (Standard Network Variable Types). Echelon mantiene una
lista de unos 100 tipos accesible a cualquier fabricante. La dirección web de la lista es

www.lonmark.org/products/guides.htm.

En la siguiente tabla se muestran ejemplos de tipos SNVT.

 
Variable Type Units

Temperature Temperature

Relative Humidity Percent

Switch State Boolean

Device State Boolean

Day of Week Enumerated List (Mon-Sun)

Real Time MM, DD,YYYY

Elapsed Time Seconds, Milliseconds, Days or Hours

Event Count Counts

% of Full Scale Percent

Alphanumeric ASCII characters

Alphanumeric Kanji characters

Alphanumeric International characters

Energy Kilowatt-Hours
Power Watts

Voltage DC or AC RMS

Current Amps AC, RMS

Phone State Enumerated List (On-hook, off-hook, busy, ringing,


etc.)

Resistance Ohms

Volume Gallons, CCF, liters

Flow Gallons or liters/hour

Weight Kilograms, Lbs.

Speed Miles or Km/hour

Pressure Lbs./sq.in, Pascals, Inches-Hg

Sound level dBrnc

Voltage dB microvolts

Componentes de una red LONWork, Se pueden distinguir dos partes:

o Transmisor LONWork (Transceivers): Estos dispositivos sirven de interfase


entre el chip Neuron y el medio físico. Dependiendo del medio físico la velocidad de
transmisión y topología es distinta
o Circuito Integrado Neuron: Es el corazón de la tecnología LONWork.
Contiene toda implementación del protocolo LonTalk. Cada CI Neuron tiene tres
procesadores de 8-bit, dos dedicados al protocolo y un tercero a la aplicación del nodo.

Estructura de una red LONWork completa


SOPORTE TÉCNICO:

Los desarrolladores de LONWork tiene a su disposición lenguaje para programar el CI Neuron,


llamada Neuron C, que es una extensión de C ANSI.

Para la configuración e instalación de dispositivos LONWork se incluye una herramienta sobre


Windows, ICELAN-G, que permite realizar fácilmente las ligaduras de las variables de entrada/salida de
un nuevo nodo con las variables de los ya existentes.

S-ar putea să vă placă și