Sie sind auf Seite 1von 99

Proyecto Terminal

CONTROL INTELIGENTE Y MONITOREO VA WEB DE


ELEMENTOS ABITICOS MEDIANTE SISTEMA EMBEBIDO PIC PARA
UNA CASA HABITACIN

Que para obtener el grado de:


INGENIERO EN COMUNICACIONES Y ELECTRNICA


P R E S E N T A:

JUAN OCTAVIO IBARRA HERNANDEZ




ASESORES:

M. en C. DAVID VZQUEZ LVAREZ
M. en C GABRIELA SNCHEZ MELNDEZ




Mxico, D. F.

INSTITUTO POLITCNICO NACIONAL
Escuela Superior de Ingeniera Mecnica y Elctrica
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
INGENIERA EN COMUNICACIONES Y ELECTRNICA


NDICE
Objetivo General
Objetivos Especficos
Justificacin
CAPITULO I.
1. EDIFICIOS INTELIGENTES
1.1. Introduccin
1.1.1. Taxonoma de los edificios inteligentes
1.1.2. Sistemas domticos
1.2. Microcontroladores
1.2.1. Panorama General de los tipos de microcontroladores.
1.3. Gestin de los elementos abiticos de un edificio
CAPITULO II.
2. MICROCONTROLADORES PIC de Microchip
2.1. Panorama.
2.1.1. Familia de microcontroladores de 8 bits.
2.1.1.1. Gama base.
2.1.1.2. Gama media.
2.1.1.3. Gama media mejorada.
2.1.1.4. PIC18
2.1.2. Familia de microcontroladores de 16 bits.
2.1.2.1. PIC24F
2.1.2.2. PIC24H/ E
2.1.2.3. dsPIC30F
2.1.2.4. dsPIC33F/E
2.1.3. Familia de microcontroladores de 32 bits.
2.2. Microcontrolador PIC18F4550

INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
INGENIERA EN COMUNICACIONES Y ELECTRNICA


CAPITULO III.
3. DESARROLLO DEL PROYECTO
3.1. Introduccin
3.2. Seleccin del microcontrolador.
3.3. Controladores Ethernet
3.3.1. WIZ812MJ .
3.3.2. ENC28J 60.
3.3.2.1. Funcionamiento del ENC28J 60
3.4. Entorno de programacin: MPLAB IDE V8.83 y MPLAB X IDE V1.10.
3.4.1. Configuracin de un proyecto TCP/IP en MPLAB.
3.4.2. Programador PIC USB MiniPIC V2.2 Plus.
3.5. Entorno de simulacin.
3.6. Etapa de potencia.
3.6.1. TRIAC.
3.6.2. Relevador.
3.6.3. Detector de cruce por cero.
3.6.4. Dimmer.
3.7. Simulaciones con PIC18F45550
CAPITULO IV.
4. ANLISIS ECONMICO
4.1. Relacin de gastos materiales.
4.2. Costo de diseo.
4.3. Costo estimado de consumo elctrico del prototipo por mes.
4.4. Relacin costo / beneficio.
4.4.1. Impacto local en una ciudad habitacional del D.F.
CONCLUSIONES
BIBLIOGRAFA
ANEXOS
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
INGENIERA EN COMUNICACIONES Y ELECTRNICA
CONTROL INTELIGENTE Y MONITOREO VA WEB DE ELEMENTOS ABITICOS
MEDIANTE SISTEMA EMBEBIDO PIC PARA UNA CASA HABITACIN

Objetivo general
Disear el software y hardware para controlar y monitorear remotamente
mediante una aplicacin web los elementos abiticos de un espacio
cerrado, tal como la luminosidad, humedad, temperatura, flujo de aire
limpio, nivel de consumo de energa elctrica de electrodomsticos, as
como servicios bsicos de energa elctrica del hogar.
Objetivos Especficos
Disear y desarrollar una aplicacin web amigable con el usuario, de tal
forma que la interaccin sea fcil, de respuesta rpida e intuitiva a fin de
poder controlar sin complicaciones los diferentes servicios que se
encuentren conectados a la tarjeta controladora.
Establecer una conexin fiable libre de ruido entre el microcontrolador
PIC18F4550 y el controlador Ethernet ENC28J 60 (ambos de Microchip ),
mediante el protocolo SPI con el fin de optimizar el desempeo del trfico
generado en una red Ethernet.
Disear el sistema modular de pequeo tamao que permita fcil
integracin de sensores y actuadores al circuito para su comunicacin.









INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
INGENIERA EN COMUNICACIONES Y ELECTRNICA

Justificacin
Hoy en da la tendencia de las tecnologas de la informacin y de la
comunicacin (TIC) avanzan de forma muy rpida acorde a los requerimientos
de la poca, y lo hacen de forma tal que todos los das aparecen nuevas
aplicaciones para los distintos sistemas operativos que existen, sobre todo para
los sistemas operativos de los dispositivos mviles porttiles, como el caso de los
Smartphones, las tablets, iPads, etc. Las aplicaciones que surgen da a da son
cada vez ms portables y dan mayor movilidad al usuario, de tal forma que
actualmente este no necesita instalar una aplicacin para poder usarla, sino
que simplemente tiene que correrla desde algn servidor en internet, por lo que
la tendencia de estas tecnologas es centralizar los servicios, a manera de que
los usuarios no necesiten ms que un compacto dispositivo mvil y puedan
ejecutar aplicaciones con el toque de un solo dedo.
La intencin de desarrollar un prototipo con este enfoque de movilidad,
no solo es poder controlar a distancia el encendido o apagado de
electrodomsticos, ventiladores o luces, si no hacer ms fcil la vida de los
usuarios al tener de forma remota el control de un espacio, as como reducir el
impacto ambiental y los gastos econmicos que produce dejar encendidos las
luces o electrodomsticos en una casa.
Este proyecto tiene un enfoque local, e impacta directamente en la
reduccin de consumo de energa elctrica en una ciudad como el Distrito
Federal, ya que, al ser instalado en departamentos y viviendas de esta
metrpoli, el usuario puede interactuar remotamente con su hogar y monitorear
los niveles de consumo energtico del mismo con el objetivo de administrar de
forma eficiente el presupuesto para el pago de estos servicios bsicos
As mismo este mdulo puede tener otro tipo de aplicaciones sin sufrir una
modificacin en el diseo del hardware; por ejemplo:
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
INGENIERA EN COMUNICACIONES Y ELECTRNICA
En un hospital un doctor podra monitorear y controlar las condiciones
ambientales que requiere cada paciente de acuerdo a su tratamiento
nicamente estableciendo las condiciones deseadas en el modulo y recibir
alguna alerta cuando alguna cuando alguna de las condiciones no se est
llevando a cabo.
Otro ejemplo muy til de aplicacin para este modulo es un huerto,
principalmente si lo que se est cultivando son alimentos, ya que el modulo
contralara las condiciones ambientales que requiere cada planta, como la
cantidad de agua necesaria, el tiempo de exposicin a la luz requerida, la
temperatura idnea, el flujo de aire ptimo, etc. adems de notificar al usuario
mediante un correo, mensaje o alerta cuando se tengan que cosechar los
frutos sembrados.

Captulo I. Edificios Inteligentes


1
CAPITULO I. EDIFICIOS INTELIGENTES
1.1 Introduccin.
Con el objetivo de evitar confusiones a lo largo de este captulo, es
necesario definir domtica, ya que actualmente existen muchas formas
para referirse a las casas o edificios de carcter residencial o industrial, que
presenten automatizacin y/ o capacidad de procesamiento de datos.
Dependiendo de la regin es la forma de referirse a estos sistemas, por citar
algunos ejemplos tenemos: Sistemas domsticos (Home Systems),
automatizacin de viviendas (Home Automation), domtica (domotique),
inmtica, edificios inteligentes (Smart Buildings), casas inteligentes (Smart
Homes), etc.
La palabra Domtica viene del francs domotique, un trmino
inventado por los franceses en 1998. Dicha palabra est compuesta por 2
palabras, la primera procede del latn domus (casa) y la segunda de la
palabra francesa informatique (informtica) o segn otros autores
robotique (robtica), siendo aceptada hasta hace apenas algunos aos
en la Real Academia Espaola, quedando la definicin como:
Conjunto de sistemas que automatizan las diferentes instalaciones de
una vivienda.
1











1
http://buscon.rae.es/draeI/SrvltConsulta?TIPO_BUS=3&LEMA=domotica
Fig. 1.0 Sistemas que pueden automatizar una casa.

Captulo I. Edificios Inteligentes


2
Sin embargo dicha definicin se queda muy corta, y especialistas en
el tema alrededor del mundo consideran la siguiente definicin:
La Domtica se aplica a la ciencia y a los elementos desarrollados por ella
que proporcionan algn nivel de automatizacin o automatismo dentro de la casa,
pudiendo ser desde un simple temporizador para encender y apagar una luz o
aparato a una determinado, hasta los ms complejos sistemas capaces de
interactuar con cualquier elemento elctrico de la casa
2
, por ejemplo, el aire
acondicionado, puertas de apertura electrnica, luz, por citar algunos.
Hoy en da las empresas que se dedican al desarrollo de la
tecnologa que tiene un enfoque de automatizacin son ms proliferas
que en las dcadas anteriores, y este fenmeno se debe a una amplia
gama de necesidades en la industria a fin de mejorar distintos procesos,
como la gestin de personal, monitoreo de la produccin, automatizacin
de procesos productivos con el principal objetivo de reducir tiempo y
costos.




2
Jos Manuel H. (2007). Domtica. Edificios Inteligentes. Captulo I. Edificios Inteligentes y domtica (2-8).
Fig. 1.1 Interaccin con elementos de una casa.

Captulo I. Edificios Inteligentes


3
Ahora, si bien es cierto que la domtica va ms enfocada a los
edificios corporativos, plantas de produccin o grandes almacenes por
citar algunos ejemplos, tambin puede ser explotada en hospitales y
consultorios de atencin mdica especializada, ya que los pacientes
tienen que estar bajo ambientes controlados. En el caso de los
invernaderos, la domtica juega un papel clave, ya que la obtencin de
una cosecha de buena calidad, depende totalmente del sistema que
gobierne el proceso de riego, la iluminacin, flujo de aire y temperatura.
Para el caso de las zonas residenciales o conjuntos habitacionales, el
enfoque domtico est ms orientado a la seguridad del inmueble y el
confort del usuario.

1.1.1 Taxonoma de los edificios inteligentes.
Lo que hace inteligente a una casa o edificio es bsicamente el
sistema de gestin tcnica con el que cuente
el edificio; el que grado de inteligencia va en
funcin de acuerdo al nmero de sensores y
actuadores con los que se cuente instalados,
as como el grado de control y seguridad que
posea el sistema para simplificar la tarea de
mantenimiento y ser tolerante a fallos. Es por
ello que el sistema debe ser diseado de tal
forma que cumpla con lo siguiente:
Simple y fcil de utilizar.
Flexible
No obstante, desde el punto de vista tcnico, se pueden tener ms
caractersticas, tales como:
Facilidad de ampliacin.
Fig. 1.3 Sistema de gestin domtica.

Captulo I. Edificios Inteligentes


4
Posibilidad de preinstalacin del sistema en la fase de construccin.
Incorporacin de nuevas funciones.
Grado de estandarizacin e implantacin del sistema.
Variedad de elementos de control.
Control remoto desde dentro y fuera del edificio.
Facilidad de programacin del sistema.
Acceso a servicios externos.
Ms que ahondar en la clasificacin de edificios inteligentes, lo que
se pretende en este primer captulo es mostrar un panorama general y dar
apertura a una visin ms amplia de la Domtica. Sin embargo para ello
antes es necesario definir el concepto de edificio.
Un edificio es la obra de construccin cubierta que puede utilizarse de
manera independiente y que se ha construido con carcter permanente y sirve o
est pensado para la proteccin de personas, animales u objetos.
3

El artculo 3 de la Ley de Ordenacin de la edificacin, especifica
ampliamente los requisitos que debe cumplir una edificacin, desde la
forma, dimensiones, accesibilidad, servicios, seguridad estructural, higiene,
ahorro de energa, etc. Tomando dicho artculo como referencia se puede
decir que los edificios se pueden clasificar en 2 grupos:
A. Edificios residenciales (fig. 1.4).
B. Edificios no residenciales (fig. 1.5).







3
Ley de Ordenacin de la edificacin. Clasificacin de la tipologa de la construccin.
Fig. 1.4 Departamentos.
Fig. 1.5 Oficinas.

Captulo I. Edificios Inteligentes


5
En el caso de los edificios residenciales, son destinados bsicamente
para vivienda, debiendo cumplir como requisito que por lo menos la mitad
del edificio sea destinado para dicho fin. Por otro lado, los edificios no
residenciales son destinados para una amplia gama de propsitos,
pudiendo ser el de oficinas, hospedaje hotelero, etc.
En cualquiera de los 2 casos, si se pretende automatizar el edificio,
entonces la clasificacin quedara as:
Edificio automatizado.
Edificio domtico.
Edificio Inmtico.
Edificio Digital.
Edificio Ecolgico.
Edificio sostenible.
Edificio geobiolgico.
Edificio bioclimtico.
Bioconstruccin.
Edificio inteligente
Edificio con Inteligencia artificial.
De ambiente inteligente.
De medio ambiente.
Edificio urbtico.
1.1.2 Sistemas domticos.
Existen una gran diversificacin de sistemas de gestin en los edificios
inteligentes, esto se debe a que cada fabricante tiene sus propios sistemas
de gestin, unos con ms auge que otros.



Captulo I. Edificios Inteligentes


6
Aunque cada sistema sea diseado de manera distinta, tiene que
cumplir con ciertas normas y estndares, casi todos definidos en la capa 1
del modelo OSI, como son, dimensin y tipo de cable, conectores, niveles
de tensin para la transmisin de datos, tipo de seal, tipo de transmisin,
etc.
Algunos sistemas conocidos para la gestin de edificios son:
Sistemas Estndar
X-10
EIB
Lon Works
Sistemas Propietarios


