Vous êtes sur la page 1sur 10

Cdigo:

GESTIN DE LABORATORIOS
Versin:

TELECOMUNICACIONES - PRACTICA No 2 Pgina 1 de 10

GUA PRCTICA N2: USO DEL PROTOCOLO ETHERNET (IEEE


802.3) Y COMUNICACIN DENTRO DE UNA RED LAN

1. INTRODUCCIN

En esta gua se abordarn de manera breve los conceptos de Ethernet, redes LAN, y
algunos protocolos y configuraciones necesarias para la comunicacin entre
dispositivos dentro de una red. Tambin mostrar una utilidad del protocolo Ethernet
en el Internet de las Cosas (IdC o IoT por sus siglas en ingls) por medio de
ARDUINO y la librara Ethernet.h.

2. OBJETIVOS
Analizar los conceptos bsicos de la comunicacin Ethernet.
Identificar los protocolos principalmente utilizados en una red Ethernet.
Mostrar la importancia de la comunicacin Ethernet y los protocolos
involucrados en le Internet de las Cosas.

3. ANTECEDENTES

El protocolo Ethernet tiene su origen en los aos 70 con la idea base de una conexin
en la que cada equipo, conectado a una red de comunicacin:
Verifique si el canal est libre antes de enviar su trama de datos, por un tiempo
establecido.
Esperar en caso de detectar que el canal se encuentra ocupado.
En caso de detectar colisiones en el canal, detener todas las comunicaciones,
limpiar el canal y reenviar la trama.
Este modo de comunicacin se conoce como Acceso Mltiple con Deteccin de
portadora y Deteccin de Colisiones o CSMA/CD (Carrier Sense Multiple Acces / Collision
Detection) y sigue siendo la base de la comunicacin por Ethernet.
Los protocolos Ethernet e IEEE 802.3 no son el mismo, pero tienen tantas similitudes que
suelen asociarse mutuamente. Estos protocolos son los que definen las especificaciones
del cable que se utiliza para la conexin Ethernet (Cable UTP) adems de ser uno de los
protocolos utilizados en la capa 2 del Modelo OSI y el Modelo TCP/IP.
Los Modelos OSI y TCP/IP son una manera de caracterizar las funciones de los sistemas
de comunicacin en trminos de capas, donde los protocolos que desempean tareas
similares se encuentran en la misma capa.
Cdigo:
GESTIN DE LABORATORIOS
Versin:

TELECOMUNICACIONES - PRACTICA No 2 Pgina 2 de 10

Figura 1. Modelos OSI y TCP/IP. Imagen tomada de [1]

Los protocolos en los que hace nfasis esta gua son: Ethernet, MAC, IP y HTTP
Ethernet, como anteriormente se mencion, adems de ser un estndar para el cableado
fsico, es un protocolo de capa 2 (Enlace de datos) que define la estructura de las tramas
que se transportarn por dicho cableado. Estas tramas estn conformadas por un
segmento de encabezado que determina el inicio de la trama, una direccin de origen y
una de destino que identifican a los dispositivos involucrados en la comunicacin, un
segmento de tipo de dato que se utiliza para definir algunos protocolos que viajarn a
travs de la red, el segmento que contiene los datos que se van a transportar y un
segmento CRC utilizado para verificar la integridad de la informacin allegar a su destino.

Figura 2. Trama de Ethernet. Imagen tomada de [3]


Cdigo:
GESTIN DE LABORATORIOS
Versin:

TELECOMUNICACIONES - PRACTICA No 2 Pgina 3 de 10

Figura 3. Direccin fsica (MAC) y direccin IPv4.

MAC significa Media Acces Control, y es un nmero nico de identificacin de la tarjeta


fsica de red (Recuadro azul de la figura 3), que le permite al dispositivo conectarse a la
misma, tambin es llamada direccin fsica. Se conforma por 6 pares de dgitos
hexadecimales separados por un guion o un punto (XX-XX-XX-XX-XX-XX o
XX.XX.XX.XX.XX.XX). Se utiliza para controlar el acceso de los dispositivos al canal de
comunicacin en la capa de enlace de datos.
IP (Internet Protocol) es un protocolo de la capa de red que proporciona una direccin
lgica a cada equipo dentro de una red de rea local para facilitar su identificacin
(Recuadro verde de la figura 3). De este protocolo existen las versiones IPv4 e IPv6, pero
para el contenido de esta gua el enfoque ser en la primera. El protocolo IP versin 4
utiliza una direccin de 32 bits dividida en cuatro grupos de 8 bits representados en
notacin decimal (XXX.XXX.XXX.XXX). Dentro del tema del protocolo IP existe algo
llamado Puerta de enlace predeterminado, que es la direccin IP perteneciente al
dispositivo enrutador de la red LAN, es decir, el que proveer el acceso a internet, pero
ese tema no pertenece a esta gua.
HTTP (HiperText Transfer Protocol) es un protocolo utilizado para la transferencia de
informacin a travs de internet, aunque tambin se puede utilizar dentro de una red
privada. Requiere de un servidor que tenga almacenada la informacin que se desea
mostrar en la pgina web y un cliente que tendr acceso remoto a esta informacin (por
medio de un navegador web como Chrome, Mozilla, Opera, etc.).
Cdigo:
GESTIN DE LABORATORIOS
Versin:

TELECOMUNICACIONES - PRACTICA No 2 Pgina 4 de 10

4. DESARROLLO
4.1. ACTIVIDAD:

Figura 4. Ethernet Shield W5100 para Arduino. Imagen tomada de [5]

Para poder conectar la placa ARDUINO UNO a la red por medio del protocolo Ethernet,
se har uso de una placa Ethernet (Figura 4) especialmente diseada para Arduinos. Esta
placa y la librera Ethernet.h (ya incluida en el entorno de programacin), son las que
nos permitirn conectar el microcontrolador a la red.
Como la placa Ethernet est diseada para la conexin con una amplia variedad de
placas Arduino, la conexin con la placa ARDUINO UNO es sencilla, ya que los pines de
conexin de la placa Ethernet encajan con precisin en los pines del microcontrolador. En
los pines 8 y GND de la placa Ethernet se conectar un LED, que ser nuestro actuador
controlado desde la pgina web.
La conexin entre el microcontrolador y el computador se har por medio de un cable
USB y la conexin de la placa Ethernet con la red se har a travs de un cable de
Ethernet.
Cdigo:
GESTIN DE LABORATORIOS
Versin:

TELECOMUNICACIONES - PRACTICA No 2 Pgina 5 de 10

Figura 5. Conexin del Ethernet Shield a una placa ARDUINO UNO. Imagen tomada de [5]

Se programar el microcontrolador para sea un servidor HTTP, que ser la herramienta


que permitir subir la pgina web que se disee a la red, para que los dems dispositivos
dentro de esa misma red puedan verla.

Figura 6. Asignacin de direccin IP y direccin MAC para el ARDUINO UNO.

Como se muestra en la figura anterior, se deben configurar tanto la direccin MAC como
la IP para poder establecer una conexin en una red LAN. Como cada direccin MAC es
nica, cada uno debe ponerle su propia direccin al Arduino, conformada por seis pares
de nmeros hexadecimales que remplazarn a los puntos de la variable mac[ ]. La red a
la que se conectarn los Arduinos corresponde a la 168.176.120.XXX que es un
Cdigo:
GESTIN DE LABORATORIOS
Versin:

TELECOMUNICACIONES - PRACTICA No 2 Pgina 6 de 10

fragmento de la red de la Universidad, donde XXX se recomienda que sea un nmero


entre 100 y 250. Cada placa debe tener una direccin IP diferente, donde los tres
primeros conjuntos numricos deben ser los mismos para todos los dispositivos y as
poder conectarlos todos a la misma red. Estos nmeros remplazarn a las XXX del
comando IPAddress ip(XXX,XXX,XXX,XXX).
Como ya se mencion, el ARDUINO UNO trabajar como servidor web, por lo que
necesita ser configurado como tal. El primer comando para esta configuracin es
EthernetServer servidor(80), que le dice al microcontrolador que debe utilizar el puerto
80 de la interfaz Ethernet como puerto de comunicacin para el protocolo HTTP y as
funcionar como servidor web.
Las dems configuraciones corresponden, a la salida digital que se controlar desde la
pgina web y dos variables tipo String que se utilizarn ms adelante para poder
desarrollar la pgina web.

Figura 7. Configuracin inicial de la placa ARDUINO UNO.

Luego de la declaracin inicial de variables, se deben poner a trabajar las funciones de la


librera Ethernet.h que permitirn conectar al microcontrolador a la red. Con el comando
Ethernet.begin(mac, ip) se inicia el proceso de conexin de la placa a la red LAN,
mientras que con el comando servidor.begin() se da inicio a la funcin que le da atributos
de servidor al microcontrolador. Los otros tres comandos, ya vistos anteriormente, se
utilizan para declarar el pin 8 como salida digital con un voltaje inicial de 5 voltios, y darle
un valor inicial a una variable tipo String.
El cdigo del void loop(), que, como ya es sabido, es el que se ejecutar
permanentemente se divide en dos partes. La primera contiene los comandos que se
reciben del cliente HTTP, de donde se extraern las rdenes que harn encender y
apagar el pin que se desea controlar; la segunda parte consiste en los comandos de
respuesta que el servidor le enva al cliente web. Las dos partes solo se pueden ejecutar
cuando el servidor haya recibido exitosamente la solicitud del cliente acerca de la pgina
web.
Cdigo:
GESTIN DE LABORATORIOS
Versin:

TELECOMUNICACIONES - PRACTICA No 2 Pgina 7 de 10

Figura 8. Cdigo de condicionales que controlarn el pin desde la pgina web.