Sistemas Propietarios
Biodom
Dialogo
Domaike
Domotel
Sistemas Propietarios
Algunos estndares relacionados a estos
sistemas estn basados en sistemas industriales, as
como Bluetooth, HomeRF, Sharewave, OSGi, UPNP,
UMTS, etc.
Entonces, un sistema de gestin para un edificio
queda demasiado sobrado para la gestin de una
casa, razn por la cual el sistema se tiene que
redisear o crear un sistema a la medida para la
casa, lo cual muestra el por qu este tipo de sistemas
son muy caros.
No obstante, si desde la planeacin de un conjunto habitacional se
pensara en la homologacin de sistemas domticos a implementar,
entonces el costo sera menor y los beneficios se veran reflejados a largo
plazo en una reduccin del impacto ecolgico al poder gestionar el
consumo elctrico.
Fig. 1.6 Ahorro

Captulo I. Edificios Inteligentes


7
1.2 Microcontroladores.
A diferencia de los microprocesadores, los microcontroladores son
prcticamente una computadora miniatura, ya que cuentan con un
procesador, memoria, puertos de entrada/ salida (E/ S) y perifricos.
Entonces, que diferencia habra entre la computadora y el
microcontrolador. La respuesta a ello
radica en el tipo de aplicacin, ya que
con la computadora no se puede hacer
lo mismo que con un microcontrolador,
es decir, el microcontrolador se usa en
aquellas aplicaciones donde una
computadora est muy sobrada, ya sea
por cuestiones de tamao, costo, peso,
etc.
Su uso es tan cotidiano, que se estima que por cada
microprocesador, se venden ms de 100 microcontroladores
4
y la
demanda ao con ao es mayor, lo que se refleja en la amplia gama de
variedad y clasificacin de acuerdo a su procesador, memoria, perifricos,
temporizadores, interrupciones, contadores, convertidores analgicos
digitales y digitales analgicos, puertos serie y otras caractersticas
adicionales como cantidad y tipo de instrucciones, protocolos de
transmisin de datos, etc.
La arquitectura bsica de un microcontrolador, as como su
estructura funcional, se muestra en la figura 1.8.

4
Microcontroladores PIC, Diseo Prctico de Aplicaciones 2da Parte PIC16F87x
Fig. 1.7 Microcontroladores

Captulo I. Edificios Inteligentes


8


Tanto las caractersticas como el funcionamiento de cada parte de
la arquitectura se van a explicar en el siguiente captulo donde se
pretende ahondar en el microcontrolador seleccionado para el desarrollo
del proyecto.
1.2.1 Breve Panorama de tipos de microcontroladores.
Como se mencion anteriormente, existe gran variedad de
microcontroladores en el mercado, por lo que la eleccin del mejor
microcontrolador para el desarrollo de este proyecto se vuelve compleja,
sobre todo si se tiene poca o nula experiencia en este campo.
No obstante, como primer filtro para la eleccin del
microcontrolador se puede considerar el costo del mismo, as como la
facilidad para conseguirlo, ya que de necesitar una reposicin se ahorra
tiempo y se asegura que los gastos sean bajos.


Fig. 1.8 Arquitectura bsica de un Microcontrolador

Captulo I. Edificios Inteligentes


9
Otro filtro puede ser la compatibilidad con el controlador Ethernet
que se implemente en este proyecto; es decir que para asegurar la
compatibilidad entre el microcontrolador y el controlador Ethernet es
recomendable que ambos dispositivos sean producidos por el mismo
fabricante. Los principales fabricantes de microcontroladores son:
Microchip.
Atmel.
Freescale.
Renesas.
ST.
SiLabs.
Maxim.
Infineon.
Fujitsu.
National Semiconductor.
Nec.
Texas Instruments.
NXP.
Toshiba.
OKI.
Zilog.
Sanyo.
Analog Devices.
Cyan.
Rabbit



Captulo I. Edificios Inteligentes


10
La taxonoma de los microcontroladores puede darse de distintas
formas siendo las ms comunes la clasificacin de acuerdo al set de
instrucciones (CISC y RISC) y al tamao del bus de datos:
4 bits
8 bits
16 bits
32 bits
Mientras ms grande sea el bus, las prestaciones del
microcontrolador son mejores, no obstante en el mercado predominan las
arquitecturas de 8 bits con una tendencia hacia los microcontroladores de
16 bits, mientras que los de 4 bits tienden a desaparecer, los de 32 bits son
usados en aplicaciones ms especficas que demandan mayor nmero de
recursos del microcontrolador.
La popularidad de los microcontroladores de 8 bits se debe a la
versatilidad que presenta dicha arquitectura as como la gama de
aplicaciones, donde la gran mayora de las veces queda sobrada una
arquitectura de 16 o 32 bits.
En este particular caso, el PIC utilizado es el PIC18F4550 de
Microchip, el cual tiene una arquitectura tipo
RISC Harvard de 16 bits con 8 bits de datos.
Dicha arquitectura es suficiente para la gestin
del dispositivo perifrico controlador de
Ethernet ENC28J 60 de Microchip .





Fig. 1.9 PIC18F4550

Captulo I. Edificios Inteligentes


11
1.3 Gestin de elementos abiticos de un edificio.
Partiendo de uno de los fundamentos bsicos del control que
establecen que:
Lo que no se puede medir, no se puede controlar
Lo que no se puede controlar, no se puede gestionar
Lo que no se puede gestionar, no se puede mejorar
Es necesario conocer todas aquellas variables que influyen de
manera directa o indirecta dentro de un sistema que pretende ser
controlado. Estas variables se conocen como elementos abiticos y son
todos aquellos factores que determinan el espacio fsico en el cual habitan
los seres vivos, tales como el agua, la temperatura, la luz, el pH, el suelo, la
humedad, el aire, etc.
Si se pueden medir estas variables, entonces el entrono se puede
mejorar. Para el caso de hortalizas automatizadas u hospitales de
especialidades, esto es de suma importancia ya que l mayora de las veces
las condiciones de estos dos espacios tienen que ser muy estrictas para
salvaguardar el bienestar de los seres vivos a los que resguardan.
Ahora bien, una de las soluciones propuestas para medir estos
factores mediante sensores y controlar las condiciones del medio a travs
de actuadores, es hacer uso de un computadora con un sistema modular
de sensores y actuadores conectados a los puertos que pueden llevar a
cabo esta tarea, son embargo el costo y el volumen ocupado est
sobrado para algunos casos, como los ambientes citados anteriormente.
Es por ello que la solucin a este problema es hacer uso de un
sistema embebido o encapsulado inteligente, lo que quiere decir que el
sistema mismo sea capaz de tomar decisiones con base a un criterio
establecido por el usuario.

Captulo I. Edificios Inteligentes


12
El costo es muy bajo ya que se disea a la medida y un mismo diseo
puede adaptarse a varias necesidades. En cuanto al volumen del modulo
principal, donde el corazn del circuito es un microcontrolador de montaje
superficial, difcilmente excede los 20 cm
2
.
Por otro lado, al ser un sistema modular, este puede adaptarse a
distintos espacios y se acopla fcilmente a los puertos del sistema.
Con la implementacin de esta solucin modular, se puede
prescindir de una persona que tenga que vigilar la temperatura de una
habitacin, la calidad del aire en un cuarto limpio, la luminosidad en un
invernadero, etc.


Captulo II. Microcontroladores PIC de Microchip.


13
CAPITULO II. MICROCONTROLADORES PIC de MICROCHIP .
2.1 Panorama.
Microchip Technology Inc. es un proveedor lder en
microcontroladores y semiconductores analgicos, proporcionando
desarrollo de productos de bajo riesgo, menor costo total de sistema y ms
rpido del mercado para miles de aplicaciones de diversos clientes en
todo el mundo. Con sede en Chandler, Arizona, Microchip ofrece un
sobresaliente soporte tcnico junto con una entrega confiable y calidad
1
.
La distribucin geogrfica del mercado de Microchip est
repartida de la siguiente manera
2
:

Fig. 2.0 Grfica de pastel de distribucin de mercado de Microchip.
As mismo cabe destacar que Microchip Technology Inc. es una
empresa lder en la venta de microcontroladores de 8 bits, siendo el
PIC16F84A el ms conocido, ya que gracias a la versatilidad y facilidad en
el desarrollo de aplicaciones sencillas, lleva muchos aos en el mercado
adems de tener gran soporte como en libros, blogs, videos, cursos, hojas
de especificaciones, talleres, etc.

1
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=72
Fecha de ltima consulta 05-05-2012
2
Microcontroladores Pic, Diseo Prctico de Aplicaciones 2da Parte PIC16F87x
43%
28%
29%
Distribucin de mercado de Microchip
Asia
Europa
Amrica

Captulo II. Microcontroladores PIC de Microchip.


14

Los microcontroladores de Microchip se clasifican de acuerdo al
tamao del bus de datos en tres grandes familias:


Fig. 2.1 Familias de microcontroladores PIC
3
.
2.1.1 Familia de microcontroladores de 8 bits.
Los microcontroladores de 8 bits de microchip ofrecen versatilidad en
el desarrollo de aplicaciones como accesorios de audio, perifricos de
videojuegos, dispositivos mdicos avanzados, instrumentos electrnicos de
medicin, etc., siendo esta familia la mejor eleccin para el desarrollo de
aplicaciones de bajo presupuesto.

3
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2551
Fecha de ltima consulta 05-05-2012
8 bits
Prestaciones Bajas / Medias
16 bits
Prestaciones Medias / Altas
32 bits
Prestaciones Altas

Captulo II. Microcontroladores PIC de Microchip.


15
Actualmente Microchip cuenta con 331 modelos distintos de
microcontroladores de 8 bits, los cuales se clasifican en cuatro categoras
dependiendo su arquitectura y prestaciones:

Arquitectura
gama base
Arquitectura
gama media
Arquitectura gama
media mejorada
Arquitectura PIC18
No. de pines 6 40 8 - 64 8 - 64 18 -100
Interrupciones No
Capacidad de una
sola interrupcin
Capacidad de
interrupcin con
ahorro de recursos de
hardware
Capacidad mltiple de
interrupcin con
ahorro de recursos de
hardware
Desempeo 5 MIPS 5 MIPS 8 MIPS Arriba de 16 MIPS
Instrucciones 33 de 12 bits 35 de 14 bits 49 de 14 bits 83 de 16 bits
Memoria de
programa
Arriba de 3 KB Arriba de 14 KB Arriba de 28 KB Arriba de 128 KB
Memoria de
datos
Arriba de 138
Bytes
Arriba de 368
Bytes
Arriba de 1.5 KB Arriba de 4 KB
Pila de
Hardware
2 niveles 8 niveles 16 niveles 32 niveles
Caractersticas
Comparador
ADC - 8 bits
Memoria de
datos
Oscilador
interno
Adems de la
gama base:
SPI/IC
UART
PWM
LCD
ADC - 8 bits
Amp. Op.
Adems de la gama
media:
Mltiples
perifricos de
comunicacin
Espacio de
programacin
lineal
PWM con base
tiempo
independiente
Adems de la gama
media mejorada:
Multiplicador de
Hardware 8x8
CAN
CTMU
USB
Ethernet
ADC - 12 bits
Informacin
relevante
El costo ms
bajo en el
menor tamao
Costo ptimo para
desarrollos de
calidad
Rentable con ms
rendimiento y ms
memoria
De alto rendimiento,
optimizado para la
programacin en C con
perifricos avanzados
Total de
dispositivos
18 66 46 201
Familias
PIC10, PIC12,
PIC16
PIC12, PIC16 PIC12FXXX, PIC16F1XX PIC18
Tabla 2.0 Comparativa de de microcontroladores PIC de Microchip de 8 bits
4
.

4
http://www.microchip.com/pagehandler/en-us/family/8bit/architecture/home.html
Fecha de ltima consulta 05-05-2012

Captulo II. Microcontroladores PIC de Microchip.


16
Los microcontroladores de 8 bits tienen buses de instrucciones y
datos separados, lo que les permite el acceso simultneo tanto a datos
como a instrucciones. Adems, tienen una EEPROM disponible para datos
que deben ser guardados en operaciones de ultra-bajo consumo o
consumo cero. As mismo, cuentan con un conjunto de herramientas
unificado para todos los ncleos de esta familia.
2.1.1.1 Gama base.
Tambin conocida como gama baja, es la que predomina en el
mercado a nivel mundial debido a la excelente relacin costo / beneficio
que ofrece en el desarrollo de aplicaciones de bajo presupuesto, ya que
como se muestra en la tabla 2.0, la gama base utiliza palabras de
programa de longitud de 12 bits, con el objetivo de proveer al usuario final
las caractersticas y opciones necesarias para una reduccin mxima de
gastos y con ello obtener un trabajo de calidad.

Fig. 2.2 Diagrama a bloques de arquitectura de la gama base
5
.


5
http://www.microchip.com/pagehandler/en-us/family/8bit/architecture/baseline.html
Fecha de ltima consulta 05-05-2012

Captulo II. Microcontroladores PIC de Microchip.


17
2.1.1.2 Gama media.
Los microcontroladores pertenecientes a esta gama son el paso
evolutivo de los dispositivos de gama baja, ya que incorporan una mejora
significativa tanto en el rendimiento como en las caractersticas.
Como se muestra en la figura 2.3, su arquitectura permite
instrucciones de longitud de 14 bits, permitiendo desarrollar aplicaciones
de mayor complejidad que demanden un nivel ms alto de control
integrado.
A pesar de contar con tan solo 35 instrucciones, el desarrollo de
aplicaciones robustas sigue siendo sencillo con los microcontroladores de
esta gama.

Fig. 2.3 Diagrama a bloques de arquitectura de la gama media
6
.




6
http://www.microchip.com/pagehandler/en-us/family/8bit/architecture/midrange.html
Fecha de ltima consulta 05-05-2012

Captulo II. Microcontroladores PIC de Microchip.


18
2.1.1.3 Gama media mejorada.
La gama media mejorada es un resultado evidente de la inversin en
investigacin y desarrollo de Microchip .
El desarrollo de los 46 microcontroladores que forman la gama media
mejorada se basan en la arquitectura de los dispositivos de la gama
media, adicionndoles un mayor rendimiento sin perjudicar la
compatibilidad entre ambas gamas con el objetivo de que el usuario
pueda migrar y expandir su proyectos de forma fcil y sencilla sin
necesidad de reescribir todo el cdigo fuente.

Fig. 2.4 Diagrama a bloques de arquitectura de la gama media mejorada
7
.




7
http://www.microchip.com/pagehandler/en-us/family/8bit/architecture/enhancedmidrange.html
Fecha de ltima consulta 05-05-2012

Captulo II. Microcontroladores PIC de Microchip.


19
2.1.1.4 PIC18.
Los PIC18 ocupan la jerarqua ms alta de los microcontroladores de
8 bits, ya que combinan en su arquitectura (fig. 2.5) la mxima integracin
y desempeo, tendiendo la capacidad de ejecutar ms de 16 MIPS. Es por
ello que esta gama va enfocada hacia proyectos ms especializados que
demandan gran cantidad de recursos, como controladores perifricos
avanzados de Ethernet, USB, CAN, CTMU, etc. As mismo, los PIC18 estn
optimizados para la programacin en C.


Fig. 2.5 Diagrama a bloques de arquitectura de la gama PIC18
8
.

8
http://www.microchip.com/pagehandler/en-us/family/8bit/architecture/pic18.html
Fecha de ltima consulta 05-05-2012
PIC18 Serie J
Adems de estar diseada con una
alta densidad de memoria, va
enfocadaaaplicacionestouch.
PIC18 Serie K
Proporciona el mximo desempeo
con tecnologa de ultra bajo
consumonanoWattXLP.

Captulo II. Microcontroladores PIC de Microchip.


20
2.1.2 Familia de microcontroladores de 16 bits.
La familia de microcontroladores Microchip de 16 bits cuenta con
un total de 270 PICs (262 modelos a la venta y 8 disponibles en muestras),
que se clasifican en 4 gamas distintas (fig. 2.6).
Debido a su arquitectura mejorada, estn orientados a aplicaciones
ms robustas donde los dispositivos de la familia de 8 bits se ven limitados.
Pueden alcanzar un desempeo de ms de 70 MIPS, adems de ofrecer a
los diseadores que estn familiarizados con las arquitecturas 8 bits, una
fcil transicin hacia esta familia de PIC's.
La gama completa de productos incluye desde la serie de
microcontroladores eXtreme
9
de ultra bajo consumo hasta los
microcontroladores digitales de seales de alto desempeo (dsPIC
DSCs).
Gracias a su facilidad de uso, es muy sencillo incorporar a los
proyectos del diseador aplicaciones tipo touch, LCD grfico, conversin
digital analgica de mayor precisin, energa inteligente, control digital de
motores, etc., as como conectividad que implemente protocolos USART,
I2C, SPI, CAN, LIN, entre otros.

9
http://www.microchip.com/pagehandler/en-us/technology/xlp/home.html
Fecha de ltima consulta 05-05-2012

Captulo II. Microcontroladores PIC de Microchip.


21

Fig. 2.6 Microcontroladores PIC de 16 bits.
2.1.2.1 PIC24F.
Las caractersticas de la arquitectura de esta gama de
microcontroladores lo hacen una opcin rentable, ya que tiene un
rendimiento de 16 MIPS adems de contar con varios dispositivos que
incorporan la tecnologa eXtreme de ultra bajo consumo de Microchip ,
con la cual el microcontrolador puede permanecer en estado de reposo
consumiendo una corriente de 20 nA., pudiendo operar en estado normal
en un rango de voltaje desde los 2.0 V hasta los 3.6 V en un rango de
temperatura que va desde los -40 C hasta los 85 C, 125 C y 150 C,
dependiendo el modelo.
16 MIPS
Operacin de 3.3 V
Arriba de 256 KB Flash
Arriba de 96 KB RAM
Encapsulados de ms
de 100 pines
PIC24F
C ultrabajo
consumo
40 a 70 MIPS
Operacin de 3.3 V
Arriba de 536 KB Flash
Arriba de 52 KB RAM
Encapsulados de ms
de 144 pines
PIC24H/E
C de ms alto
desempeo
30 MIPS
Operacin de 5 V
Arriba de 4KB EEPROM
Perifricos para control
de motores
dsPIC30F
40 a 70 MIPS
Operacin de 3.3 V
Arriba de 536 KB Flash
Arriba de 52 KB RAM
Encapsulados de ms
de 144 pines
dsPIC33F/E
DSP de ms alto
desempeo

Captulo II. Microcontroladores PIC de Microchip.


22
Con un total de 91 microcontroladores distintos, esta gama incluye
USB OTG
10
para funcionar como host USB, hardware que permite la
incorporacin de perifricos con tecnologa touch adems de un
controlador de grficos integrado para aplicaciones con interfaz grfica.

Fig. 2.7 Diagrama a bloques de arquitectura de la gama PIC24F
11
.
2.1.2.2 PIC24H/E.
La gama PIC24H y PIC24E incluyen a los microcontroladores que
poseen el ms alto rendimiento de la familia de 16 bits, al tener la
capacidad de poder ejecutar arriba de 70 MIPS, operando a tan solo 3.3 V
con una arquitectura que les permite realizar ciclos simples de ejecucin y
rpidas interrupciones.




10
http://www.usb.org/developers/onthego/
11
http://www.microchip.com/pagehandler/en-us/family/16bit/architecture/pic24f.html
Fecha de ltima consulta 05-05-2012

Captulo II. Microcontroladores PIC de Microchip.


23
La gama PIC24H incluye 28 modelos distintos, mientras que la gama
PIC24E cuenta con un total de 13 microcontroladores, de los cuales 11
estn a la venta en el mercado y 2 continan disponibles solo en muestras,
sumando un total de 41 dispositivos que ofrecen un desempeo superior
en la conversin analgico digital (ADC de 12 bits) adems de contar con
soporte para aplicaciones automotrices como la comunicacin CAN
donde algunos microcontroladores son capaces de operar a una
temperatura de 150 C. As mismo su arquitectura (fig. 2.8) cuenta
amplificadores operacionales integrados, bus para control de motores, USB
OTG, interfaz para pantalla grfica, entre otros.

Fig. 2.8 Diagrama a bloques de arquitectura de la gama PIC24H/E
12
.
2.1.2.3 dsPIC30F.
Los procesadores digitales de seales o DSP (por sus siglas en ingls)
de la gama dsPIC30F combinan el rendimiento de DSP con la simplicidad
de un microcontrolador.

12
http://www.microchip.com/pagehandler/en-us/family/16bit/architecture/pic24h.html
Fecha de ltima consulta 05-05-2012

Captulo II. Microcontroladores PIC de Microchip.


24
Esta gama de DSP conformada por 24 modelos distintos disponibles a
la venta en el mercado, est pensado para sistemas que operen en un
rango de voltaje de 2.5 V. a 5.5 V a temperaras que van desde los 40 C
hasta los 85 C o 125 C, con modos de operacin de ultra bajo consumo
dependiendo el modelo.
Adems de tener un desempeo de 30 MIPS, los dsPIC30F entre otras
caractersticas cuentan con un acumulador de 40 bits, perifricos para
control de motores, ADCs de 10 y 12 bits, soporte para algoritmos
avanzados para aplicaciones de tratamiento de voz y seales de audio.

Fig. 2.9 Diagrama a bloques de arquitectura de la gama dsPIC30F
13
.






13
http://www.microchip.com/pagehandler/en-us/family/16bit/architecture/dspic30f.html
Fecha de ltima consulta 05-05-2012

Captulo II. Microcontroladores PIC de Microchip.


25
2.1.2.4 dsPIC33F/E.
La jerarqua ms alta de la familia de 16 bits est conformada por los
dispositivos de la gama dsPIC33F y dsPIC33E, los cuales son los DSPs de ms
alto rendimiento al tener un desempeo de 70 MIPS. Estn diseados para
aplicaciones de filtros digitales y ciclos de control de alta velocidad,
adems de procesamiento digital de voz y seales de audio.
La gama dsPIC33F cuenta con una variedad de 76 modelos, a
diferencia de la gama dsPIC33E que ofrece 38 modelos, de los cuales solo
6 estn disponibles como muestra, sumando un total de 114 dispositivos los
cuales integran en su arquitectura perifricos para control de motores de
precisin y de alto rendimiento, fuentes de alimentacin digitales,
perifricos con alta resolucin para PWM, adems de convertidores
analgico digital y comparadores de alta resolucin.

Fig. 2.10 Diagrama a bloques de arquitectura de la gama dsPIC33F/E
14
.


14
http://www.microchip.com/pagehandler/en-us/family/16bit/architecture/dspic33f.html
Fecha de ltima consulta 05-05-2012

Captulo II. Microcontroladores PIC de Microchip.


26
2.1.3 Familia de microcontroladores de 32 bits.
La familia de 32 bits ofrece microcontroladores de un rendimiento
superior con todas las herramientas necesarias para desarrollos de
proyectos complejos o implementacin de sistemas encapsulados,
adems de kits de desarrollo especializado o de propsito general, con el
objetivo de facilitar el trabajo al diseador.
Al igual que las familias de 8 bits y 16 bits, la plataforma MPLAB es el
entorno de desarrollo para todo el portafolio de productos de la familia de
32 bits. As mismo, los PIC32 mantienen compatibilidad de pines en algunos
modelos de la familia de 16 bits, lo cual ha acortado su salida al mercado,
permitiendo el crecimiento de nuevos desarrollos basados en estos ncleos
de 32 bits, que tienen como caractersticas principales un incremento
significativo en la potencia de procesamiento al tener un rendimiento de
1.65 DMIPS o 183 Coremarks , 80 MHz de bus interno y cach, aumento
de memoria (arriba de 512 KB Flash y 128 KB de SRAM), control
encapsulado para multitareas y ms perifricos especializados como:
USB de alta velocidad para modo Host/ Dispositivo/ OTG.
Dos puertos CAN 2.0.
Seis puertos UART.
Cinco puertos I2C.
Cuatro puertos I2C.
CMTU (para aplicaciones touch) e I2S (para aplicaciones de audio).
Interfaces de usuario para grficos de alto impacto.
Puerto Ethernet.
Puerto del alto desempeo para aplicacin de Audio.
El rango de temperatura en el que pueden operar los PIC32 va
desde los -40 C hasta los 105 C.


Captulo II. Microcontroladores PIC de Microchip.


27

Fig. 2.11 Diagrama a bloques de arquitectura de la Familia de Cs de 32 bits
15
.
2.2 Microcontrolador PIC18F4550.
El PIC18F45550 es un microcontrolador de 40 terminales
(encapsulado PDIP, fig. 2.13) que pertenece a la gama PIC18F de la familia
de microcontroladores de 8 bits. Su arquitectura es del tipo Harvard con un
procesador tipo RISC y cuenta con un total de 83 instrucciones de longitud
de 16 bits. Su precio en el mercado es de $ 3.65 dlares
16
.

Fig. 2.12 Arquitectura tipo hardvard.

15
http://www.microchip.com/pagehandler/en-us/family/32bit/architecture.html
16
http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=1004&mid=10&lang=en&pageId=74
Fecha de ltima consulta 05-05-2012

Captulo II. Microcontroladores PIC de Microchip.


28
Su frecuencia de operacin con reloj interno puede programarse
para operar desde los 125KHz hasta los 4MHz, mientras que con oscilador
externo o un cristal de alta velocidad, puede operar desde 4MHz hasta
48MHz.
Este dispositivo cuenta una memoria de programa del tipo flash de
32,768 bytes que se refleja en una capacidad de almacenamiento de
16,384, (tambin pueden almacenarse datos y constantes); puede ser
leda o escrita durante la ejecucin o mediante un lector externo. Tambin
posee una memoria RAM interna de datos de 2,048 bytes donde se
incluyen los registros de funciones especiales; al igual que la memoria de
programa, puede ser leda o escrita en tiempo de ejecucin. As mismo,
este dispositivo incluye una memoria EEPROM de datos de 256 bytes, que
tambin tiene capacidad de lectura y escritura en tiempo de ejecucin.

Captulo II. Microcontroladores PIC de Microchip.


29

Fig. 2.13 PIC18F4550
17
.
El PIC18F4550 viene equipado con 20 fuentes de interrupciones de las
cuales 3 son interrupciones externas (INT0, INT1, INT2) y pueden priorizarse
mediante software.
Tambin cuenta con 4 temporizadores as como un mdulo de
comparacin/ Captura/ PWM y un mdulo de comparacin/ captura/ PWM
mejorado.
Soporta comunicacin MSSP (SPI, I2C) y USART mejorado (EUSART),
adems de contar con un canal para puerto USB y otro para puerto
paralelo de transmisin de datos (SPP). Cuenta con 13 canales para
conversin analgico-digital de 10 bits, as como 2 comparadores
analgicos. Finalmente, puede encontrase en 3 presentaciones diferentes:
PDIP (40 pines)
QFN (44 pines)
TQFP (44 pines)

17
Datasheet PIC18F4550 Versin DS39632C.

Captulo II. Microcontroladores PIC de Microchip.