Primeramente, se crea un elemento llamado cliente, con el cual se manipular la


informacin que se enva y se recibe de parte del cliente web (navegador de algn
computador en la misma red). Por medio de condicional if(cliente) se pregunta si el
servidor est disponible para establecer comunicacin con algn dispositivo que desee
pedirle informacin. El ciclo while(cliente.connected()), por un lado, establece la
comunicacin entre la placa ARDUINO UNO como servidor y algn computador cliente de
la red como cliente, y por otro lado, garantiza que mientras esta conexin est
establecida, los comandos para la comunicacin servidor-cliente se ejecutarn.
Ya en el interior del ciclo while(cliente.connected()), el condicional if(cliente.available())
pregunta si hay informacin recibida por la interfaz Ethernet, y si la hay recoge la
Cdigo:
GESTIN DE LABORATORIOS
Versin:

TELECOMUNICACIONES - PRACTICA No 2 Pgina 8 de 10

informacin carcter a carcter y la concatena en una variable llamada readString por


medio del comando readString.concat(). Las lneas siguientes a ese comando sondean
los caracteres recibidos en busca de una sub cadena especfica de caracteres. Si se
encuentra la sub cadena LED=F, se apaga el pin 8 de la placa y la palabra OFF se
guarda en una variable llamada State, y si se encuentra la sub cadena LED=T, se
enciende el pin 8 y en la variable State se guarda la palabra ON.

Figura 9. Comandos enviados al cliente con la informacin de la pgina web.

Esta segunda parte, que tambin va contenida el el ciclo while delq ue se habl
anteriormente, corresponde a la respuesta del servidor al cliente. Los tres primeros
comandos corresponden a una cadena de confirmacin exitosa de que la solicitud de
informacin se recibi correctamente. Los dems comandos corresponden a la estructura
de la pgina web.
Por ltimo, luego de entregar la informacin al cliente web, se termina la comunicacin
servidor-cliente con el comando cliente.stop() y se borra el contenido de la variable
readSting.
Como parte de la actividad debern buscar qu hace cada una de las comandos
contenidas en los comandos cliente.print() y cliente.println(). Ntese que la variable
State, de la que se habl en la primera parte del cdigo del void loop(), se utiliza entre
estas lneas.
Al cargar el cdigo en el ARDUINO UNO, si van al navegador y escriben la direccin IP
que le asignaron a su placa, le deber aparecer lo siguiente:
Cdigo:
GESTIN DE LABORATORIOS
Versin:

TELECOMUNICACIONES - PRACTICA No 2 Pgina 9 de 10

Figura 10. Vista final de la pgina web almacenada en la placa ARDUINO UNO.

Esta es la pgina que aparecer si se ha realizado correctamente el ejercicio y si aprietan


los botones, se encender o apagar, como es de esperarse, el pin 8 del ARDUINO UNO.

4.2. RETO:
Teniendo ya el conocimiento de cmo funciona la comunicacin entre el servidor y el
cliente web, modifique el cdigo para poder manipular 3 salidas digitales, con 3 (o ms si
los requiere) botones diferentes, desde una pgina diseada creativamente por usted.
Hay ciertos pines digitales, como el pin 13, que no se pueden utilizar en la placa Ethernet
mientras se est ejecutando el servidor web. Por qu cree usted que esto sucede?
________________________________________________________________________
________________________________________________
Cdigo:
GESTIN DE LABORATORIOS
Versin:

TELECOMUNICACIONES - PRACTICA No 2 Pgina 10 de 10

Adems del pin 13, Qu otros pines cumplen esta condicin?


_______________________________________________________________________
Ayuda: La gua ADQUISICIN DE VARIABLES ANALGICAS Y USO DEL
PROTOCOLO SPI le puede ayudar a responder esta pregunta.

5. REFERENCIAS

[1] MIKROTIK XPERTS. Modelo OSI y TCP/IP. Disponible en internet:


http://mikrotikxperts.com/index.php/informacion/conocimientos-basicos/14-
modelo-osi-y-tcp-ip

[2] TECNOLOGIA FCIL. QU ES ETHERNET? Disponible en internet:


http://tecnologia-facil.com/que-es/que-es-ethernet/

[3] Universidad Tecnolgica de la Mixteca. ETHERNET Y PROTOCOLOS


TCP/IPv4. Disponible en internet:
http://mixteco.utm.mx/~resdi/historial/materias/IPv4.pdf

[4] Herramientas WEB para la enseanza de PROTOCOLOSDE


COMUNICACIN. El protocolo HTTP. Disponible en internet:
http://neo.lcc.uma.es/evirtual/cdd/tutorial/aplicacion/http.html

[5] LUIS LLAMAS; INGENIERA INFORMTICA Y DISEO. CONECTAR A


INTERNET O LAN CON SHIELD ETHERNET W5100. Disponible en internet:
https://www.luisllamas.es/arduino-ethernet-shield-w5100/

Vous aimerez peut-être aussi