30
Su arquitectura est diseada con un bus para la memoria de datos
con longitud de 12 lneas de direccin x 8 lneas de datos, as como un bus
de memoria de programa de 21 lneas de direccin y 16 lneas para envo
de instrucciones (o datos de 8 bits), logrando con ello, un acceso
simultneo a la memoria de datos y a la memoria de programa, ya que
sigue un proceso pipeline.
Las 40 terminales del PIC18F4550 se dividen en 5 Puertos
18
(fig. 2.14),
donde cada puerto est asociado a tres registros de configuracin: TRIS,
PORT y LAT. En el registro TRIS se define si las terminales de un puerto son
entradas o salidas. El registro PORT es un registro en el cual se puede leer
una terminal de entrada o se puede establecer un valor de salida,
dependiendo de los valores que tenga el registro TRIS del puerto
correspondiente. Finalmente el registro LAT sirve para leer o escribir un valor
del Latch de un puerto determinado.

Fig. 2.14 Puertos del PIC18F4550.




18
Datasheet PIC18F4550, versin DS39632C pg. 11.
7 Lneas de E/S.
Puerto A
8 Lneas de E/S.
Puerto B
6 Lneas de E/S +2 Lneas de solo E.
Puerto C
8 Lneas de E/S
Puerto D
3 Lneas de E/S +1 Lnea de solo E.
Puerto E

Captulo II. Microcontroladores PIC de Microchip.


31
La descripcin de las funciones que soporta cada una de las distintas
terminales de PIC18F4550, se describe a continuacin:

PUERTO A
RA0
AN0
E/S digital
Entrada analgica 0
RA1
AN1
E/S digital
Entrada analgica 1
RA2
AN2
VREF-
CVREF
E/S digital
Entrada analgica 2
Entrada de voltaje de ref. (-)
Salida analgica de ref. comparador
RA3
AN3
VREF+
E/S digital
Entrada analgica 3
Entrada de voltaje de ref. (+).
RA4
T0CKI
C1OUT
RCV
E/S digital
Entrada de reloj externo de Temp. 0
Salida de del comparacin 1
Entrada RCV transceptor USB
RA5
AN4
SS
HLVDIN
C2OUT
E/S digital
Entrada analgica 4
Entrada de seleccin de esclavo SPI
Entrada de deteccin de flancos
Salida de del comparacin 2
RA6 Entrada de oscilador principal y seal de reloj
Puerto B


















Puerto B
RB0
AN12
INT0
FLT0
SDI
SDA
E/S digital
Entrada analgica 12
Interrupcin externa 0
Entrada de fallo del modulo CCP1
Entrada de datos del SPI
E/S de datos I2C.
RB1
AN10
INT1
SCK
SCL
E/S digital
Entrada analgica 10
Interrupcin externa 1
Lnea de reloj del SPI
Lnea de reloj de I2C
RB2
AN8
INT2
VMO
E/S digital
Entrada analgica 8
Interrupcin externa 2
Salida de datos del USB (VMO)
RB3
AN9
CCP2
VPO
E/S digital
Entrada analgica 9
Lnea de E/S del CCP2
Salida de datos del USB (VPO)
RB4
AN11
E/S digital
Entrada analgica 11

Captulo II. Microcontroladores PIC de Microchip.


32
KBI0
CSSPP
Entrada de interrupcin por cambio de estado
del pin
Salida de CS del SSP
RB5
KBI1
PGM
E/S digital
Entrada de interrupcin por cambio de estado
del pin
Lnea de programacin PGM
RB6
KBI2
PGC
E/S Digital
Entrada de interrupcin por cambio de estado
del pin
Lnea de programacin PGC
RB7
KBI3
PGD
E/S digital
Entrada de interrupcin por cambio de estado
del pin
Lnea de programacin PGD
Puerto C
RC0
T1OSO
T13CKI
E/S digital
Salida del oscilador del Temp. 1
Entrada de contador de Temp. 1 y Temp. 3
RC1
T1OSI
CCP2
UOE
E/S Digital
Entrada del oscilador del Temp. 1
Lnea de E/S del CCP2
Salida OE del transceptor del USB (UOE)
RC2
CCP1
P1A
E/S digital
Lnea de E/S del CCP1
Salida PWM del ECCP1
RC4
D-
VM
E/S digital
Lnea (-) del bus USB
Lnea de entrad del USB (VM)
RC5
D+
VP
E/S digital
Lnea (+) del bus USB
Lnea de entrad del USB (VP)
RC6
TX
CK
E/S digital
Salida de Transmisin del EUSART
Lnea de reloj del EUSART
RC7
RX
DT
SDO
E/S digital
Entrada de recepcin del EUSART
Lnea de datos sncrona del EUSART
Salida de datos del SPI
Puerto D
RD0
SPP0
E/S digital
Lnea de datos del SPP
RD1
SPP1
E/S digital
Lnea de datos del SPP
RD2
SPP2
E/S digital
Lnea de datos del SPP
RD3
SPP3
E/S digital
Lnea de datos del SPP

Captulo II. Microcontroladores PIC de Microchip.


33
RD4
SPP4
E/S digital
Lnea de datos del SPP
RD5
SPP5
P1B
E/S digital
Lnea de datos del SPP
Salida PWM del ECCP1 (P1B)
RD6
SPP6
P1C
E/S digital
Lnea de datos del SPP
Salida PWM del ECCP1 (P1C)
RD7
SPP7
P1D
E/S digital
Lnea de datos del SPP
Salida PWM del ECCP1 (P1D)
Puerto E
RE0
AN5
CK1SPP
E/S digital
Entrada analgica 5
Salida de reloj 1 del SPP
RE1
AN6
CK2SPP
E/S digital
Entrada analgica 6
Salida de reloj 2 del SPP
RE2
AN7
OESPP
E/S digital
Entrada analgica 7
Salida de habilitacin del SPP
MCLR
VPP
RE3
Lnea de RESET externo
Lnea de programacin VPP
E digital






Captulo III. Desarrollo del Proyecto


34
CAPITULO III. DESARROLLO DEL PROYECTO
3.1 Introduccin.
Como bien se menciona en la justificacin de esta tesis, parte del
objetivo de desarrollar tanto el software como el hardware de un sistema
capaz de medir y controlar los factores abiticos de una casa habitacin.
Dichos factores son:
Temperatura
Humedad
Luminosidad
Calidad del aire
Consumo de gas
Consumo de agua
Esto con el objetivo de mantener el ambiente del edificio a ciertas
condiciones que requiere el usuario, tales como tener la cocina fra para
evitar que se echen a perder los alimentos, o una sala a temperatura
ambiente para la convivencia, o estudio iluminado para trabajo en casa o
tareas de escuela.
Para ello es imperativo que el desarrollo de la solucin adems de
ser eficiente y de calidad, debe invertir el mnimo de recursos tanto
materiales como no materiales adems de reutilizar circuitos que ya se
tienen de semestres pasados. De esta manera se asegura la mejor relacin
costo / beneficio, incrementando con ello la rentabilidad del proyecto.
Es por ello que antes de la realizacin del diseo del sistema, se
buscan los materiales de mayor eficiencia en el mercado, es decir,
aquellos que tengan caractersticas como:

Captulo III. Desarrollo del Proyecto


35

De esta manera se asegura que el diseo del sistema sea ptimo,
reduciendo los contratiempos por falta de materia prima.

3.2 Seleccin del microcontrolador.
Ya en el captulo II se da una amplia descripcin de los
microcontroladores Microchip , siendo el PIC18F45550 el corazn del
proyecto. No obstante, cabe destacar que durante las primeras pruebas
del desarrollo del prototipo se implement el microcontrolador
MSP430G2231 de Texas Instruments , el cual tiene un precio en el
mercado para venta al pblico que oscila entre los $1.62 y $2.11 dlares
1
.
Esto debido a trabajar bajo un esquema de ahorro y reutilizacin de
materiales, adems de que este microcontrolador pertenece a la serie de
ultra bajo consumo. Sin embargo, no se logr una correcta
implementacin, debido a los puntos que se mencionan a continuacin:
Memoria del microcontrolador insuficiente para alojar una pgina
web.

1
http://www.ti.com/general/docs/usercart.tsp?action=display
Fecha de ltima consulta 05-05-2012
Alta durabilidad. Precio bajo. Fcil de conseguir.
Amplio soporte
tcnico.
Facilidad de
manejo.
Compatibilidad
con los productos
de la competencia.
Fcil de
transportar.

Captulo III. Desarrollo del Proyecto


36
Memoria insuficiente para gestionar las funciones del controlador
Ethernet ENC28J 60.
Poco soporte y compatibilidad entre el MSP430G2231 de Texas
Instruments y controlador ENC28J 60 de Microchip .
Cdigo fuente demasiado extenso.









La eleccin de cambiar de la tecnologa de Texas Instruments a
Microchip se debe esencialmente a los siguientes puntos.
Amplio soporte tcnico en internet
Compatibilidad total entre el controlador ENC28J 60 y el
microcontrolador PIC18F4550 debido a que ambos pertenecen a
Microchip .
Mayor nmero de herramientas de programacin que reducen
considerablemente el tiempo y errores de sintaxis.
Capacidad de memoria suficiente para alojar una pgina web
sencilla.
Memoria suficiente para manejar las funciones del controlador
Ethernet ENC28J 60.
Memoria de programa suficiente para la gestin de otros
perifricos y funciones del microcontrolador.
Fig. 3.0 Microcontrolador MSP430G2231
Fig. 3.1 Logo de TI.

Captulo III. Desarrollo del Proyecto


37
Facilidad de programacin en C, debido a que Microchip ofrece
diversidad de funciones preestablecidas para la gestin de
perifricos.
Entorno de programacin ms sencillo y verstil (MPLAB ).






El PIC18F4550, a pesar de pertenecer a la familia de 8 bits, es ideal
para la realizacin de un prototipo de esta naturaleza. No obstante si se
desea implementar una pgina web ms elaborada, como la pila TCP/IP
que ofrece Microchip en su pgina de internet, entonces el desarrollador
definitivamente debe seleccionar un microcontrolador de la familia de 16
bits.
3.3 Controladores Ethernet.
Un controlador Ethernet para microcontroladores tiene como
objetivo expandir el horizonte de aplicaciones al ofrecer al diseador la
posibilidad de conectar sus proyectos a una red local o una red global
como internet. As mismo, se da pauta para que se desarrollen ms
aplicaciones de monitoreo (lectura de dispositivos de entrada como
sensores) y control remoto (ejecucin de dispositivos de salida como
actuadores), a travs de una pgina web, obteniendo con ello
portabilidad del proyecto al poder acceder por distintos medios como una
computadora de escritorio, una laptop, un telfono inteligente, una
tableta, una pantalla con conexin a internet o cualquier otro dispositivo
que soporte la navegacin web.
Fig. 3.2 Logo de Microchip .
Fig. 3.3 PIC18F4550.

Captulo III. Desarrollo del Proyecto


38
En Mxico es difcil encontrar a un proveedor cercano que venda
perifricos de esta naturaleza, ya que no existen fabricantes nacionales, lo
cual implica que la venta de estos dispositivos sea solo sobre pedido.
De todos los controladores que existen en el mercado hay 2 de
distintos fabricantes que tienen mucha popularidad en los foros de internet.
3.3.1 WIZ812MJ
El primero es el WIZ812MJ del fabricante Wiznet, el cual es til para
disear interfaces de red, adems de ofrecer una rpida implementacin
en tarjetas de desarrollo. Tiene como caractersticas principales:
Interfaz SPI.
Indicadores de estado de red.
Pila TCP/IP del modelo W5100.
Interface: 10/100 base-T Ethernet (auto-deteccin).
Soporte de protocolos TCP, UDP, IP, ARP, ICMP, IGMP, PPPoE, MAC
Voltaje de operacin de 3.3V con tolerancia de 5V Entrada/ Salida.
Compatibilidad con diversas marcas de microcontroladores
3.3.2 ENC28J60.
El otro controlador
2
es el ENC28J 60
3
de Microchip , el cual viene en
una presentacin para una fcil integracin a proyectos y tarjetas de
desarrollo. En el mercado puede encontrarse en distintas presentaciones,
siendo el fabricante Olimex el que ofrece entre otras caractersticas:
Diseo ms compacto en el mercado de controladores Ethernet.
Interfaz SPI.
Indicadores de estado de red.
Pila TCP/IP de microchip
Soporte de protocolos TCP, UDP, IP, ARP, ICMP, IGMP, PPPoE, MAC
Interface: 10/ 100 base-T Ethernet (auto-deteccin).

2
http://www.olimex.com/dev/enc28j60-h.html
3
http://www.saelig.com/product/ETH042.htm
Fecha de ltima consulta 12-05-2012

Captulo III. Desarrollo del Proyecto


39
Rango de operacin de 3.1 - 3.6 V y temperatura de -40 C a 80 C.
6 fuentes de interrupcin.
Amplio soporte en internet.
Herramientas adicionales para una rpida y sencilla configuracin.
Soporte de configuracin para las familias de 32 bits, 16 bits y 8 bits
(PIC18) de microcontroladores microchip.
Compatibilidad para los microcontroladores de otras marcas.









Aunque ambos son muy populares en el mercado, el ENC28J 60 es la
mejor opcin a elegir para este tipo de proyectos, ya que aunque su
precio oscila entre los $750.00 y $1,000.00 pesos M.N. (dependiendo del
tipo de cambio actual del dlar y del proveedor), tiene mayor soporte en
internet, sobre todo si se piensa en utilizar un microcontrolador de
Microchip , quien ofrece herramientas adicionales para la configuracin
de este perifrico.
3.3.2.1 Funcionamiento del ENC28J60
De acuerdo a la hoja de especificaciones, el ENC28J 60 es un
controlador Ethernet diseado para comunicar un microcontrolador con
una red Ethernet mediante SPI.

Fig. 3.4 ENC28J 60
2
. Fig. 3.5 WIZ812MJ
3
.

Captulo III. Desarrollo del Proyecto


40
Cumple con la norma IEEE802.3 e integra funciones para filtrado de
paquetes con el objetivo de reducir la cantidad de paquetes entrantes.
Cuenta con un mdulo DMA interno que hace ms fcil el flujo de datos.
Soporta comunicacin en modo full y half-duplex a una velocidad
de 10Mbps. El ENC28J 60 consiste bsicamente en 7 bloques importantes
4
:
1. Interfaz SPI que sirve para comunicarse el microcontrolador host.
2. Registros para monitoreo y control del ENC28J 60.
3. Buffer de SRAM dual de 8 KB para enviar y recibir paquetes.
4. Un arbitro para manejar el acceso al buffer RAM mediante DMA.
5. Bus que interpreta datos e instrucciones recibidos va SPI.
6. Mdulo MAC que cumple con la norma IEEE802.3.
7. Mdulo PHY, el cual codifica y decodifica los datos que viajan en el
medio fsico de una red Ethernet.
El ENC28J 60 viene en 2 presentaciones diferentes de 28 pines, el cual
requiere de muchos componentes electrnicos, sin embargo, la empresa
Olimex , vende este mdulo listo para conectarse al microcontrolador en
una presentacin de 10 pines (fig. 3.4).

4
Hoja de datos ENC28J60 Versin DS39662-B pg. 5

Captulo III. Desarrollo del Proyecto


41

Fig. 3.6 Diagrama a bloques del ENC28J 60
2
.
La distribucin de los pines del mdulo que ofrece la Olimex se
distribuye como se muestra en la figura 3.7
5
.







En cuanto a la interconexin con el PIC18F4550, es el diseador
quien designa que pines se van a usar. Para este proyecto la configuracin
de los pines queda como se muestra en la figura 3.8.

5
http://www.olimex.com/dev/pdf/ENC29J60-H.pdf
Fecha de ltima consulta 12-05-2012
Pin Seal Pin Seal
1 SCK 6 CLKOUT
2 MOSI 7 CS
3 MISO 8 RST
4 WOL 9 GND
5 INT 10 3.3V
Fig. 3.7 Pines de conexin del EN28J 60 de Olimex .

Captulo III. Desarrollo del Proyecto


42


Los detalles de cada seal, adems de la descripcin de cada
bloque funcional del ENC28J 60, as como los registros, estn ampliamente
descritos en la hoja de especificaciones del ENC28J 60
6
(Ver anexo A).
Aunque el ENC28J 60 es un dispositivo que opera con 3.3 volts, puede
integrarse fcilmente con dispositivos de 5 volts, por lo que no existe
problema en las conexiones de entrada de este controlador Ethernet. No
obstante, si se utiliza un microcontrolador como el PIC18F4550 es necesario
implementar un circuito que convierta la tensin de 3.3 volts del ENC28J 6 a
una tensin de 5 volts para evitar errores en la comunicacin entre ambos
dispositivos.

6
http://ww1.microchip.com/downloads/en/devicedoc/39662b.pdf - Consultada el 05-05-2012
Fig. 3.8 Conexin ENC28J 60 y PIC18F4550 en Proteus ISIS.

Captulo III. Desarrollo del Proyecto


43
Una opcin perfecta para esta conexin es el circuito CMOS
74HCT08 el cual tiene en su interior cuatro compuertas AND
7
. As mismo se
recomienda usar un buffer tri-estado como el 74ACT125, o cualquier otro
circuito que adapte los niveles de tensin hacia el microcontrolador. En la
figura 3.9 se muestra el diagrama a bloques para esta conexin.

Fig. 3.9 Diagrama a bloques de conexin entre C y ENC28J60
5
.
En el apndice B se muestra un cdigo fuente para probar la
conexin entre el PIC18F4550 y el ENC28J 60. Para esta prueba de
conexin, es necesario que tanto el servidor (PIC18F4550 + ENC28J 60),
como el cliente (cualquier dispositivo con un navegador web), estn en la
misma red de rea local.
As mismo dicha prueba puede realizarse punto a punto, es decir
desde la computadora al microcontrolador conectado con un cable
cruzado, es decir, de un extremo debe tener la distribucin que cumple
con la norma EIA/ TIA 568A, mientras que el otro extremo debe usarse la
distribucin de la norma EIA/ TIA 568B.



7
Hoja de datos ENC28J60 Versin DS39662-B pg. 8

Captulo III. Desarrollo del Proyecto


44


3.4 Entorno de Programacin: MPLAB IDE V8.83 y MPLAB X IDE V1.10.
Dado que se usa un PIC18F4550, se sugiere la plataforma de
programacin del fabricante, es decir, MPLAB . Ya sea la versin 8.83 o la
nueva versin
8
MPLAB X V1.10.
Ambas plataformas soportan distintitos herramientas y compiladores
para los distintitos lenguajes y herramientas de hardware de programacin
de microcontroladores. Pare este proyecto, se seleccion la programacin
en C con el compilador de C18, ya que a diferencia del lenguaje
ensamblador, la programacin en C reduce considerablemente las lneas
de cdigo de programacin, obteniendo con ello una reduccin en el
tiempo de programacin as como un cdigo fuente ms legible.



8
http://ww1.microchip.com/downloads/mplab/X/index.html
Fecha de ltima consulta 16-05-2012
Fig. 3.10 1ra Prueba de de conexin.

Captulo III. Desarrollo del Proyecto


45










Durante el desarrollo de las pruebas del prototipo, se usaron tanto la
plataforma MPLAB IDE V8.83, como la plataforma MPLAB X IDE V1.10, con
el fin de comparar el desempeo, herramientas de depuracin y la
presentacin de datos del entorno.
Aunque la plataforma MPLAB IDE lleva muchos aos en el mercado y
presenta una interfaz amigable con el usuario y tiles herramientas de
programacin y depuracin, la plataforma MPLAB X IDE V1.1 es
visiblemente mejor ya que su entorno es ms grfico.
As mismo, aunque incluye las herramientas de la plataforma anterior,
cuenta con la funcin de autocompletado de palabras, la cual ayuda a
que el programador en la reduccin de errores de sintaxis durante la
escritura de cdigo. El nico problema es que an existen errores de
compatibilidad en ambas plataformas, sobre todo al migrar un proyecto
hecho en MPLAB IDE, por lo que para el desarrollo de este prototipo se
recomienda el uso del MPLAB IDE V8.83.




Fig. 3.11 MPLAB IDE V8.83 Fig 3.12 MPLAB X IDE V1.1

Captulo III. Desarrollo del Proyecto


46
3.4.1 Configuracin de un proyecto TCP/IP en MPLAB.
A diferencia de los propsitos que se realizan con este software, para
configurar un proyecto de esta magnitud que demanda ms recursos de
memoria del microcontrolador, es necesario bajar la pila TCP/IP que ofrece
Microchip en su sitio web, ya que incluye libreras contenidas que facilitan
de manera significativa la realizacin del mismo. Aunque ya est
disponible la versin 5.41.02
9
, este proyecto est basado en la versin 3.75
debido al amplio soporte que existe en la red de esta versin.
Los requisitos para compilar este proyecto, adems de la pila TCP/IP
V.75 de microchip, es tener instalado el MPLAB V8 y el compilador C18
V3.40 o posterior. As mismo es imperativo tener un programador de PICS,
como el PICkit 2, o algn similar como el usado para el desarrollo de este
proyecto, el Programador PIC USB MiniPIC V2.2 Plus
10
, ya que es la
herramienta que permite el archivo hexadecimal generado en el
microcontrolador.
El primer paso es configurar un proyecto para el PIC18F4550;
posteriormente se deben incluir los archivos que vienen incluidos en la pila
TCP/IP de Microchip , as como los archivos que contienen las funciones
que el diseador requiera usar.
Si nunca se ha trabajado con este tipo de proyectos se recomienda
ampliamente hacer uso de alguna de las plantillas de demostracin que se
incluyen gratuitamente en la pila TCP/IP de Microchip . Dichas libreras y
demostraciones estn protegidas por derechos de autor, por lo que si se
desarrolla un proyecto con fines lucrativos, se debe pagar por dichos
derechos.

9
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en547784
10
http://www.minirobot.com.mx/tienda/product.php?id_product=602
Fecha de ltima consulta 16-05-2012

Captulo III. Desarrollo del Proyecto


47


El prototipo de este proyecto est basado en una plantilla de
demostracin, por lo que para modificarlo de acuerdo a las necesidades
requeridas, se deben modificar 3 archivos de configuracin, ms el archivo
en cdigo C de la pgina web.
El primero es el archivo llamado pic10.h, del cual se configuran los
puertos, ya sean como entradas o salidas digitales o con alguna funcin
especial. Dicho archivo est ampliamente documentado y las
instrucciones para configurarlo estn claramente descritas, por lo cual es
difcil cometer un error de sintaxis en el archivo.
El segundo archivo a configurar es el config.h, ya que contiene los
mdulos que se van a usar en el proyecto.
Fig. 3.13 Configuracin del proyecto TCP/IP en MPLAB IDE

Captulo III. Desarrollo del Proyecto


48
Y finalmente el archivo main.c el que debe modificarse en gran
medida, ya que este archivo guarda las funciones definidas por el usuario,
as como las instrucciones que debe ejecutar el microcontrolador ante una
interrupcin.
En lo que respecta a la pgina web, esta debe ser desarrollada en el
muy conocido lenguaje de internet HTML. Para ello se puede escribir toda
la pgina web en un block de notas o bien, puede usarse el editor Adobe
Dreamweaver CS3 como es el caso de este proyecto. As mismo deben
crearse los scripts cgi
11
, los cuales son archivos con dicha extensin que
permiten enviar y recibir datos de los puertos del microcontrolador.
Debido a las limitaciones de memoria del microcontrolador, la
pgina web es sencilla. Si se desea alojar una pgina web de mayor
tamao, puede utilizarse otro PIC y configurar un nuevo proyecto, o bien,
puede utilizarse una memoria serial EEPROM externa para alojar el sitio
web. Para ello basta con configurar los archivos antes mencionados.



11
http://www.maestrosdelweb.com/editorial/cgiintro/
Fecha de ltima consulta 16-05-2012
Fig. 3.14 Creacin de la pgina web en Adobe Dreamweaver CS3

Captulo III. Desarrollo del Proyecto


49
Existen 2 formas de alojar una pgina web en un PIC; todo depende
del medio fsico donde se va a almacenar. Si se pretende usar una
memoria EEPROM externa, el sitio web debe necesariamente convertirse a
un archivo binario para que posteriormente con ayuda del programador,
pueda almacenarse en la memoria. Lo recomendable es alojar el sitio web
en la memoria interna del PIC, ya que se ahorran costos en material; para
ello el sitio web debe convertirse a un formato con extensin .C.
La herramienta que permite la conversin de pginas web a archivos
binarios y tipo C es MPFS.exe, la cual viene en la pila TCP/IP de Microchip;
esta herramienta se ejecuta en un entorno no grfico a travs de una
ventana de comandos escribiendo el comando MPFS, el cual despliega un
men con las instrucciones que pueden ejecutarse.
La sintaxis es bastante sencilla, ya que se debe colocar el comando
MPFS, seguido de la carpeta donde se encuentra la pgina web, la
carpeta destino con el nombre y extensin que tendr el archivo .C.
Finalmente se indica el tipo de conversin que se har. Este ltimo
puede igualmente ser colocado al inicio.


Fig. 3.15 Herramienta MPFS.exe

Captulo III. Desarrollo del Proyecto


50
En este proyecto la pgina web se aloja en el microcontrolador, por
lo que para convertir el sitio web en un archivo .C. se sigue la sintaxis que
se muestra en la figura 3.15.
Finalmente, el archivo generado se debe incluir a la lista de archivos
fuente del proyecto. Hecho este ltimo paso, el proyecto puede
compilarse sin error alguno (fig. 3.16).

3.4.2 Programador PIC USB MiniPIC V2.2 Plus.
Cuando se compilan correctamente los proyectos en el MPLAB, se
generan varios archives. Sin embargo es el
archivo hexadecimal el que se graba en el
microcontrolador. En este caso se hace uso
del Programador PIC USB MiniPIC V2.2 Plus
de MiniRobot
12
, el cual tiene un precio de
$350.00 pesos y permite la programacin y
depuracin de cdigo de los
microcontroladores PIC mediante una
conexin USB.

12
http://minirobot.com.mx/tienda/product.php?id_product=602
Fecha de ltima consulta 16-05-2012
Fig. 3.17 MiniPIC V2.2
12
.

Captulo III. Desarrollo del Proyecto


51
Lo que hace verstil y la razn por la que se decide invertir en este
programador es la compatibilidad con los siguientes sistemas operativos:
Windows 98SE
Windows ME
Windows 2000
Windows XP
Windows Vista
Windows 7
LINUX
Adems de soportar algunas memorias seriales EEPROM, as como
todos los dispositivos de hasta 40 pines de las familias de PICS:
PIC10F
PIC12F
PIC12HV
PIC16F
PICLF
PIC18F
PIC18LF
PIC24F
PIC24FJ
PIC24HJ
DsPIC30F
dsPIC39F
dsPIC33F
PIC32MX

3.5 Entorno de Simulacin.
Antes de comprar los componentes que se incluyen en el prototipo
es necesario hacer simulaciones; de esta forma se ahorran gastos
innecesarios y se gana tiempo, ya que permite al diseador identifica una
falla de forma rpida tanto en software como en hardware.
En este caso el entorno donde se desarrollan todas las pruebas es el
software de simulacin Proteus ISIS Profesional ISIS V 7.2 de LABCENTER
ELECTRONICS , el cual ofrece al diseador la posibilidad de simular el
cdigo fuente de microcontroladores de distintas marcas, permitiendo
identificar reas de mejora tanto en software como en hardware en el
diseo de circuitos.



Captulo III. Desarrollo del Proyecto


52
El software Proteus ofrece distintos entornos de desarrollo para las
distintitas necesidades de los diseadores:
ISIS
Sistema de enrrutado de Esquemas Inteligente por sus siglas en ingls,
es un entorno enfocado al diseo de circuitos con una amplia gama de
componentes que van desde capacitores, resistencias, interruptores, LEDs,
etc., hasta microcontroladores, LCD grficos, pantallas touch, mdulos
para tarjetas SD, etc. En este entorno se simulan el funcionamiento de los
componentes mediante el mdulo VS., el cual es un sistema virtual de
modelado que permite la simulacin en tiempo real del circuito.








ARES
Es el Software de Edicin y Ruteo Avanzado, el cual permite crear
diseos de circuito impreso (PC) de una o doble capa, ya sea que el
diseador lo cree a partir del diagrama elaborado en ISIS, o lo disee todo
desde el entorno de ARES. Tiene entre otras caractersticas la modalidad
de visualizar ciertas pistas, capas o componentes de la placa, o bien ver el
diseo en 3D del prototipo.
Antes de conectar fsicamente todos los componentes, se verifica
que el programa de prueba de conexin funciona correctamente.

Fig 3.18 interfaz de Proteus ISIS

Captulo III. Desarrollo del Proyecto


53
Es muy comn que en algunos modelos de dispositivos simulados en
Proteus ISIS no muestren todas las terminales, ya que algunas estn
conectadas de forma predeterminada; tal es el caso de las terminales de
alimentacin. En el caso del ENC28J 60, el modelo que se muestra asume
que los circuitos externos para funcionar estn conectados correctamente,
por lo que solo se muestran las terminales de conexin al microcontrolador.


Para el circuito que se muestra en la figura 3.19, en las propiedades
del dispositivo ENC28J 60, debe seleccionarse la tarjeta de red con la que
se va a conectar, ya que de lo contrario ser imposible visualizar la pgina
web.
En la figura 3.20 se muestra la propuesta de circuito para controlar
algunos elementos a travs de la pgina web alojada en el
microcontrolador.
Fig. 3.19 Circuito de prueba de conexin ENC28J 60 y PIC18F4550

Captulo III. Desarrollo del Proyecto


54


Para saber la direccin IP que tiene asignada el circuito y con ello
poder visualizar la pgina web un cualquier navegador, se usa la
herramienta Microchip Ethernet Device Discoverer, la cual identifica los
dispositivos que estn conectados a la red local (fig3.21).













Fig. 3.20 Propuesta de circuito del proyecto
Fig. 3.21 Identificacin de la direccin IP del microcontrolador.

Captulo III. Desarrollo del Proyecto


55


Durante la etapa de simulacin se logran corregir los errores de
diseo y de programacin, por lo que al final se asegura la compra
correcta de materiales y se evitan contratiempos en el cableado del
prototipo.
3.6 Etapa de potencia.
Etapa de potencia o etapa de acoplamiento se refiere a la interfaz
requerida en las terminales del microcontrolador para conectarse a un
perifrico que maneje ms corriente y/ o voltaje de la que puede tolerar;
tal puede ser el caso de un motor elctrico de corriente directa de 8V, un
foco de corriente alterna de 100 watts, o cualquier otro dispositivo que
demande un consumo mayor de energa de la que puede suministrar el
microcontrolador.
Para el caso de un motor elctrico de CD, si se conectara
directamente al microcontrolador se quemara.


Fig. 3.22 Simulacin del microcontrolador

Captulo III. Desarrollo del Proyecto


56
Una solucin a este problema podra ser un puente H MOSFET, el cual
es un arreglo de transistores que manejan a la salida la corriente suficiente
para mover el rotor del motor, mientras que a la entrada puede manejar
tensiones y corrientes bajas que le mande el microcontrolador.
Si lo que se pretende es controlar el flujo de corriente alterna de una
casa (127 Vrms., 60Hz), entonces el problema se puede atacar con un
relevador el cual es un dispositivo mecnico o mediante un TRIAC o SCR,
que son dispositivos de estado slido. Dichos dispositivos estn diseados
para controlar tensiones de esta naturaleza mediante valores lgicos que
reciben a la entrada que oscilan entre los 3.3 y 5 Volts.
Es por ello que en la actualidad no se disean microcontroladores
que manejen tensiones altas directamente en sus terminales, sino que se
desarrollan interfaces que pueden integrarse al microcontrolador con el
objetivo de protegerlo y mantener a los componentes de un sistema en
bloques separados, asegurando con ello la fiabilidad del sistema.
3.6.1 TRIAC.
El TRIAC es un dispositivo semiconductor construido a base de 2
SCRs conectados en paralelo con sentido bidireccional, que permite
controlar el ciclo positivo y negativo de una seal analgica. Pertenece a
la familia de los tiristores y dada su naturaleza de construccin solo
funciona con corriente alterna.
Para permitir el paso de la corriente alterna, el TRIAC se dispara
mediante una compuerta, dejando pasar parte del ciclo positivo y parte
del ciclo negativo, a diferencia del SCR que solo permite el paso de uno
de los 2 ciclos.




Fig. 3.23 TRIAC

Captulo III. Desarrollo del Proyecto


57
Su funcionamiento es bastante simple y se puede decir que es
anlogo a una llave de agua que controla el paso del agua fra y el agua
caliente. Siempre que exista un disparo en la compuerta, el TRIAC deja
pasar parte del ciclo que exista en ese momento en sus terminales.
De esta manera se controla la cantidad de corriente que se
pretende dejar pasar y por tanto se regula la potencia que va a consumir
una determinada carga.
Para integrar este dispositivo al proyecto es necesario usar un opto-
acoplador, como el MOC3031, el cual consta de un diodo emisor de
infrarrojos que est pticamente acoplado a un detector de infrarrojos a
base de silicio, obteniendo como resultado un aislamiento elctrico
bastante eficiente.






Fig. 3.24 Diagrama a bloques del ENC28J 60
13
.

El opto-acoplador tiene como objetivo asilar elctricamente las
conexiones de la entrada y la salida, donde se conecta un TRIAC de
potencia el cual se conecta a la red elctrica (127 Vrms a 60 Hz),
protegiendo de forma ptima al microcontrolador ante una descarga
elctrica ocasionada por una mala conexin del TRIAC.




13
Hoja de datos MOC3031 Versin DS300256

Captulo III. Desarrollo del Proyecto


58










Para la etapa de potencia de este proyecto basta con seleccionar
un TRIAC y opto-acoplador de propsito general, como el BTA08600 y el
MOC3031 respectivamente. Dichos dispositivos son fciles de conseguir en
Mxico, y tienen un precio aproximado de $17.00 pesos cada uno.
3.6.2 Relevador.
El relevador es un interruptor electro-mecnico que funciona bajo el
principio del electromagnetismo. Su
funcionamiento es sencillo, ya que cuando
se energizan las entradas que contienen el
electroimn interno, se cierra un interruptor
estableciendo una conexin en las
terminales de carga y vuelve a su estado
inicial cuando se retira la energa del
electroimn.
Para la seleccin del relevador, es necesario conocer la tensin de
salida que maneja el microcontrolador en sus terminales. Para el
PIC18F4550 un estado tiene tensin de 5 V, por lo que el relevador a utilizar
debe ser de 5V a la entrada con capacidad suficiente para soportar
tensiones de 120V en sus terminales de salida.
Fig. 3.25 Circuito de conexin de opto-acoplador.
Fig. 3.26 Relevador
11
.

Captulo III. Desarrollo del Proyecto


59
En este caso el relevador SUN HOLD
14
de 5V es el apropiado para el
proyecto, ya que cumple con los requerimientos del proyecto y es
bastante fcil de conseguir.
Al igual que los TRIACS, el relevador no debe conectarse
directamente a las terminales del microcontrolador, ya que la bobina del
relevador tiene corrientes de retorno que podran daar el puerto del C.
Para evitar este problema se sugiere usar un buffer de proteccin entre el
C y el relevador.

3.6.3 Detector de cruce por cero.
Un circuito de deteccin de cruce por cero se utiliza comnmente
para convertir una seal del tipo sinusoidal a una seal cuadrada. Para ello
es necesario el uso de un amplificador operacional de propsito general,
el cual, de acuerdo a su configuracin dar un pulso a la salida cada
semi-ciclo de la onda sinusoidal.
Puesto que la seal de corriente alterna que circula en una casa
habitacin es del orden de 180 Vp (aproximadamente 127 Vrms), se debe
hacer uso de un transformador para disminuir la amplitud pico de la seal,
as como un puente rectificador para que finalmente se pueda conectar el
amplificador operacional. En la figura 3.27 se muestra el circuito de
deteccin de cruce por cero.


14
www.steren.com.mx/doctosMX/RAS-.doc
Fecha de ltima consulta 16-05-2012
TR1
TRAN-2P2S
BR1
2W02G
3
2
1
4
1
1
U1:A
LM124
R1
10k
R2
3.3k
R3
56k
VCC
SALIDA
Terminal conect ada al Microcont rol ador
Fig. 3.27 Circuito detector de cruce por cero.

Captulo III. Desarrollo del Proyecto


60
La salida de este circuito se conecta a alguna terminal de entrada
del microcontrolador.

3.6.4 Dimmer.
Un dimmer es un circuito que sirve para controlar la cantidad de flujo
de energa de una lmpara con el objetivo de variar la intensidad de luz
que esta emite. Puede ser tanto analgico como digital y el diseo
depende principalmente del tipo de aplicacin.
En este caso, se pretende regular la intensidad de luz de un foco de
100 watts a 60Hz (que son los que generalmente se encuentran en una
casa habitacin), mediante algn puerto del PIC18F4550.
Para poder lograr una correcta implementacin del dimmer en este
proyecto, es muy importante que el microcontrolador se encuentre en
sincrona con la corriente alterna de la casa habitacin, ya que de lo
contrario existirn molestos parpadeos en el foco, debido a que la
compuerta del TRIAC no se est disparando en el instante adecuado.
El circuito de deteccin de cruce por cero soluciona este problema,
ya que mediante un pulso le indica al microcontrolador el inicio de un
semi-ciclo y por tanto mediante software puede programarse el retardo de
la rutina de disparo a la compuerta del TRIAC de tal forma que se tenga el
ngulo de conduccin adecuado.
El circuito de dimmer est conformado por la conjuncin del circuito
de deteccin de cruce por cero (fig. 3.27), as como el circuito de
conexin del opto acoplador (fig. 3.25).
Antes de comprar cualquier componente o dispositivo electrnico,
conviene simularlo con algn software como PROTEUS ISIS, ya que de esta
forma se ahorra tiempo y dinero, obteniendo como resultado final un
diseo eficiente.

Captulo III. Desarrollo del Proyecto


61
As mismo, cuando se est diseando un sistema el cual incluye
muchos circuitos, es conveniente dividirlo por mdulos y efectuar la
simulacin en forma separada, ya que facilita la identificacin de fallas.
Se sugiere dividir el proyecto en 2 simulaciones
15
:
Simulacin del Dimmer digital
Simulacin del controlador ENC28J 60.


15
Las imgenes de simulacin del proyecto en Proteus ISIS y la descripcin del proceso que describen se
muestran a partir de la figura 3.8.

Captulo IV. Anlisis econmico


62
CAPITULO IV. DESARROLLO DEL PROYECTO
4.1 Relacin de gastos de materiales.
Como bien ya se mencion en el capitulo anterior, las simulaciones
en PROTEUS ISIS pueden ahorrar dinero al evitar comprar material errneo o
innecesario en el desarrollo de cualquier prototipo.
Para este proyecto, los materiales adquiridos se compraron
paulatinamente con el objetivo de comprobar el buen funcionamiento de
cada uno.
El primer dispositivo adquirido fue el PIC18F4550, comprado va
internet a la empresa de MiniRobot
1
junto con un cristal de 20 MHz y 2
capacitores de 15 pF. En la siguiente tabla se muestra la relacin de costo
de esta primera inversin.
Relacin de gastos compra No. 1
Material Costo Cantidad Subtotal
PIC18F4550 $ 99.00 1 $ 99.00
Cristal 20 MHz $ 10.00 1 $ 10.00
Capacitor 15 pF $ 2.50 2 $ 5.00
Costo envo $ 10.00

Total $ 124.00





1
http://minirobot.com.mx Actual al 20-05-2012
Fig. 4.0 PIC18F4550, capacitores y cristal de cuarzo.

Captulo IV. Anlisis econmico


63
En esta etapa se realizaron pruebas de funcionamiento del
microcontrolador. Para ello solo se requiri el uso del programador pickit 2
original de Microchip , y el programa bootloader.hex, el cual permite al
PIC18F4550 auto programarse mediante el puerto USB, de tal forma que se
puede prescindir de un programador.
Siguiendo los modelos hechos en el simulador, en esta primera
prueba no se compraron componentes adicionales para el buen
funcionamiento del microcontrolador.
La segunda inversin se realiz en la compra del controlador
Ethernet ENC28J 60
2
que actualmente vende Olimex en una presentacin
bastante funcional, en la cual ya no es necesario comprar componentes
externos para el funcionamiento de dicho controlador.
Este controlador se consigue a travs de distribuidores a travs de
pginas web dedicadas a la venta de todo tipo de artculos, como
mercadoLibre
3
, donde hasta noviembre del ao 2011, tuvo un costo sobre
pedido de $750.00 pesos ms gastos de envo. Dichos gastos de envo no
fueron aplicados dado que el mdulo fue recogido directamente en las
instalaciones del distribuidor.
Relacin de gastos compra No. 2
Material Costo Cantidad Subtotal
Mdulo Ethernet ENC28J60 $ 750.00 1 $ 750.00
Costo envo $ -

Total $ 750.00






2
http://www.olimex.com/dev/enc28j60-h.html
3
http://www.mercadolibre.com.mx/
Fecha de ltima consulta 18-05-2012
Fig. 4.1 ENC28J 60
2
.

Captulo IV. Anlisis econmico


64
Posteriormente se realiz la compra de un programador PIC USB
MINIPIC V2.2 PLUS de MiniRobot
4
. La justificacin de dicha compra surge de
la necesidad de constantes reprogramaciones del PIC, adems de ofrecer
las ventajas que se mencionan en el captulo 3 de este programador.
Relacin de gastos compra No. 3
Material Costo Cantidad Subtotal
Programador PIC USB MINIPIC V2.2 PLUS $ 350.00 1 $ 350.00
Costo envo $ 10.00

Total $ 360.00







Finalmente, luego de igualmente realizar pruebas con el
programador se compr todo el material faltante para el proyecto, tanto
para la etapa de potencia como para la etapa digital. Dado que todos
estos materiales son fciles de conseguir en el mercado, no fue necesario
comprarlos por internet.








4
http://minirobot.com.mx/tienda/product.php?id_product=602
Fecha de ltima consulta 1-05-2012
Fig. 4.2 MiniPIC V2.2
3
.

Captulo IV. Anlisis econmico


65
Relacin de gastos compra No. 4
Material Costo Cantidad Subtotal
Push button $ 2.00 4 $ 8.00
Capacitor 22 pF $ 1.50 2 $ 3.00
Capacitor 0.1 uF $ 1.50 2 $ 3.00
Capacitor 2.2 uF $ 2.50 1 $ 2.50
Capacitor 1 uF $ 2.50 4 $ 10.00
Leds rojos $ 1.00 10 $ 10.00
Resistencias 56 K $ 0.20 5 $ 1.00
Resistencias 3.3 K $ 0.20 5 $ 1.00
Resistencias 10 K $ 0.20 5 $ 1.00
Resistencias 680 $ 0.20 5 $ 1.00
Resistencias 330 $ 0.20 5 $ 1.00
Cristal 4 MHz $ 10.00 1 $ 10.00
MOC3031 $ 17.00 1 $ 17.00
Amp. Op. LM124 $ 17.00 1 $ 17.00
Diodo1N4007 $ 1.00 6 $ 6.00
Socket para foco $ 5.00 1 $ 5.00
Relevador de 5V $ 12.00 1 $ 12.00
Metro de alambre para protoboard $ 2.50 4 $ 10.00


Costo envo $ -


Total $ 118.50

Hasta este punto solo se muestran los costos detallados del material
comprado. No se agrega el valor del I.V.A., puesto que dicho impuesto se
agrega solo si se requiere que el vendedor expida una factura.
Con el objetivo de cuantificar la inversin total del proyecto, se
deben considerar los materiales e instrumentos de medicin que no se
compraron puesto que ya se tenan o fueron prestados. En la siguiente
tabla se muestra el precio estimado de los materiales restantes que forman
parte del proyecto.





Captulo IV. Anlisis econmico


66
Relacin de materiales existentes
Material Costo Cantidad Subtotal
L293D $ 45.00 1 $ 45.00
Capacitores cermicos $ 1.50 2 $ 3.00
Resistencias de carbn $ 0.20 10 $ 2.00
Protoboard $ 75.00 2 $ 150.00
Transformador 120 V a 12 V @ 2 Amp $ 150.00 1 $ 150.00
Metro de cable dplex calibre 16 $ 8.00 2 $ 16.00
Clavija $ 4.00 2 $ 8.00
Contacto sencillo $ 5.00 2 $ 10.00
Metro de cable dplex calibre 20 $ 6.00 2 $ 12.00
foco de 100 watts $ 12.00 1 $ 12.00
Conector USB 2.0 macho $ 5.00 1 $ 5.00
Multmetro Mod. MUL-600 $ 995.00 1 $ 995.00
PIC18F46K20 $ 55.00 1 $ 55.00
LF33CV $ 18.00 1 $ 18.00
Metro de Cable UTP CAT 5 $ 4.50 3 $ 13.50
Conector RJ45 $ 2.50 4 $ 10.00

Costo envo $ -

Total $ 1,504.50

Con toda esta informacin entonces podemos hacer un clculo del
total del capital invertido nicamente en material para el desarrollo de
este proyecto. En cuanto al software, tanto MPLAB IDE como MPLAB X, son
gratuitos y estn disponibles en la pgina web de Microchip .
De la misma forma, los navegadores web donde se realizaron
pruebas, no tienen ningn costo, por lo que el nico gasto en software
para el prototipo es la licencia de PROTEUS ISIS, adems de una
computadora con licencia original de Windows donde se instale todo el
software ya mencionado.





Captulo IV. Anlisis econmico


67
Costos de Herramientas de Desarrollo
Material Costo Cantidad Subtotal
Proteus ISIS (Versin sencilla)
5
$ 33,558.00 1 $ 33,558.00
Proteus ISIS (Versin Patino) $ 80,766.00 1 $ 80,766.00
Laptop Acer Aspire (Windows Home Basic) $ 7,500.00 1 $ 7,500.00

Total mnimo $ 41,058.00

Total Mximo $ 88,266.00

Por lo tanto el capital inicial que se tendra que invertir en material
sera de $2,857.00 pesos, mientras que el capital para comenzar el
desarrollo del proyecto con las licencias originales del software va en un
rango de $43,915 a $91,123.00 pesos. Sin embargo se puede correr el riesgo
de prescindir del software de simulacin y hacer las pruebas fsicamente.
Las consecuencias ms graves de podran presentarse de un error, es la
reposicin del material completo.
Costo Total de materiales y Software
Material Total Parcial
Relacin gastos compra No. 1 $ 124.00
Relacin gastos compra No. 2 $ 750.00
Relacin gastos compra No. 3 $ 360.00
Relacin gastos compra No. 4 $ 118.50
Relacin de material existente $ 1,504.50
Total de Material $ 2,857.00
Costos de Herramientas de desarrollo (mnimo) $ 41,058.00
Costos de Herramientas de desarrollo (mximo) $ 88,266.00
Total mnimo $ 43,915.00
Total mximo $ 91,123.00

4.2 Costo de diseo.
El costo total del diseo va a depender principalmente de si se
adquiere una licencia original de PROTEUS ISIS. En ambos casos se
considera un 60 % de lo que cuesta el material, por lo que el clculo
quedara de la siguiente manera:

5
http://www.labcenter.com/ordering/cprices.cfm - Actual al 17-05-2012

Captulo IV. Anlisis econmico


68
Costo de Diseo
Material Total Parcial
Total de Material $ 2,857.00
Costo de Diseo (Sin Licencia de Proteus) $ 4,571.20
Costo de Diseo (Con Licencia de Proteus) $ 45,629.20

4.3 Costo estimado de consumo elctrico del prototipo por mes.
El sistema se alimenta con 5V de corriente directa y el sistema
consume una corriente promedio de 500 mA, por lo que se puede deducir
que el consumo promedio de este prototipo es de 2.5 watts, la cual es
despreciable y no se puede considerar como un gasto representativo en el
recibo de luz.
Ahora, si se implementara el modo de bajo consumo del
microcontrolador y solo se activaran todas sus funciones ante una peticin
del usuario, entonces el consumo sera todava menor.









Fig. 4.0 Medidor de luz estndar
6
. Fig. 4.1 Ahorro de energa
7
.




6
http://veracruz.com/wp-content/uploads/2011/07/luz.jpg
7
http://www.ecologismo.com/wp-content/uploads/2011/07/ahorro_energetico-400x282.jpg
Fecha de ltima consulta 19-05-2012

Captulo IV. Anlisis econmico


69
4.4 Relacin costo / beneficio.
Despus de analizar los costos de materiales, herramientas de
desarrollo y diseo, se puede concluir que aunque desarrollar un sistema
de esta naturaleza es caro y difcilmente puede ser costeable para una
sola casa habitacin. No obstante si consideramos una unidad
habitacional de 100 casas donde puede ser instalado este sistema, pues el
costo se reduce bastante, ya que la licencia de las herramientas del
software PROTEUS se comprara una sola vez.
Material Total Parcial Cantidad Sub total
Material $ 2,857.00 100 $ 285,700.00
Costo de Diseo (Con
Licencia de Proteus)
$ 45,629.20 1 $ 45,629.20

Total de la implementacin $ 331,329.20

Costo aprox. Del sistema por casa (muestra de 100 casas) $ 3,313.29

De la misma manera, no se tendra que hacer una simulacin por
cada casa habitacin existente en la unidad habitacional, ya que el
sistema sera el mismo para todas las casas.
As mismo, el costo de los materiales disminuira, ya que el precio de
los componentes electrnicos se reduce cuando se compran a granel.
Ahora bien, los beneficios que se obtendran de instalar una versin
mejorada de este prototipo de sistema en cada casa, es que los usuarios
podran llevar un control de consumo energtico del tal forma que podra
detectarse cul es la fuente de mayor consumo dentro de la casa, o bien,
podra racionalizarse la cantidad de iluminacin elctrica que realmente
se necesita en una habitacin.
As mismo, se tendra la posibilidad de apagar remotamente
mediante una conexin a internet los electrodomsticos que se hayan
quedado encendidos.


Captulo IV. Anlisis econmico


70
4.4.1 Impacto local en una unidad habitacional del D.F.










Fig. 4.2 Unidad Habitacional en Del. lvaro Obregn
8
.
Como bien se menciona en el tema anterior, una medicin del
consumo energtico con este sistema implementado en una en un
conjunto habitacional como el que se muestra en la figura 4.2, no puede
ser realizada dado que el prototipo no cuenta con las caractersticas
suficientes para ello.
As mismo, es probable que una versin mejorada del sistema refleje
un ahorro mnimo o imperceptible en el consumo elctrico de la casa, ya
que hay personas que pasan ms tiempo en el trabajo, escuela, calle, etc.
y muy poco tiempo en una casa o departamento. No obstante se sigue
teniendo el benfico de monitoreo remoto de la casa o departamento.
En Mxico existen tanto empresas mexicanas como extranjeras que
se dedican al desarrollo de soluciones domticas e inmticas; dichos
desarrollos van orientados a unidades habitacionales de zonas
residenciales, ya que de esta forma en conjunto con las empresas
constructoras, se obtiene una mayor rentabilidad ya que las viviendas se
venden a un mayor precio.

8
http://img.mx.casas.posot.com/pics/mx/2011/12/26/Se-alquila-Distrito-Federal-Alvaro-Obregn-Mxico-
20111226161130.jpg
Fecha de ltima consulta 19-05-2012

Captulo IV. Anlisis econmico


71
De acuerdo al Directorio de empresas Mxico, organismos
Mexicanos y servicios de Mxico
9
, las empresas ms destacadas en Mxico
se encuentran:
synergyelements www.synergyelements.com
Construcciones Rivadeneyra www.construccionesrivadeneyra.com
EMRO Soluciones www.emrosoluciones.com
CRESTRON www.crestron.com.mx
TROnik Alta Tecnologa www.tronik.com.mx
Hogar Digital www.hogar-digital.mx
Vitruvius www.vitruvius.infored.mx
Ment Che Diseo www.mentchedis.mex.tl
Datiotec www.datiotec.com
Gettinglight www.gettinglight.com
Biodomtica www.biodomotica.com.mx

Adems de proveer servicios relacionados con la domtica, algunas
de estas empresas tambin proveen soluciones en sistemas de seguridad,
remodelacin, instalaciones elctricas, diseo electrnico, instalaciones
ecolgicas, comercializacin de accesorios para sistemas domticos, entre
otros.


9
http://guiamexico.com.mx/
Fecha de ltima consulta de todos las pginas web presentados en esta pgina: 19-05-2012

Conclusiones


72
Actualmente muchas de las tecnologas que usamos tienden a ser
ms pequeas y poderosas, tal es el caso de los telfono celulares que al
da de hoy cuentan con una gran cantidad de sensores y funciones (Apps)
que el usuario utiliza en su vida cotidiana. Para el caso del sector
automotriz, pasa exactamente lo mismo de forma tal que hoy los autos
tienden a tener motores ms pequeos y de mayor potencia. De la misma
manera los sistemas embebidos son el resultado de minimizar costos y
espacio donde las computadoras llegan a estar bastante sobradas en
costo y beneficios aportados a un proyecto. Esto hace que cada vez sea
ms accesible tener una casa inteligente, un saln interactivo o un
departamento asegurado electrnicamente.
Cada vez son ms los electrodomsticos que tienen una conexin a
internet, y pueden ser controlados remotamente mediante un portal o
aplicacin. Esto abre an ms las puertas a los sistemas embebidos ya que
al tener un diseo modular, pueden interconectarse con los
electrodomsticos inteligentes mediante una interfaz y as ofrece un control
cada vez ms centralizado al usuario.
Finalmente, debido a que no existe gran demanda en el mercado
nacional de estos sistemas en el hogar, las empresas que ofrecen este tipo
de soluciones integrales van dirigidas hacia la implementacin de sistemas
en zonas industriales, edificios corporativos y zonas residenciales exclusivas.


Bibliografa


73
BIBLIOGRAFA.
Domtica e Inmtica : Viviendas Y Edificios Inteligentes. 2ed.
Cristobal Romero Morales
Editorial Ra-Ma
Domtica: edificios inteligentes
J os Manuel Huidobro Moya
Editorial creaciones copyright, 2004

Biodomtica
www.biodomotica.com.mx
Construcciones Rivadeneyra
www.construccionesrivadeneyra.com
CRESTRON
www.crestron.com.mx
Datiotec
www.datiotec.com
EMRO Soluciones
www.emrosoluciones.com
Gettinglight
www.gettinglight.com
Hogar Digital
www.hogar-digital.mx
Ment Che Diseo
www.mentchedis.mex.tl
Synergyelements
www.synergyelements.com
TROnik Alta Tecnologa
www.tronik.com.mx


Bibliografa


74
Vitruvius
www.vitruvius.infored.mx
Microchip
http:/ / www.microchip.com/
U de control
http:/ / www.ucontrol.com.ar
Olimex
http:/ / www.olimex.com/








Apndice


75
ANEXO A.
HOJAS DE ESPECIFICACIONES.


Apndice


76


Apndice


77


Apndice


78


Apndice


79

Apndice


80


Apndice


81

Apndice


82


Apndice


83


Apndice


84


Apndice


85


Apndice


86
ANEXO B. CDIGOS FUENTE
Cdigo fuente principal para probar conexin entre pic18F4550 y ENC28J60
/ ***************************************************************************************************
* Programa diseado para probar la conexin entre el PIC18F4550 y el ENC28J 60. *
* La direccin IP asignada para esta prueba es la 192.168.1.118. *
* En cualquier navegador web, se debe poner dicha IP y debe aparecer el mensaje: *
* "Test Conexin PIC18F4550 y ENC28J 60 By Octavio Ibarra IPN ESIME - 2012 9CV11" *
****************************************************************************************************/
#include <18F4550.h>
#fuses XTPLL,MCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL1,CPUDIV1,VREGEN
#use delay(clock=48000000)

#define ON output_high
#define OFF output_low
#define LedV PIN_B4
#define LedR PIN_B2

/ /La se debe hacer la adaptacin correspondiente de voltaje entre
/ / PIC18F4550 y ENC28J 60

#define PIN_ENC_MAC_SO PIN_C7 // Conectar con PIN MISO del ENC28J 60.
#define PIN_ENC_MAC_SI PIN_B0 // Conectar con PIN MOSI del ENC28J 60.
#define PIN_ENC_MAC_CLK PIN_B1 // Conectar con PIN SCK del ENC28J 60.
#define PIN_ENC_MAC_CS PIN_B3 // Conectar con PIN CS del ENC28J 60.
#define PIN_ENC_MAC_RST PIN_B5 / / Conectar con PIN RSTdel ENC28J 60.
#define PIN_ENC_MAC_INT PIN_D2 // Conectar con PIN INTdel ENC28J 60.
#define PIN_ENC_MAC_WOL PIN_D3 / / Conectar con PIN WOL del ENC28J 60.
#define STACK_USE_MCPENC TRUE
#define STACK_USE_ARP TRUE
#define STACK_USE_ICMP TRUE
#define STACK_USE_TCP TRUE

#include "tcpip/ stacktsk.c"
#define MY_HTTP_SOCKET 80 / / Es el puerto que utiliza HTTP

int8 HTTPSocket=INVALID_SOCKET;
/ / Microchip tiene asignado el rango de, MAC: 00-04-A3-XX-XX-XX
void MACAddrInit(void)
{
MY_MAC_BYTE1=0x00;
MY_MAC_BYTE2=0x04;
MY_MAC_BYTE3=0xA3;
MY_MAC_BYTE4=0x8F;
MY_MAC_BYTE5=0x15;
MY_MAC_BYTE6=0x06;
}
void IPAddrInit(void)
{
// Direccion IP.
MY_IP_BYTE1=192;
MY_IP_BYTE2=168;
MY_IP_BYTE3=1;
MY_IP_BYTE4=118;
// Puerta de Enlace (La que tiene generalmente un modem INFINITUM de Telmex)
MY_GATE_BYTE1=192;

Apndice


87
MY_GATE_BYTE2=168;
MY_GATE_BYTE3=1;
MY_GATE_BYTE4=254;

//Mascara de Subred
MY_MASK_BYTE1=255;
MY_MASK_BYTE2=255;
MY_MASK_BYTE3=255;
MY_MASK_BYTE4=0;
}

void HTTPPut(char c)
{
TCPPut(HTTPSocket, c);
}

void HTTPTask(void)
{
static enum {HTTP_ST_CONNECT=0, HTTP_ST_WAIT_CONNECT=1, HTTP_ST_GET=2, HTTP_ST_PUT=3,
HTTP_ST_DISCONNECT=4}state=0;
static TICKTYPE timeout_counter;
static char lc, lc2;
char c;
char content[250];

if (HTTPSocket==INVALID_SOCKET)
state=HTTP_ST_CONNECT;
else if (!TCPIsConnected(HTTPSocket))
state=HTTP_ST_WAIT_CONNECT;
else if (TickGetDiff(TickGet(), timeout_counter) >TICKS_PER_SECOND*60)
state=HTTP_ST_DISCONNECT;

switch(state) {
case HTTP_ST_CONNECT:
HTTPSocket=TCPListen(MY_HTTP_SOCKET);
if (HTTPSocket!=INVALID_SOCKET) {
state=HTTP_ST_WAIT_CONNECT;
timeout_counter=TickGet();
}
break;

case HTTP_ST_WAIT_CONNECT:
timeout_counter=TickGet();
if (TCPIsConnected(HTTPSocket)) {
state=HTTP_ST_GET;
}
break;

case HTTP_ST_GET:
if (TCPIsGetReady(HTTPSocket)) {
while (TCPGet(HTTPSocket, &c)) {
if ( (c=='\ n') && (lc2=='\ n') ) {
state=HTTP_ST_PUT;
}
lc2=lc;
lc=c;
}
}

Apndice


88
break;

case HTTP_ST_PUT:
if (TCPIsPutReady(HTTPSocket)) {
sprintf(content, "<HTML><HEAD><TITLE>WebServer PIC18F4550
ENC28J 60</ TITLE></ HEAD><BODY><H1>Prueba de Conexin PIC18F4550 +ENC28J 60</br>By Octavio Ibarra
</ br>IPN ESIME - 2012</br>9CV11</ H1>");
sprintf(&content[0]+strlen(content),"</BODY></HTML>");
printf(HTTPPut, "HTTP/ 1.1 200 OK\ r\ n");
printf(HTTPPut, "Content-Type: text/ html\ r\ n");
printf(HTTPPut, "Content-Length: %u\ r\ n",strlen(content));
printf(HTTPPut, "\ r\ n");
printf(HTTPPut, "%s", content);
TCPFlush(HTTPSocket);
state=HTTP_ST_GET;
}
break;

case HTTP_ST_DISCONNECT:
if (TCPIsPutReady(HTTPSocket)) {
TCPDisconnect(HTTPSocket);
state=HTTP_ST_WAIT_CONNECT;
}
break;
}
}

void main(void)
{
ON(LedR);
OFF(LedV);

MACAddrInit();
IPAddrInit();
StackInit();

ON(LedV);
OFF(LedR);

while(TRUE)
{
StackTask();
HTTPTask();
}
}

Cdigo fuente del archivo index.hm de la pgina web
<html>
<head>
<title>Ibarra MicroServer - PIC18f4620</title>
<script language="J avaScript">
var xmlHttp;
var ObjArray =new Array;
function GetXmlHttpObject(handler)
{
var objXmlHttp =null;

Apndice


89
if(navigator.userAgent.indexOf("MSIE")>=0)
{
var ClassName ="Msxml2.XMLHTTP";
if(navigator.appVersion.indexOf("MSIE 5.5")>=0)
{
ClassName ="Microsoft.XMLHTTP";
}
try
{
objXmlHttp =new ActiveXObject(ClassName);
objXmlHttp.onreadystatechange =handler;
return objXmlHttp;
}
catch(e)
{
alert("Error: ActiveX scripting may be disabled.");
return;
}
}
else
{
try
{
objXmlHttp =new XMLHttpRequest();
objXmlHttp.onload =handler;
objXmlHttp.onerror =handler;
return objXmlHttp;
}
catch(e)
{
alert("Error: Browser may not be supported or browser security restrictions are too high.");
}
}
}
function StateChanged()
{
if(xmlHttp.readyState ==4 | | xmlHttp.readyState =="complete")
{
document.getElementById("txtAutoUpdateStatus").innerHTML=xmlHttp.responseText;
xmlHttp =null;
UpdateStatus();
}
}

function UpdateStatus()
{
xmlHttp =GetXmlHttpObject(StateChanged);
xmlHttp.open("GET", "status.cgi" , true);
xmlHttp.send(null);
}

function GetServerFile(FileName, AssignTo)
{
var NiftyObj =new Object();
NiftyObj.XMLDevice =new GetXmlHttpObject(StateChanged2);
NiftyObj.XMLDevice.open("GET", FileName, true);
NiftyObj.XMLDevice.send(null);
NiftyObj.Text =AssignTo;

Apndice


90
ObjArray.push(NiftyObj);
}
function StateChanged2()
{
for(i in ObjArray)
{
if(ObjArray[i].XMLDevice.readyState ==4 | | ObjArray[i].XMLDevice.readyState =="complete")
{
if(ObjArray[i].Text !="")
{
document.getElementById(ObjArray[i].Text).innerHTML=ObjArray[i].XMLDevice.responseText;
}
if(ObjArray[i].Text =="txtAutoUpdateStatus")
{
GetServerFile("status.cgi", "txtAutoUpdateStatus");
}
delete ObjArray[i].XMLDevice;
delete ObjArray[i];
}
}
}
</ script>
</ head>
<body bgcolor=#FFFFFF onLoad="UpdateStatus(); GetServerFile('version.cgi','txtStackVersion');
GetServerFile('bdate.cgi','txtBuildDate');" leftmargin=0 topmargin=0 marginwidth=0 marginheight=0>
<font face=Arial>
<table width=100%bgcolor=#FFFFFF border=0 cellpadding=0 cellspacing=0>
<tr valign=center>
<td colspan=2 align=right><a href="index.htm"><img src="logo_esime.jpg" width="" height="" alt=""
border=0 align=left></ a></td>
<td colspan=2 align=right><font color=#156F4F size=4><b>Prototipo de Dispositivo para <font
face="Arial">e</ font>l Control de Suministro De Energ&iacute;a<font face="Arial">a
</ font>Electrodom&eacute;sticos y de Iluminaci&oacute;n de una Casa Habitaci&oacute;n
mediante Aplicaci&oacute;n Web </ b></ font></td>
</tr>
<tr bgcolor=#E5EFEC>
<td width=25%align=center><b><font face="Arial">Inicio</font></ b></td>
<td width=25%align=center><a href="arch.htm">Arquitectura</ a></td>
<td width=25%align=center>&nbsp;</td>
<td width=25%align=center>&nbsp;</td>
</tr>
<tr>
<td colspan=4>
<table width=100%border=0 cellpadding=0 cellspacing=0>
<tr valign=top>
<td width=50 bgcolor=#E5EFEC rowspan=5></td>
<td width=628 rowspan=5>
<table>
<tr>
<td width="1">&nbsp;</td>
<td width="480"><p><font color=#6C6C6C size=2><br>
<font face="Arial">Este p&aacute;gina web est&aacute; alojada en un microservidor hecho
con el microcontrolador PIC18F4620 y el controlador Ethernet ENC28J 60, ambos de Microchip
&reg;.</ font></ font></p>
<p><font color="#6C6C6C" size="2" face="Arial">Con el objetivo de reducir el espacio de memoria
del microcontrolador, esta p&aacute;gina no integra elementos que ocupen mucho espacio, como
imagenes en alta resoluci&oacute;n.</font></ p>
<p><font color=#6C6C6C size=2>Median<font face="Arial">te esta interfaz el usuario puede:

Apndice


91
controlar el encedido o apagado de diversos interruptores que se encuentren conectados en las
terminales del microcontrolador, como pueden ser relevadores, opto-TRIACs, etc.
</ font></ font><font color=#6C6C6C size=2 face="Arial">As&iacute; mismo se puede monitorear el
estado en el que se encuentre un interruptor conectado</font><font color=#6C6C6C size=2>al
microcontrolado<font face="Arial">r, y por si fuera poco, se pueden realizar lecturas
anal&oacute;gicas en tiempo real, como sensores de temperatura, de humedad, de intensidad de
luz, etc.</ font></font></ p>
<p><font color="#6C6C6C" size="2" face="Arial">Finalmente, el sistema puede ser flexible para
extenderse a otro tipo de aplicaciones como son, sistema de seguridad remoto, sistemas de tele-
riego, monitoreo de produccion en l&iacute;nea, entre otros.</ font></p>
<p><font color=#6C6C6C size=2><a
href="http:/ /www.expocomputo.esimez.ipn.mx/ ">expocmputo 2012/ a</ a>.</ font></ p></td>
<td width="164">&nbsp;</td>
</tr>
</table></td>
<td width=41 bgcolor=#E5EFEC rowspan=5></td>
<td width="312"><br>
<font color=#6C6C6C size=2> Version: <span id="txtStackVersion">Cargando...</ span><br>
<font face="Arial">Fecha</font>: <span id="txtBuildDate">Cargando...</span><br>
<br></ font></td>
<td width=21 bgcolor=#E5EFEC rowspan=5></td>
</tr>
<tr bgcolor=#E5EFEC>
<td height=8></td>
</tr>
<tr valign=top>
<td><p><font color=#156F4F size=3><b><font face="Arial">Interruptores</ font></ b><br>
</ font></p>
<p><font color=#6C6C6C size=2>
<input type="button" value="LED1" onClick="GetServerFile('0?0=LED1','')">
</input>
<input type="button" value="LED2" onClick="GetServerFile('0?1=LED2','')">
</input>
<input type="button" value="LED3" onClick="GetServerFile('1?0=LED3','')">
</input>
<input type="button" value="LED4" onClick="GetServerFile('1?1=LED4','')">
</input>
<br>
<br>
</ font></p></td>
</tr>
<tr bgcolor=#E5EFEC>
<td height=8></td>
</tr>
<tr valign=top>
<td height=100%><font color=#156F4F size=3><b><font face="Arial">Estado</ font></b><br>
<br></ font><span id="txtAutoUpdateStatus">Cargando...</ span><br><br></td>
</tr>
</table></td>
</tr>
<tr bgcolor=#E5EFEC>
<td height=8 colspan=4></td>
</tr>
</table>
</ font>
</ body>
</ html>

Apndice


92
ANEXO C.
Capas del modelo de referencia OSI
1
.







1
http://web.frm.utn.edu.ar/comunicaciones/modelo_osi.html
Fecha de ltima consulta 22-05-2012
Servicios de red de aplicaciones.
Aplicacin
Representacin de datos.
Presentacin
Comunicacin entre dispositivos de la red.
Sesin
Conexin punto a punto y fiabilidad de los
datos.
Transporte
Direccionamiento lgico (Determinacin de la
ruta IP).
Red
Direccionamiento fsico (MAC y LLC).
Enlace
Caractersticas de la seal, medio de
transmisin.
Fsica

Das könnte Ihnen auch gefallen